PaperCheck AI — Automated Research Paper Submission Compliance Checker
Back to ProjectFollow these steps to set up PaperCheck AI on your local machine. The project has two parts — a Python Flask backend and a React frontend. Both must be running at the same time.
Download the project ZIP file from CodeAj Marketplace and extract it to a folder of your choice. You will see two main folders inside: backend and frontend.
Open a terminal and navigate into the backend folder.
cd backend
Create a Python virtual environment to keep dependencies isolated.
python -m venv venv
Activate the virtual environment.
On Linux or macOS:
source venv/bin/activate
On Windows:
venv\Scripts\activate
Install all required Python packages.
pip install -r requirements.txt
If you see ModuleNotFoundError: No module named 'fitz', run:
pip install PyMuPDF
If you see ModuleNotFoundError: No module named 'docx', run:
pip install python-docx
This creates the SQLite database file and seeds it with sample conference templates including IEEE, NeurIPS, and CVPR.
python database.py
The system works without email — it will simply log "skipped" when a report is ready. To enable email reports, set these two environment variables before running the app.
On Linux or macOS:
export EMAIL_SENDER="you@gmail.com"
export EMAIL_PASSWORD="xxxx xxxx xxxx xxxx"
On Windows (Command Prompt):
set EMAIL_SENDER=you@gmail.com
set EMAIL_PASSWORD=xxxx xxxx xxxx xxxx
The password here is a Gmail App Password, not your regular Gmail password. To generate one, go to your Google Account, open Security, and look for App Passwords under Two-Step Verification.
python app.py
The API will start at http://localhost:5000. Keep this terminal open.
Open a second terminal window and navigate to the frontend folder from the project root.
cd frontend
Install Node.js dependencies.
npm install
Start the Vite development server.
npm run dev
The React app will open at http://localhost:3000. Vite automatically forwards all /api/* requests to the Flask backend at port 5000, so no CORS configuration is needed.
http://localhost:3000 in your browserYou can add a new conference template by sending a POST request to the API. Replace the values with your conference's actual requirements.
curl -X POST http://localhost:5000/api/conferences \
-H "Content-Type: application/json" \
-d '{
"name": "CVPR",
"max_pages": 8,
"required_font": "Times New Roman",
"required_font_size": 10,
"margin_top": 1.0,
"margin_bottom": 1.0,
"margin_left": 1.0,
"margin_right": 1.0,
"citation_style": "IEEE",
"required_sections": "abstract,introduction,related work,method,experiments,conclusion,references"
}'
Our team is here to assist you with installation and setup.