Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

1 Commit
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸŽ“ AutoClass Helper

Python Version License Status

An automation tool for students and teachers

Organize tasks, reminders, and study files from one place, integrating with Notion and Google Drive.

Features β€’ Installation β€’ Usage β€’ Configuration β€’ Contributing


πŸ“‹ Description

AutoClass Helper is a command-line tool designed to automate academic task management. It allows students and teachers to:

  • πŸ“ Manage tasks and reminders from Notion
  • πŸ“ Organize study files in Google Drive
  • ⏰ Schedule automatic reminders
  • πŸ“Š Visualize pending task progress
  • πŸ”” Receive notifications for upcoming tasks

✨ Features

Version 1.0

  • βœ… Notion Integration: Connect with your Notion database to manage tasks
  • βœ… Google Drive Integration: Access and organize study files
  • βœ… Reminder System: Schedule automatic notifications
  • βœ… Complete Logging: Record all executed actions
  • βœ… Friendly Interface: Interactive console menu with colors
  • βœ… Flexible Configuration: Use environment variables to customize

πŸ› οΈ Technologies Used

  • Python 3.10+: Main language
  • Notion API: For task and database management
  • Google Drive API: For file management
  • Schedule: For scheduled tasks
  • Colorama: For colorful console interface
  • Python-dotenv: For secure credential management

πŸ“¦ Installation

Prerequisites

  • Python 3.10 or higher
  • Notion account (optional)
  • Google account (optional)

Steps

  1. Clone the repository
git clone https://github.com/yourusername/autoclass-helper.git
cd autoclass-helper
  1. Create 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. Configure environment variables
cp .env.example .env

Edit the .env file with your credentials:

NOTION_API_KEY=your_notion_token
NOTION_DATABASE_ID=your_database_id
GOOGLE_DRIVE_FOLDER_ID=your_folder_id

πŸš€ Usage

Run the application

python main.py

Main Menu

╔════════════════════════════════════════╗
β•‘      πŸŽ“ AUTOCLASS HELPER v1.0         β•‘
β•šβ•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•β•

1. πŸ“ View Notion tasks
2. πŸ“ View Google Drive files
3. βž• Add new task
4. ⏰ Configure reminders
5. πŸ“Š View statistics
6. πŸ”„ Sync all
7. ❌ Exit

Choose an option:

βš™οΈ Configuration

Configure Notion API

  1. Go to Notion Developers
  2. Create a new integration
  3. Copy the integration token
  4. Share your database with the integration
  5. Copy the database ID

Configure Google Drive API

  1. Go to Google Cloud Console
  2. Create a new project
  3. Enable the Google Drive API
  4. Create OAuth 2.0 credentials
  5. Download the credentials.json file and place it in the project root

πŸ“ Project Structure

autoclass_helper/
β”œβ”€β”€ main.py                 # Main entry point
β”œβ”€β”€ modules/
β”‚   β”œβ”€β”€ __init__.py
β”‚   β”œβ”€β”€ notion_api.py      # Notion API management
β”‚   β”œβ”€β”€ google_drive_api.py # Google Drive API management
β”‚   └── scheduler.py       # Reminder system
β”œβ”€β”€ data/                   # Local data and cache
β”œβ”€β”€ utils/
β”‚   β”œβ”€β”€ __init__.py
β”‚   └── helpers.py         # Helper functions
β”œβ”€β”€ requirements.txt        # Project dependencies
β”œβ”€β”€ .env.example           # Environment variables template
β”œβ”€β”€ .gitignore             # Files ignored by Git
└── README.md              # This file

πŸ“ Usage Examples

List pending tasks

from modules.notion_api import NotionAPI

notion = NotionAPI()
tasks = notion.get_pending_tasks()
for task in tasks:
    print(f"- {task['title']} (Due: {task['due_date']})")

Schedule a reminder

from modules.scheduler import TaskScheduler

scheduler = TaskScheduler()
scheduler.add_reminder("09:00", "Review daily tasks")
scheduler.start()

🀝 Contributing

Contributions are welcome. For major changes:

  1. Fork the project
  2. Create a feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

πŸ“„ License

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

πŸ‘€ Author

RubΓ©n GarcΓ­a

πŸ™ Acknowledgments

  • Notion for their excellent API
  • Google for the Drive API
  • The Python community for the libraries used

⭐ If this project was useful to you, consider giving it a star ⭐

Made with ❀️ by Rubén García

About

πŸŽ“ Automation tool for students - Manage tasks and files integrating with Notion and Google Drive

Resources

Contributing

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages