Skip to content

Repository files navigation

EduBuddy - Smart Study Companion

EduBuddy is a comprehensive study platform that helps students manage their study time, track progress, and collaborate with peers.

Features

  • 🎯 Study Timer with Pomodoro Technique
  • 📝 Todo List with AI-powered suggestions
  • 🤖 AI Assistant for study help
  • 💾 Digital Storage for study materials
  • 👥 Study Groups for collaboration
  • 🌙 Dark Mode support
  • 📊 Study Statistics and Progress Tracking

Prerequisites

  • Python 3.8 or higher
  • PostgreSQL 12 or higher
  • Node.js 14 or higher (for asset compilation)

Installation

  1. Clone the repository:
git clone https://github.com/yourusername/edubuddy.git
cd edubuddy
  1. Create and activate a virtual environment:
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
  1. Install dependencies:
pip install -r requirements.txt
  1. Set up environment variables:
cp .env.example .env
# Edit .env with your configuration
  1. Initialize the database:
flask db init
flask db migrate
flask db upgrade

Development

  1. Start the development server:
flask run
  1. Access the application at http://localhost:5000

Production Deployment

  1. Set up a production environment:
export FLASK_ENV=production
  1. Start Gunicorn:
gunicorn -c gunicorn_config.py app:app
  1. Set up Nginx as a reverse proxy (example configuration):
server {
    listen 80;
    server_name yourdomain.com;

    location / {
        proxy_pass http://127.0.0.1:8000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }

    location /static {
        alias /path/to/your/static/files;
    }

    location /uploads {
        alias /path/to/your/uploads;
    }
}

Project Structure

edubuddy/
├── app/
│   ├── __init__.py
│   ├── models/
│   ├── routes/
│   ├── static/
│   └── templates/
├── migrations/
├── uploads/
├── logs/
├── .env
├── .env.example
├── app.py
├── config.py
├── gunicorn_config.py
├── requirements.txt
└── README.md

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Commit your changes
  4. Push to the branch
  5. Create a Pull Request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Support

For support, email support@edubuddy.com or create an issue in the repository.

Acknowledgments

  • Flask framework
  • SQLAlchemy ORM
  • Bootstrap for styling
  • All contributors and users

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages