certain-os is the web platform for certain.ai - an AI-powered Sales Manager that protects your pipeline, starting from meeting reliability.
Sales teams spend hours booking meetings, only to see prospects ghost, forecasts slip, and pipeline leak away. Managers waste time chasing confirmations, checking calendars, and reminding reps. certain.ai fixes this by synthesizing signals from calendar, CRM, and communications tools so no meeting—and no pipeline—slips through the cracks.
- Prospects don't show up - Industry show-up rates hover around 60-70%
- Forecasts get distorted - Deals look healthy on paper but disappear before they even start
- Managers become babysitters - Instead of coaching reps, they're stuck chasing meetings and policing calendars
certain.ai integrates with your calendar, CRM, and sales communication tools to:
- Predict who is at risk of no-showing with AI reliability scores
- Prevent missed meetings with smart nudges, agenda confirmations, and personalized reminders
- Recover no-shows with automated reschedules and follow-up cadences
- Measure show-up rates as a KPI across reps and teams, enabling data-driven coaching
- Sales Managers & BDMs → Protect pipeline, improve forecasting, and coach reps with real data
- BDRs & AEs → Get more meetings to actually happen
- RevOps Leaders → Gain visibility and control over no-shows, pipeline leakage, and recovery
certain-os includes comprehensive dashboards for sales visibility and management:
Central command center with key KPIs, activity charts, and CRM hygiene overview
- Pipeline funnel visualization
- AI-powered health insights
- Risk breakdown and analysis
- Pipeline quality tracking
- AI forecast insights and predictions
- Forecast timeline visualization
- Breakdown by stage and rep
- Confidence scoring
- Stalled deal risk alerts
- Alert feed with actionable recovery steps
- Recovery impact tracking
- One-click recovery workflows
- Dormant account identification
- Hygiene score tracking and trends
- Bulk cleanup with rollback capabilities
- Automated data quality monitoring
- Upcoming meeting tracking
- Discovery meeting feedback
- No-show detection and auto-follow-up
- Meeting KPIs and trends
- Revenue KPI tracking
- Revenue heatmap by segment (industry/company size)
- Revenue charts and analytics
- Segment filtering and detail views
- Comparative revenue analysis
- Team member management
- Invite system for BDRs/SDRs
- Active member tracking
- Pending invitation management
- Team roster and status overview
- Rep performance KPIs
- Rep performance tracking table
- AI-powered call insights
- Call analytics and trends
- Activity outcomes tracking
- Rep performance proficiency
- Call and email style analysis
- Engagement scoring
- Gmail - Email monitoring, intent detection, and automated follow-ups
- HubSpot - Real-time CRM data sync and updates
- Google Calendar - Meeting detection, no-show tracking, and scheduling
- AI workflow builder with visual editor
- Workflow template library
- Active workflow monitoring
- Calendar→Gmail automation
- Reply→Reschedule flows
- Autonomous workflow execution
- Recent actions monitoring
- Agent performance KPIs
- User permission management
- Audit log tracking
- Role-based access control
Built with the T3 Stack and modern web technologies:
- Next.js 15 - React framework with App Router
- TypeScript - Type-safe JavaScript
- React 19 - UI library
- tRPC - End-to-end typesafe APIs
- Drizzle ORM - TypeScript SQL ORM
- PostgreSQL - Database (via Vercel Postgres)
- Tailwind CSS 4 - Utility-first CSS framework
- Shadcn UI - Re-usable component library
- Radix UI - Unstyled, accessible components
- Lucide React - Icon library
- Recharts - Data visualization
- TanStack Query - Async state management
- Zod - TypeScript-first schema validation
- Node.js 20.x or higher
- pnpm (recommended package manager)
- PostgreSQL database
- Clone the repository:
git clone <repository-url>
cd certain-os- Install dependencies:
pnpm install- Set up environment variables:
cp .env.example .envConfigure your .env file with:
- Database connection string
- API keys for integrations (Gmail, HubSpot, Google Calendar)
- Any other required environment variables
- Set up the database:
pnpm db:pushStart the development server:
pnpm devThe application will be available at http://localhost:3000
# Build for production
pnpm build
# Start production server
pnpm start
# Run type checking
pnpm typecheck
# Run linting
pnpm lint
# Fix linting issues
pnpm lint:fix
# Format code
pnpm format:write
# Check formatting
pnpm format:check
# Database operations
pnpm db:generate # Generate migrations
pnpm db:migrate # Run migrations
pnpm db:studio # Open Drizzle Studiocertain-os/
├── src/
│ ├── app/ # Next.js App Router
│ │ ├── _components/ # Dashboard components
│ │ │ ├── agents/ # AI agents & workflows dashboard
│ │ │ ├── analytics/ # Analytics dashboard
│ │ │ ├── calls/ # Rep performance & call insights
│ │ │ ├── crm-hygiene/ # CRM hygiene management
│ │ │ ├── dashboards/ # Dashboard layouts
│ │ │ ├── forecasts/ # Forecast predictions
│ │ │ ├── home/ # Main dashboard
│ │ │ ├── integrations/ # Integration management
│ │ │ ├── meetings/ # Meeting tracking
│ │ │ ├── permissions/ # User permissions
│ │ │ ├── pipeline-health/ # Pipeline analytics
│ │ │ ├── recovery-alerts/ # Alert management
│ │ │ ├── revenue/ # Revenue analytics
│ │ │ ├── teams/ # Team management
│ │ │ └── workflows/ # Workflow components (used in agents)
│ │ ├── [feature]/ # Feature pages
│ │ └── layout.tsx # Root layout
│ ├── components/ # Shared UI components
│ │ └── ui/ # Shadcn UI components
│ ├── server/ # Backend code
│ │ ├── api/ # tRPC routes
│ │ └── db/ # Database config
│ ├── styles/ # Global styles
│ └── trpc/ # tRPC client setup
├── public/ # Static assets
├── drizzle.config.ts # Drizzle ORM config
└── package.json # Dependencies
This project is optimized for deployment on Vercel:
- Push your code to GitHub/GitLab/Bitbucket
- Import your repository in Vercel
- Configure environment variables
- Deploy
Vercel will automatically:
- Install dependencies
- Run build command
- Deploy to production
- Provide preview deployments for PRs
For more details, see the Vercel deployment guide.
For deployment on other platforms, refer to:
- Use TypeScript for all code
- Follow functional and declarative programming patterns
- Use descriptive variable names with auxiliary verbs (e.g.,
isLoading,hasError) - Prefer named exports for components
- Use kebab-case for component file names
- Use Shadcn UI components wherever possible
- Store Shadcn components in
src/components/ui - Implement responsive design with Tailwind CSS (mobile-first approach)
- Minimize use of
'use client'- favor React Server Components
- Minimize
useEffectandsetState - Wrap client components in
Suspensewith fallback - Use dynamic loading for non-critical components
- Optimize images with WebP format and lazy loading
Own the no-show problem with comprehensive meeting reliability features
Become the AI assistant for sales managers - meeting reliability, follow-ups, and smart nudges
Evolve into the complete AI Sales Manager platform - managing pipeline hygiene, forecast accuracy, and team performance
- T3 Stack Documentation
- Next.js Documentation
- tRPC Documentation
- Drizzle ORM Documentation
- Shadcn UI Documentation
- Tailwind CSS Documentation
For questions, issues, or contributions, please contact the certain.ai team.
Built with ❤️ by the certain.ai team