Git Repository
Repository structure, branches, and commit history
| Item |
Value |
| Production |
/opt/vitara-platform |
| Development |
/home/ubuntu/vitara-platform |
| Remote |
(local deployment) |
| Current Branch |
main |
| Last Commit |
8575fb1 |
Directory Structure
vitara-platform/
├── docker-compose.yml # Docker orchestration
├── .env # Environment variables
├── CLAUDE.md # Development guidance
│
├── voice-agent/ # Node.js webhook handler
│ ├── Dockerfile
│ ├── package.json
│ ├── server.js # Main entry point
│ ├── oscarRestService.js # OSCAR API client
│ ├── oscarService.js # OAuth 1.0a client
│ ├── clinicRouter.js # Multi-tenant routing
│ ├── vitaraDb.js # Database helpers
│ ├── vapiEndpoints.js # Vapi webhook handlers
│ ├── utils.js # Utilities
│ └── migrations/
│ └── 001_initial_schema.sql
│
├── admin-dashboard/ # Admin web interface
│ ├── Dockerfile
│ ├── package.json
│ ├── server.js
│ ├── middleware/
│ │ └── auth.js
│ ├── models/
│ │ ├── User.js
│ │ └── Clinic.js
│ └── public/
│
├── nginx/ # Reverse proxy
│ ├── nginx.conf
│ └── conf.d/
│ └── api.conf
│
├── database/ # Database initialization
│ └── init.sql
│
├── vapi-config/ # Vapi assistant configuration
│ ├── system-prompt-v1.md
│ ├── system-prompt-v2.md
│ ├── tools-definition.json
│ ├── tools-definition-v2.json
│ └── assistant-config.json
│
├── scripts/ # Deployment scripts
│ ├── deploy.sh
│ └── ssl-setup.sh
│
└── docs-website/ # Documentation site
├── index.html
├── css/
├── js/
└── pages/
Key Files
Application Code
| File |
Lines |
Purpose |
voice-agent/server.js |
~300 |
Express app, routes |
voice-agent/vapiEndpoints.js |
~600 |
14 Vapi webhook handlers |
voice-agent/oscarRestService.js |
~190 |
OSCAR REST Bridge client |
voice-agent/vitaraDb.js |
~200 |
PostgreSQL helpers |
admin-dashboard/server.js |
~400 |
Admin API |
Configuration
| File |
Purpose |
docker-compose.yml |
Container orchestration |
.env |
Environment secrets |
nginx/nginx.conf |
Proxy configuration |
vapi-config/system-prompt-v2.md |
Voice agent prompt |
Database
| File |
Purpose |
database/init.sql |
Initial schema |
migrations/001_initial_schema.sql |
Full schema with demo data |
Recent Commits
8575fb1 - docs: Add live status dashboard and update documentation
a3d2e1f - feat: Add get_clinic_info endpoint for registration status
b7c4a2d - feat: Add waitlist management endpoints
c1e5f3a - feat: BC Health registration requirements
d2f6g4b - fix: OSCAR REST Bridge response unwrapping
e3g7h5c - feat: System prompt v2.0 clinic-agnostic
f4h8i6d - feat: Add clinic_config table
g5i9j7e - docs: Add compliance documentation
h6j0k8f - feat: 14 Vapi tool endpoints complete
i7k1l9g - chore: Docker compose with health checks
Branch Strategy
| Branch |
Purpose |
main |
Production-ready code |
develop |
Integration branch |
feature/* |
New features |
fix/* |
Bug fixes |
docs/* |
Documentation |
Deployment Flow
Developer Machine
│
│ git push
▼
Git Repository
│
│ SSH to server
▼
Production Server
│
│ ./scripts/deploy.sh
▼
Docker Compose
│
├── vitara-db
├── vitara-voice-agent
└── vitara-nginx
Development Workflow
Setup
# Clone repository
git clone <repo-url> /opt/vitara-platform
cd /opt/vitara-platform
# Copy environment
cp .env.example .env
# Edit .env with secrets
# Start services
docker compose up -d
Make Changes
# Create feature branch
git checkout -b feature/new-endpoint
# Make changes
# Test locally
# Commit
git add .
git commit -m "feat: Description"
# Push
git push origin feature/new-endpoint
Deploy
# On production server
cd /opt/vitara-platform
git pull origin main
./scripts/deploy.sh
Code Statistics
| Metric |
Count |
| Total Files |
50+ |
| JavaScript |
~3,000 lines |
| SQL |
~200 lines |
| Shell |
~300 lines |
| NGINX Config |
~200 lines |
| Documentation |
~50,000+ words |