Skip to main content

Personal Project

2023 Live

Task Master

Course Capstone · CS50W

Task management web application with recurring daily, weekly, and monthly workflows, JWT-secured REST API, task history, timezone-based automatic resets, Swagger API documentation, interactive data tables, and Excel export.

Django Django REST Framework PostgreSQL JWT Swagger DataTables Excel Export Scheduled Task Reset

Overview

Task management web application developed as a CS50W capstone project (2023). Features recurring daily, weekly, and monthly task workflows with timezone-aware automatic resets, a JWT-secured REST API, interactive data tables, and Excel export.

Context

CS50's Web Programming with Python and JavaScript — Capstone Project. Role: Full-Stack Developer. Year: Jul–Aug 2023.

Responsibilities

  • Designed and implemented the Django REST Framework API with JWT authentication (djangorestframework-simplejwt).
  • Built timezone-aware scheduled task reset logic for daily, weekly, and monthly task cycles.
  • Integrated DataTables for server-side pagination, sorting, and filtering of task data.
  • Implemented Excel export using openpyxl for task history reporting.
  • Set up Swagger/OpenAPI documentation via drf-spectacular.
  • Deployed to PythonAnywhere with a PostgreSQL backend.

Architecture

Django serves the frontend templates while DRF provides the API layer. Authentication is JWT-based with refresh token support. Scheduled task resets are triggered by Django management commands or cron, and DataTables connects to the DRF API for server-side data handling.

Technology Stack

Django · Django REST Framework · PostgreSQL · JWT · Swagger / OpenAPI · DataTables · Excel Export · Scheduled Task Reset

2026 © Muhammad Alif Budiman