Task Scheduler App is a web application helps users create and schedule tasks with integrated text notification reminders using Twilio's API. Built with Flask for the backend and React for the frontend, the app streamlines task management for individuals and teams.
- User Authentication: Register and log in to manage your personalized tasks.
- Task Management: Create, edit, delete, and view tasks.
- Schedule Tasks: Set due dates and reminders for tasks.
- Twilio Notifications: Receive task reminders via SMS.
- Responsive Design: User-friendly UI
- Flask: Python-based web framework.
- SQLAlchemy: ORM for database interactions.
- Twilio API: For sending text notifications.
- SQLite: Lightweight database for development (or PostgreSQL for production).
- React: JavaScript library for building UI.
- Bootstrap: CSS framework for responsive design.
- Vite: Modern build tool for faster development.
- Python 3.8+
- Node.js 14+
- Twilio account with API credentials.
- Clone the repository:
git clone https://github.com/your-repo/task-scheduler-app.git cd task-scheduler-app
- Create and activate a virtual environment:
python3 -m venv venv source venv/bin/activate # For Linux/Mac venv\Scripts\activate # For Windows
- Install dependencies:
pip install -r requirements.txt
- Initialize the database:
flask db init flask db migrate flask db upgrade
- Run the Flask development server:
flask run
- Navigate to the frontend directory:
cd client
- Install dependencies:
npm install
- Start the development server:
npm run dev
- Sign Up: Create an account to start managing your tasks.
- Create Tasks: Add tasks with due dates and reminder times.
- Edit or Delete: Modify or remove tasks as needed.
- Receive Reminders: Get SMS notifications at the scheduled reminder time.
- Recurring Tasks: Allow users to set tasks to repeat daily, weekly, or monthly.
- Team Collaboration: Share tasks with team members and assign roles.
- Analytics: Provide task completion insights and performance tracking.
- Fork the repository.
- Create a feature branch:
git checkout -b feature-name
- Commit your changes:
git commit -m "Add feature-name"
- Push to the branch:
git push origin feature-name
- Open a pull request.
Happy task scheduling! 😊