standpulse customerpro crystalai writing
SaaS · Team execution · Multi-tenant

Real-time team flow, without the standup tax.

A live, anti-Jira standup board that grew into a full team-execution platform — planning, docs, reporting, a WhatsApp AI bot, grounded project chat, and dual-provider billing. Multi-tenant, role-aware, and shipped to production.

A board that breathesProgress bars fill from timestamps — emerald on time, amber in progress, red overdue. No manual updates.
Blockers are emergenciesFlagging one starts a live HH:MM:SS clock for the whole team; it turns red past an hour.
Zero pollingThe client computes every %, colour, and ticker from timestamps and a single server clock.
Beyond the standup board

One workspace for the whole team.

Daily Planner

A personal planning surface with a free-form autosaving canvas, a note / action / reminder / blocker model, and a notification tray to move, snooze, dismiss, or archive.

PM dashboard

Project managers aggregate their member projects into one multi-project view; other leads see every active project in the org.

Team documentation

Slugged, tagged docs with a Milkdown rich-text editor, inline links to tasks and reminders, and per-document access control.

Cross-project grid

An Excel-style “Sheets” view across projects, for people who think in rows and columns.

Rich tasks

Priority, difficulty and type, labels, comments, co-assignees, Cloudflare-R2 attachments, and a per-task activity audit trail.

Reports & exports

Lead-only project reports with CSV export, a personal reminders home, and per-user light / dark themes.

An AI layer, not a bolt-on

The standup runs itself from WhatsApp.

OpenAI · function-calling

WhatsApp AI bot

A WhatsApp Cloud API assistant runs check-ins, attendance, and standup straight from the chat — no app switching. Presence and geo resolution feed the board; inbound messages are HMAC-verified.

Grounded project chat (RAG)

Read-only Q&A grounded in a project's own context — retrieval over a pgvector store with OpenAI embeddings, gated per project and metered against a per-user token budget.

AI email drafting

An outbound draft editor that suggests an editable subject and body (it sends nothing itself), plus inbound routing rules driven by a Postmark webhook.

Blocker escalations

Unresolved blockers escalate through alerts and a dispatcher, roll up into a digest, and land as a weekly summary email.

Built for real organizations

Multi-tenant & role-aware

Hard org isolation via a global tenant scope, capped at 100 users per project. Five roles — Intern to Team Lead — each with its own board scoping, plus mentor tracking and multi-workspace switching.

Dual-provider billing

Razorpay for India, Paddle for everyone else — auto-detected. Plans, durations, comped plans, INR and USD pricing, HMAC-verified webhooks on both.

Filament admin

A full operator console — orgs, users, projects, plans, subscriptions, payments, AI-usage and escalation logs, per-integration settings — plus super-admin impersonation and an audit log.

Auth & onboarding

One-click Google and GitHub OAuth alongside email / password, single and bulk token invites, and a guided onboarding flow. Sanctum secures the API and device tokens.

Tech stack
Backend
Laravel 13PHP 8.4MySQL RedisLaravel QueueSanctumSocialite
Frontend
Alpine.jsTailwind CSS 4Vite MilkdownGrapesJS / MJML
AI & data
OpenAI · gpt-4o-minitext-embedding-3-small pgvectorRAG
Billing
RazorpayPaddle
Integrations & infra
WhatsApp Cloud APIPostmarkCloudflare R2 Filament 5

Trade your standup for a pulse.

See it live →