- An explosion of scientific publications – 3.3 million articles were published in 2022 alone and increases yearly [1]
- Weeks-to-months delays: the median end-to-end time can be 160 days to acceptance [2]
- Editor & reviewer overload: 80 % of review requests go to the same small cohort of scholars [3]
In short, human editors are drowning in administrative and analytic checks; authors wait; reviewers burn out; good science stalls.
Our project turns the slow, overloaded peer-review pipeline into a “living editorial board” of cooperating reasoning agents that deliver the same checks a journal editor needs, in hours instead of weeks, while giving every stakeholder a clear, auditable report.
We performed a small-scale benchmark by retrieving papers from openreview.net and evaluating our system on them. The results are presented below:
A dockerized application for reviewing academic papers, consisting of a FastAPI backend, React frontend, and PostgreSQL database.
- Docker
- Docker Compose
The application uses environment variables for configuration. You can customize them by:
- Creating a
.envfile in the project root with the following variables:
# Database Configuration
POSTGRES_USER=postgres
POSTGRES_PASSWORD=postgres
POSTGRES_DB=postgres
# Backend Configuration
ALLOWED_ORIGINS=http://localhost:5173
# Frontend Configuration
VITE_API_URL=http://localhost:8000
- Build and start the containers:
docker-compose up -d-
Access the application:
- Frontend: http://localhost:5173
- Backend API: http://localhost:8000
-
Stop the application:
docker-compose downThe application is configured for development with hot-reloading:
- Frontend changes will automatically refresh the browser
- Backend changes will automatically restart the API server
- Volume mounts ensure local changes are reflected in the containers
- Frontend: React/TypeScript with Vite
- Backend: FastAPI (Python)
- Database: PostgreSQL
- postgres: Database service
- backend: FastAPI application
- frontend: React application
- If you encounter database connection issues, ensure PostgreSQL has fully started before the backend attempts to connect.
- For permission issues with volumes, check Docker's volume permissions.