This project includes a backend developed with TypeORM and Node.js and a frontend developed with Redux and React. Authentication is handled using JWT (JSON Web Token), and MySQL is used for the database. The frontend performs JWT checks using Axios.
Follow these steps to set up and run both the backend and frontend.
-
Requirements:
- Node.js (v14 or later)
- MySQL
-
Install Project Dependencies:
cd backend npm install
-
Database Configuration:
- Create a
backend/.env
file and add your MySQL connection details:DB_HOST=localhost DB_USER=username DB_PASSWORD=password DB_NAME=database_name
- Create a
-
Run Database Migrations:
npm run typeorm migration:run
-
Start the Application:
npm start
-
Requirements:
- Node.js (v14 or later)
-
Install Project Dependencies:
cd frontend npm install
-
Configure Environment Variables:
- Create a
frontend/.env
file and specify your API endpoint:REACT_APP_API_URL=http://localhost:5000/api
- Create a
-
Start the Application:
npm start
-
Backend API:
- The application uses JWT-based authentication and has endpoints starting with
/api
. - For more information on the API, refer to the
backend/src/routes
folder.
- The application uses JWT-based authentication and has endpoints starting with
-
Frontend Application:
- The frontend uses Redux for state management and Axios for API requests.
- User login and registration are managed with JWT tokens.
- The application can be found in the
src/components
andsrc/redux
folders.
- [Muhammed Taha Caglar]
This project is licensed under the MIT License.