Enterprise SvelteKitHonoCloudflare WorkersPythonAzure FunctionsOpenAIPrismaTypeSpec
PTE Practice Platform
Built at Gengram · 2024 – Present
A full-stack AI-powered PTE exam preparation platform built from scratch — covering 20+ question types across Speaking, Writing, Reading, and Listening with real-time AI assessment, automated content generation, and a built-in dictionary system.
Details
- • Built the entire platform from zero: a Bun workspace TypeScript monorepo (pte-app: apps/web + apps/server + 6 packages), a Python uv monorepo (ContentGenerator: generator-cli + 4 packages + 8 domain modules), and Azure Functions microservices (functions).
- • Developed the frontend (SvelteKit 5, Tailwind CSS v4) with dedicated practice interfaces for 20+ PTE question types across Speaking, Writing, Reading, and Listening skills.
- • Engineered the backend API on Hono deployed to Cloudflare Workers, with Cloudflare Queues for async task processing, Azure Service Bus as message queue to trigger Azure Functions workers, and Azure AI Speech SDK for pronunciation assessment.
- • Implemented a multi-schema Azure PostgreSQL database via Prisma ORM with domain-separated models: content (20+ question type enums, practice sessions, answer records), auth (Better Auth with session/account management), activity tracking, goal setting, and a dedicated lex schema for the integrated dictionary.
- • Created a Python AI content generation pipeline (uv workspace, 8 domain modules: audio, dictionary, explanation, prosody, refiner, sample, translation, clean) using OpenAI and Anthropic to synthesize, refine, and annotate PTE practice materials — with Azure TTS for audio generation and R2/Cloudflare cloud storage.
- • Built Azure Functions microservices for on-demand AI assessment (writing evaluation, question explanation generation), with shared OpenAI client packages and Prisma database access.
- • Implemented browser-based audio recording (RecordRTC WAV encoder) for speaking tasks, with server-side Azure Speech SDK pronunciation scoring and real-time feedback.
- • Architected the frontend with i18n support, email templates (email-svelte package), docs-sync tooling, and a shared types package — all managed via Bun workspace with Biome for linting.