A Flask-based web application that uses Google OAuth 2.0 for authentication and provides a user-specific to-do list manager.
Each authenticated user can:
- Add new to-dos with due dates
- Mark tasks as completed
- View completed tasks in a "History" section
✅ Google OAuth Authentication
✅ User-Specific Dashboard
✅ Add To-Do Items with Due Dates
✅ Mark Tasks as Completed
✅ View Task History
✅ SQLite Database with SQLAlchemy ORM
✅ Modular Flask App Structure
✅ Session-Based User Tracking
git clone <project_url>
cd <project>- Create python environment with version
3.12 - Run pip install -r requirements.txt
- Run the application using
python app.py( ensure you are in the current directory) - Also if you are using a vscode, the configuration of the debugger using flask has been added.
- Go to Google Cloud Console
- Create a new project and OAuth 2.0 Client ID (Web Application)
- Navigate to:
- APIs & Services → Credentials
- Click "Create credentials" → "OAuth 2.0 Client ID"
- Configure the consent screen (if you haven't already).
- Under Application Type, select Web application
- Add the Authorized redirect URI — this must match what you're using in your code:
http://127.0.0.1:5000/authorize-
Click Create, and note the:
Client ID
Client Secret
GOOGLE_CLIENT_ID=
GOOGLE_CLIENT_SECRET=