RoxyDental (POLABDC) is a high-performance SaaS solution designed to digitize dental clinic operations. It integrates Artificial Intelligence to assist dentists with disease prediction and data analysis while providing a seamless experience for patients, nurses, and administrators. Built as a Monorepo, the system ensures scalability by separating the Next.js client, Express.js server, and dynamic Python AI processing unit.
Tech Stack
Next.js 14
Express.js
Prisma
Supabase
PostgreSQL
Python
TypeScript
Tailwind CSS
Shadcn UI
JWT
Google Gemini
Tools Used
VS Code
Supabase Dashboard
Prisma Studio
Figma
Postman
Key Features
Dentist Experience
▸Smart Dashboard: Overview of daily appointments and financial stats at a glance.
▸Digital EMR: Comprehensive Electronic Medical Records with full history tracking.
▸AI Assistant: Intelligent disease prediction and clinical data analysis for diagnosis support.
▸Treatment Planning: Record treatments, prescriptions, and detailed clinical notes.
Nursing Workflow
▸Queue Management: Real-time handling of patient queues for efficient clinic flow.
▸Vitals Recording: Pre-consultation checks including blood pressure and symptom logging.
▸Rapid Registration: Streamlined onboarding process for new patients.
Operational Logic
▸Scheduling System: Conflict-free calendar for managing clinic-wide appointments.
▸Billing & Invoicing: Automated revenue tracking and invoice generation.
▸RBAC Security: Granular Role-Based Access Control for different clinic personnel.
AI & Infrastructure
▸AI Service Integration: Python-based microservice for high-speed disease prediction models.
▸Monorepo Scaling: Structured architecture connecting Next.js, Express.js, and AI modules.
▸Database Architecture: High-performance schema design using Prisma ORM and PostgreSQL.
▸Real-time Synchronization: Leveraging Supabase subscriptions for instant state updates across the clinic.
Highlights
AI-Driven EMR System
Monorepo Architecture
Real-time Queue Management
Installation
Database Setup
cd backend
npm install
# Configure .env with DATABASE_URL (Supabase)
npx prisma migrate dev --name init
Backend & AI Setup
npm run dev # Backend starts at port 5000
cd ../roxydental-ai
pip install -r requirements.txt
python api.py
Frontend Launch
cd ../frontend
npm install
# Configure .env.local with NEXT_PUBLIC_API_URL
npm run dev
Challenges & Solutions
Challenge
AI Service Latency
Solution
Isolated the AI engine into a separate Python microservice to prevent heavy ML processing from blocking the main Express.js event loop.
Challenge
Monorepo Orchestration
Solution
Implemented a structured directory system with shared environment configurations to maintain synchronization across Frontend, Backend, and AI modules.
Challenge
Real-time Queue Sync
Solution
leveraged Supabase real-time subscriptions and optimistic UI updates to ensure nurses and doctors see patient status changes instantly.