EasyJournal was created as an experimental publishing platform built by a publishing expert (with a bit of AI help and no engineers involved). It's designed to get your journal online quickly—in a very short time—without any headaches or heavy costs.
To be clear, the underlying code isn't perfect—it's an experimental prototype, not industrial-strength software. But it works, and it's free for anyone who wants to try it out.
AI can accelerate the initial build dramatically. However, turning AI-generated prototypes into scalable, robust software still requires traditional engineering expertise.
For more information see https://robotscooking.com
A sophisticated academic journal submission platform leveraging intelligent technology to optimize the research publication workflow.
- GitHub Repository: https://github.com/Shippies-org/easyjournal-py
EasyJournal is a comprehensive platform designed to streamline the academic publishing process while maintaining the highest standards of peer review and editorial integrity. Our system provides tools for:
- Article submissions and tracking
- Peer review management
- Editorial workflows
- Publication and issue management
- Analytics and reporting
- User role management (Author, Reviewer, Editor, Admin)
- Modular Architecture: Built with Flask blueprint architecture for maintainability and extensibility
- Role-Based Access Control: Different interfaces for authors, reviewers, editors, and administrators
- Complete Submission Workflow: From initial submission to final publication
- Comprehensive Admin Controls: Including user management, issue creation, and system settings
- Performance Optimized: Efficient request handling and database queries for improved response times
- Analytics Capabilities: Track site usage, article views, and other important metrics
- Extensive Branding Customization: Tailor the system to match your journal's identity
- GDPR Compliance: User data management with consent tracking and data portability
- Backend: Python with Flask framework
- Database: PostgreSQL with SQLAlchemy ORM
- Frontend: Bootstrap CSS framework with responsive design
- Container Support: Docker configuration for easy deployment
-
Clone the repository:
git clone https://github.com/Shippies-org/easyjournal-py.git cd easyjournal-py -
Set up environment variables:
cp .env.example .envEdit
.envas needed (default values work for most users) -
Install and run with options below
EasyJournal includes a fully configured Docker setup for easy deployment:
# Build and start the application with PostgreSQL database
docker-compose up -d
# Check logs if needed
docker-compose logs -f app
# Stop all containers
docker-compose downThe application will be available at http://localhost:5000 with these default credentials:
- Admin: admin@example.com / adminpassword
- Editor: editor@example.com / editorpassword
- Reviewer: reviewer@example.com / reviewerpassword
- Author: author@example.com / authorpassword
For development or customization:
# Install dependencies
bash setup/install_dependencies.sh
# Start the application
python main.pyThe application will be available at http://localhost:5000
- Installation Guide - Complete installation instructions
- Performance Optimization - Details on performance tuning
- Development Guide - Information for developers
- Scaling Guide - Guidance for scaling to larger deployments
- Plugin System - Guide for creating and managing plugins
- API Integration - Guide for external service integrations
- Security Guide - Security best practices
- Troubleshooting - Solutions for common issues
We welcome contributions to EasyJournal! Please feel free to submit issues and pull requests to the GitHub repository.
- Open Journal Systems (OJS) – Widely adopted journal management and publishing platform.
- Janeway – Modern, modular open-source publishing platform.
- Kotahi – Flexible, microservices-based publishing infrastructure supporting diverse workflows.
This project is licensed under the MIT License - see the LICENSE file for details.
Copyright (c) 2025 Adam Hyde