Codebase Status - Updated August 14, 2025
Overview
This document provides a comprehensive overview of the current state of the do.dev application codebase after extraction from the monorepo and cleanup focused on the single dodev project.
Recent Changes
🎯 Project Extraction and Focus (August 14, 2025)
- Extracted dodev project from full monorepo to create focused single-application repository
- Removed all unused applications and infrastructure not related to dodev
- Cleaned up configuration files to remove references to deleted projects
- Updated all documentation to reflect single-project structure
- Maintained essential packages for dodev functionality:
- Kept UI package for shared components
- Kept Convex packages for backend functionality
- Kept DNS client for local development tools
- Kept AI editor for dodev features
- Simplified workspace structure focused on dodev application needs
Documentation Cleanup (August 14, 2025)
- Updated all documentation to reflect single dodev project
- Removed monorepo references throughout documentation
- Updated architecture documentation for multi-deployment Convex setup
- Cleaned up authentication documentation for organization-based auth
- Maintained critical guides for TypeScript, Git workflow, and deployment
Dashboard Improvements
- Unified dashboard layout for both admin and regular users
- Responsive navigation with mobile menu support
- Demo page with Recharts integration
- Enhanced billing overview with proper TypeScript interfaces
- Consistent icon usage throughout navigation
Current Application Structure
do.dev Application (apps/dodev)
The main and only application in this repository.
Active Pages
-
Public Pages
/- Homepage with AI-powered features showcase/products- Product listing/contact- Contact form/privacy- Privacy policy/terms- Terms of service/status- System status page/signup/waitlist- Waitlist signup/waitlist/complete- Waitlist completion page/login- User login/signup- User signup/admin/login- Admin login/profile- User profile/organization- Organization management/onboarding- User onboarding flow
-
Dashboard Pages (Protected)
/dashboard- Main dashboard/dashboard/dodev/overview- Admin overview/dashboard/dodev/users- User management/dashboard/dodev/users/[userId]/edit- Edit specific user/dashboard/customers/*- Customer management sections/dashboard/doc/*- Documentation builder sections/dashboard/local/*- Local development tools (DNS, Traefik)/dashboard/billing/*- Billing sections/dashboard/settings/*- Settings sections/dashboard/demo- Demo components page
Active API Routes
/api/contact- Contact form submission/api/ai-agent- AI agent functionality/api/ai-agent-intent- AI intent processing/api/caddy/*- Caddy/Traefik server management/api/customers/*- Customer API endpoints/api/dns/*- DNS management endpoints
Key Components
- Auth Components: auth-form, login-form, oauth-app-handler
- Dashboard Components: adminView, userView
- UI Components: Various cards, modals, navigation components
- Convex Integration: convex-client-provider
- Help System: floating-help-button
Active Dependencies
Core Dependencies
@ai-sdk/openai- OpenAI integration@convex-dev/auth- Authentication@dodotdev/ai-editor- Custom AI editor (workspace package)@workspace/*packages - Internal shared packagesreact,react-dom- React 19next- Next.js 15.4.1convex- Backend platformlucide-react- Iconsrecharts- Chartsframer-motion- Animationszustand- State managementsonner- Toast notifications
Removed Dependencies
- All @tiptap packages (18 total) - Editor functionality not used
- Other unused packages identified by tooling
Workspace Packages
Active Packages
- @workspace/ui - Shared UI components (ShadCN-based)
- packages/convex-local - Local infrastructure management (DNS, Traefik)
- packages/convex-send - Email service functionality
- packages/prisma - Database schema and client
- packages/dns-client - DNS management utilities
- packages/typescript-config - Shared TypeScript configurations
- packages/dodotdev/ai-editor - AI-powered editor component
- tools/convex - Main Convex backend deployment
Authentication & Roles
Current Role System
user- Basic user accessstaff- Staff accessadmin- Administrator accesssuper_admin- Super administrator accesswaitlist- Waitlisted users
Auth Providers
- Email verification (OTP)
- Google OAuth
- GitHub OAuth
Database Schema (Convex)
Main Tables
users- User accounts and profilesorganizations- Organization managementoauthAccounts- OAuth account linksauthSessions- Active sessions- Various other tables for features
Current Issues & TODOs
Known Issues
- Peer dependency warnings for zod versions
- PostCSS deprecation warnings
- Biome configuration issue (../../../biome.json not found) - needs investigation
Future Improvements
- Complete implementation of all dashboard sections
- Add comprehensive testing
- Improve TypeScript strict mode compliance
- Add proper error boundaries
- Implement proper logging and monitoring
Development Guidelines
Key Commands
# Development
pnpm dev # Start dev server on port 3005
pnpm build # Build for production
pnpm typecheck # Check TypeScript
# Code Quality
pnpm lint # Run Biome linter
pnpm lint:fix # Fix linting issues
pnpm format # Format codeImportant Notes
- Always run TypeScript checks before committing
- Follow the git workflow in
docs/GIT_PREFERENCES.md - Test locally before deploying to Vercel
- The app runs on port 3005 in development
- Use absolute imports with
@/prefix
Removed Applications (January 24, 2025)
- auth-dodev: Empty duplicate of auth app (removed)
- doc: Empty directory with only build artifacts (removed)
File Organization
Clean Structure
apps/dodev/
├── app/ # Next.js app directory
│ ├── api/ # API routes
│ ├── dashboard/ # Protected dashboard pages
│ └── (public pages) # Public-facing pages
├── components/ # React components
├── hooks/ # Custom React hooks
├── lib/ # Utilities and helpers
└── public/ # Static assetsDeployment
Vercel Configuration
- Build command:
pnpm vercel-build - Output directory:
.next - Environment variables required:
DATABASE_URLCONVEX_URL- Various OAuth credentials
Performance Optimizations
- Turbopack enabled for faster builds
- Dynamic imports where appropriate
- Image optimization with Next.js Image
- Font optimization with Next.js Font
Multi-Deployment Convex Architecture
Current Deployment Structure
dodev-project/
├── tools/convex/ # Main application deployment
│ ├── schema.ts # Core business logic schema
│ ├── auth/ # Authentication functions
│ └── functions/ # Business logic functions
├── packages/convex-local/ # Local infrastructure deployment
│ ├── schema.ts # DNS and proxy schema
│ └── functions/ # Infrastructure functions
└── packages/convex-send/ # Email service deployment
├── schema.ts # Email templates and analytics
└── functions/ # Email operationsBenefits of Multi-Deployment Architecture
- Clear separation of concerns between application, infrastructure, and email services
- Independent scaling for different service types
- Security isolation between deployment boundaries
- Specialized optimization per service type
Last updated: August 14, 2025 (Project Extraction) Next review: When significant changes are made