A simple mobile/tablet-friendly e-commerce app that allows users to log in, register, and order products, handling user authentication with JWTs stored in cookies and a 'Remember Me' option to keep users logged in across sessions.
Backend:
-
PHP 8+
-
GraphQL (webonyx/graphql-php) ^15.2
-
JWT Authentication (firebase/php-jwt) ^6.11
-
MySQL Database
Frontend:
-
React ^19.1.0
-
TypeScript ~5.8.3
-
Vite ^6.3.5
-
React Router DOM ^7.6.0
Before running the app, make sure you have PHP, Composer, Node.js, and npm installed on your system. Then, install the backend dependencies by running cd backend and composer install, set up a MySQL database and configure your backend\src\Config\Database.php with the correct credentials. Finally, navigate to the frontend directory with cd ../frontend and install all required packages using npm install. Once all dependencies are installed and the environment is configured, navigate to the backend directory and start the backend server using php -S localhost:8000 -t public. Then, switch to the frontend directory and run npm run dev to start the React development server.