mirror of https://github.com/vee1e/bulk-questionnaire-upload - Fork containing all the code for my C4GT '25 menteeship at D
Find a file
2026-08-31 22:03:36 +00:00
.github/workflows ci: add deploy workflow (build linux/amd64 to GHCR + SSH deploy to VPS) 2026-08-31 22:02:12 +00:00
backend ci: add deploy workflow (build linux/amd64 to GHCR + SSH deploy to VPS) 2026-08-31 22:02:12 +00:00
frontend chore: point frontend at new VPS bulk-api.lverma.com 2026-08-31 21:11:05 +00:00
scripts fix: preserve previous perf metrics when MongoDB unavailable; fix delete ID parsing 2026-06-02 15:09:46 +05:30
tests Refactor backend and frontend services, add unit tests, configure Ruff and Vitest, and delegate frontend state 2026-06-11 01:47:52 +05:30
.gitignore feat: add Vercel deployment config and runtime API URL loading 2026-06-02 12:21:52 +05:30
LICENSE
pytest.ini feat: implement CI workflow, enhance file validation, and add test cases 2025-08-26 00:22:54 +05:30
README.md chore: update performance metrics from CI [skip ci] 2026-08-31 22:03:36 +00:00
ruff.toml Refactor backend and frontend services, add unit tests, configure Ruff and Vitest, and delegate frontend state 2026-06-11 01:47:52 +05:30
run.sh fix: refine validation UI with updated colors and spacing in upload component, and other fixes 2025-07-29 01:07:47 +05:30

Bulk Questionnaire Upload System

Upload, validate, and manage Excel-based questionnaires through a modern web UI. XLSForm-compatible three-sheet format (Forms / Questions Info / Answer Options), parsed into a mobile-app-ready JSON schema and stored in MongoDB.

Screenshots

Upload & Validate
image
Form Parse with Errors
image
Form Parse Successful
image

Performance

Benchmarks are measured automatically on every push to main against the live Render deployment.

Last measured: 2026-08-31 22:03 UTC against the live Render deployment.

Metric Type Recent Performance
File Validation 12283090ms (1.2283.090s)
Form Parsing 45115094ms (4.5115.094s)
Form Upload 65536553ms (6.5536.553s)
Question Processing 15.828ms per item
Option Processing 9.127ms per item
Batch Processing 65536553ms (6.5536.553s)
Delete Operations 932932ms (0.9320.932s)
Cold Start Time 285ms

Stack

Layer Tech
Frontend Angular 19, Angular Material, SSR
Backend FastAPI, Uvicorn, Pandas, Motor
Database MongoDB Atlas
Deploy Vercel (frontend) · Render (backend)
CI GitHub Actions - tests + live perf benchmarks

See backend/README.md for API reference, file format specs, and local setup. See frontend/README.md for component structure, config, and development guide.