Shipped University Project · 2024

E-Council

AI-powered student council management platform that centralized event management, financial tracking, document generation, board resolutions, meeting minutes, and administrative workflows.

E-Council landing page
Fig 01 — E-Council landing page

The problem

Student council operations were scattered across spreadsheets, manual document drafting, and informal approvals, creating duplication and slow decision-making for events, budgets, and official records.

Role & responsibilities

Full-stack developer. Built the FastAPI backend and React SPA, SQLAlchemy data layer, AI-assisted drafting via a provider-agnostic AI service, Cloudinary file handling, PDF reporting with ReportLab, and analytics dashboards.

Architecture

FastAPI REST API (JWT auth with refresh tokens, Pydantic schemas, OpenAPI docs) behind a React 19 + TypeScript SPA (Vite, Tailwind CSS 4, TanStack Query, Recharts); SQLAlchemy over SQLite/MySQL/PostgreSQL; provider-agnostic abstraction layers for AI (Gemini, OpenAI, Anthropic, local), email (SMTP, SendGrid, Mailgun), and file storage (Cloudinary, local); ReportLab for PDF generation.

Key features

  • AI-assisted document generation through a provider-agnostic layer — Gemini, OpenAI, Anthropic, or a local model
  • JWT authentication with refresh tokens and role-based access for officers and advisers
  • Cloudinary/local file management and ReportLab PDF reporting; Excel student-list import via pandas
  • Event management, financial tracking, resolutions, and meeting minutes
  • Recharts analytics dashboards to reduce administrative workload
  • Six interconnected modules — events, concept papers, documentation, financial reports, board resolutions, and meeting minutes — scoped by school year and semester
  • Council overview dashboard with event status, budget breakdown, and activity evaluation charts
E-Council React dashboard with module statistics and activity charts
Fig 02 — React dashboard with council-wide statistics
Concept papers module in the React SPA with status badges and actions
Fig 03 — Concept papers module with proposals and approval actions
Events module in the React SPA with venue and status tracking
Fig 04 — Events module with venue, schedule, and status tracking

Outcomes

6+

administrative modules unified

1

unified document generation pipeline

50%

reduction in manual record-keeping effort

Stack

PythonFastAPIReactTypeScriptTailwind CSSSQLAlchemyMySQLGoogle GeminiCloudinarySendGridReportLab