A full-stack paper submission and management system consisting of a React frontend and a Node.js/Express backend.
The project is divided into two main parts:
client/: Frontend application built with React + Vite + Mantineserver/: Backend application built with Node.js + Express + MySQL
- User Authentication (JWT)
- Paper Submission & Management
- Review System
- Role-based Access Control (Authors, Reviewers, Administrators)
- File Upload Support
- Docker Support
- React
- Vite
- Mantine UI
- React Query
- React Router
- Axios
- i18next (Internationalization)
- Node.js
- Express
- MySQL
- JWT Authentication
- Multer (File Uploads)
- Node.js (v16+)
- MySQL
- Docker & Docker Compose (Optional)
- Make sure Docker and Docker Compose are installed
- Run the following command in the root directory:
docker-compose up --buildThe services will be available at:
- Frontend: http://localhost:21743
- Backend API: http://localhost:5000
- Navigate to the server directory:
cd server- Install dependencies:
npm install-
Configure environment variables: Create a
.envfile based on the configuration incompose.yamlor your local setup. -
Initialize Database: Execute the SQL scripts located in
server/SQL/to set up your MySQL database. -
Start the server:
npm start- Navigate to the client directory:
cd client- Install dependencies:
npm install- Start the development server:
npm run devISC