Tech Stack
Frontend (findadoc-web)
| Technology | Purpose |
|---|---|
| Nuxt 3 | Vue-based meta-framework (SSG mode) |
| Vue 3 | UI framework (Composition API) |
| TypeScript | Type-safe JavaScript |
| Tailwind CSS | Utility-first CSS framework |
| Pinia | State management |
| GraphQL | API query language |
| graphql-request | Lightweight GraphQL client |
| Nuxt i18n | Internationalization (10 languages) |
| Auth0 | Authentication |
| Google Maps API | Map and location services |
| Vitest | Unit testing |
| Cypress | End-to-end testing |
| Storybook | Component development and documentation |
| ESLint | Linting |
| Husky | Git hooks |
Requirements
- Node.js >= 22.12.0
- Yarn 4.x (via Corepack)
Backend (findadoc-server)
| Technology | Purpose |
|---|---|
| Node.js | Runtime |
| TypeScript | Type-safe JavaScript |
| GraphQL | API layer |
| Supabase | Database (PostgreSQL) |
| PM2 | Process management (production) |
| Docker | Containerization |
| Vitest | Testing |
MCP Server (findadoc-mcp)
| Technology | Purpose |
|---|---|
| Node.js | Runtime |
| TypeScript | Type-safe JavaScript |
| Model Context Protocol | AI tool integration |
The MCP server provides AI-powered tools for interacting with Find a Doc healthcare provider data.
Code Style
- All projects use ESLint with flat config
- PR titles must follow Conventional Commits (enforced by CI)
- Branch names should be prefixed with your GitHub username:
yourusername/my-change