8000 GitHub - arjunbojja1/studybuddy_scheduler: StudyBuddy Scheduler is a smart and interactive planner that helps students create study schedules based on their avaibility, workload, and deadlines. It offers several scheduling options and displays motivational quotes utilizing ZenQuotes API to keep users inspired while they work.
[go: up one dir, main page]

Skip to content

StudyBuddy Scheduler is a smart and interactive planner that helps students create study schedules based on their avaibility, workload, and deadlines. It offers several scheduling options and displays motivational quotes utilizing ZenQuotes API to keep users inspired while they work.

License

Notifications You must be signed in to change notification settings

arjunbojja1/studybuddy_scheduler

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

69 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

StudyBuddy Scheduler

StudyBuddy Scheduler is a smart and interactive planner designed to help students create effective study schedules based on their availability, workload, and deadlines. It offers multiple scheduling strategies and integrates motivational quotes to keep users inspired while they work.

This project was developed as part of a class assignment for the University of Maryland's INST326 course. It demonstrates skills in Python programming, web development, API integration, and data visualization.

Note: As per the project instructions, the entire application was built using Python and Python-based libraries only.


Features

  • User-Friendly Interface: A browser-based UI built with ReactPy for seamless user interaction.
  • Customizable Scheduling: Input courses, deadlines, and estimated time commitments.
  • Multiple Scheduling Strategies:
    • Urgency-Based: Prioritizes courses with earlier deadlines.
    • Even Distribution: Spreads study time evenly across available days.
    • Pomodoro-Style: Creates 25-minute work blocks with 5-minute breaks.
  • Downloadable Schedules: Export study plans in CSV or plain text format.
  • Motivational Quotes: Displays motivational quotes fetched from the ZenQuotes API.
  • Interactive Calendar View: Visualize schedules in a calendar format with progress tracking.

Technologies Used

  • Frontend: ReactPy
  • Backend: FastAPI
  • Data Visualization: Matplotlib
  • API Integration: ZenQuotes API
  • Testing: Pytest

How to Run the Program

Before you begin, ensure you have Python installed.

1. Create a virtual environment

python -m venv venv

If this does not work, execute the following:

python3 -m venv venv

2. Activate your virtual environment

macOS

source venv/bin/activate

Windows

venv\Scripts\activate

3. Install the required dependencies

pip install -r requirements.txt

4. Run the app

python app.py

5. Access the app

Open your browser and navigate to:

http://localhost:8000

Learning Objectives

This project demonstrates the following skills:

  • Building a full-stack application using Python.
  • Designing and implementing a browser-based UI with ReactPy.
  • Integrating third-party APIs for real-time data (ZenQuotes API).
  • Implementing multiple scheduling algorithms.
  • Writing unit tests to ensure code reliability.
  • Visualizing data using Matplotlib.

License

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

About

StudyBuddy Scheduler is a smart and interactive planner that helps students create study schedules based on their avaibility, workload, and deadlines. It offers several scheduling options and displays motivational quotes utilizing ZenQuotes API to keep users inspired while they work.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages

0