Sales · App Starter
A working sales CRM — pipeline board, lead scoring, activity history — generated into a codebase you own.
Describe how your team sells, and Dual7 generates this CRM around it: six connected entities, a kanban deal board, and reporting, shipped as a real full-stack app. Rename a stage, add a field, or bolt on a whole module — it's your code, not a subscription seat.
01 · Data model
A CRM stands or falls on its data model. This starter generates six connected entities — every screen, board, and report below reads from these tables, and all of them are yours to rename or extend.
| table | what it holds |
|---|---|
companies | Organizations you sell to — domain, size, industry, owner, and every contact and deal rolled up in one view. |
contacts | People at those companies — role, email, phone, and a complete history of touchpoints. |
leads | Unqualified inbound and outbound prospects, scored and routed before they convert to contacts and deals. |
deals | Revenue opportunities with amount, stage, close date, and owner — the rows behind the kanban board. |
pipelines | Named stage sequences (new business, renewals, partnerships) so different motions get different boards. |
activities | Calls, emails, meetings, and notes, timestamped against contacts and deals — the timeline that keeps handoffs clean. |
02 · Screens
Deals move across pipeline stages as cards with amount, owner, and age at a glance. Drag a card and the stage change, timestamp, and activity entry happen in one transaction — the board is a view of the deals table, not a separate tool to sync.
Score leads on fit and behavior with rules you can read and change — they're code in your project, not a black box. High scores route to the top of the queue so the next call is always the most likely one to close.
Every call, email, meeting, and note lands on one chronological timeline per contact and per deal. When a rep hands off or a manager drops in, the whole relationship is readable in thirty seconds.
Pipeline value by stage, win rate, cycle time, and activity volume — computed from your live tables, no export step. Add a metric by writing a query, not by upgrading a plan.
03 · Process
Tell Dual7 how you sell — B2B or B2C, deal stages, team size, what a lead means to you. Plain language is enough; the starter supplies the structure.
Get the working CRM in minutes, then iterate conversationally: rename stages, add fields, change the scoring rules. Every change lands in real code you can inspect.
When it's ready for the team, run it through Dual7's approval gates to production — audit trail included, deployed on your infrastructure, data in your database.
04 · Fit
The deals tab in a spreadsheet works until two people sell at once. This starter is the smallest real CRM: same columns you already track, plus a board, history, and reports — without adopting an enterprise tool you'll fight to un-configure.
When the CRM bill scales with headcount but the value doesn't, owning the codebase flips the economics. Generate the CRM once, run it on your infrastructure, and add seats for the cost of a database row.
Use the starter as a base and generate a tailored CRM per client — their entities, their stages, their branding — instead of white-labeling someone else's product with someone else's limits.
If your motion needs an approval step, a custom object, or a stage no vendor ships, you normally buy the closest thing and bend the process. Here the process is the spec — generate the CRM that matches it.
05 · Yours
Everything above is the starting point, not the boundary. Rename entities to your vocabulary — accounts to practices, deals to placements — and the schema, screens, and reports follow. Add fields conversationally in Vibe mode: a contract-value field, a source attribution field, a region picker on companies.
Bigger changes are still just changes to your code: add a quotes entity linked to deals, wire an email integration into the activity timeline, or add an approval gate before a deal can close. Because the output is a normal full-stack codebase, your team can also edit it directly — the generated app has no runtime dependency on Dual7.
A CRM subscription rents you screens around a database you can't touch. This starter inverts that: the database schema, the screens, and the business rules are generated as source code in your repository, deployable on your infrastructure. No per-seat pricing, no API rate tiers to buy back your own data, no migration project when you leave — leaving isn't a concept that applies to code you own.
The trade-off is honesty: you're operating an app, not a vendor relationship. Dual7's governed pipeline is built to make that safe — approval gates, an audit trail, and regeneration when you want to change something structural rather than patch it by hand.
06 · Industries
A CRM that speaks real estate — listings, showings, and buyer and seller pipelines — generated into code your brokerage owns.
A CRM built around bids, job sites, and GC relationships — generated into a codebase your firm owns.
A CRM organized around households, review cadences, and a compliance-grade record — generated into code your practice owns.
A CRM for provider outreach — referring practices, referral volumes, and liaison visits — generated into code your organization owns.
A CRM where deals are proposals and won work becomes engagements — generated into code your consultancy owns.
A CRM that reads your product's signals and runs at founder speed — generated into a codebase your startup owns.
A working full-stack CRM generated into a codebase you own: six connected entities (companies, contacts, leads, deals, pipelines, activities), a kanban deal board, lead scoring, an activity timeline, and a reports dashboard. It runs on your infrastructure with your data in your database — not a trial of someone else's product.
Yes — that's the point of starting from a starter instead of subscribing. Rename stages, add custom fields, create additional pipelines for renewals or partnerships, and change the lead-scoring rules. In Vibe mode these are conversational edits; every one lands in real code you can review.
You own the code. Dual7 generates the CRM as a normal full-stack application — schema, screens, and rules as source code in your repository. Deploy it to your own infrastructure through the governed pipeline; the running app has no dependency on Dual7.
Open-source CRMs give you someone else's codebase to configure and maintain — usually large, generic, and shaped by a decade of other people's requirements. A starter is generated around your sales motion from day one: your entities, your stages, your rules, in a codebase sized to what you actually use.
The generated CRM has a standard relational schema, so existing data maps in cleanly — export contacts, companies, and deals from your current tool as CSV and load them into the corresponding tables. Because you own the schema, mapping quirks are fixable in your code rather than blocked by an importer.
Yes — the base starter adapts to any B2B or B2C motion, and there are dedicated industry versions with adapted entities and pipelines. See the real estate CRM and construction CRM pages for data models with properties, showings, bids, and job-site fields built in.
Dual7 App Starters
A working sales CRM — pipeline board, lead scoring, activity history — generated into a codebase you own. Describe your version to start — the output is a project you own.