Wishdeal Factory · Storefront
Operator interview · $75/hr · Roll Digital's seat
← Back to Inkwell

How Caleb would build Inkwell.

First-person from one of our chief operators. What he'd ship and how, AI-amplified. Stack, hour estimate, day-by-day plan, the parts that are hard, and the handoff. Synthesized from the agent spec.

How I'd build Inkwell

I'd reach for Next.js on the frontend with a FastAPI backend, Postgres for the data layer, Stripe for billing, and Resend for transactional email. I'd use the DocuSign API for signature workflows and a PDF library like WeasyPrint or Puppeteer for contract generation. I'm estimating 140-160 hours to reach production: roughly eight weeks at 20 hours a week, or two intensive weeks at full-time.

Day-by-day plan

Day 1: Set up the monorepo, auth schema with multi-tenant support, and the core database models for users, organizations, contracts, and intake responses.

Day 2: Wire Stripe billing across three tiers (freelancer, small agency, enterprise) with webhook handlers for subscription events and trial management.

Days 3-4: Build the intake form component in Next.js with form validation, conditional fields based on service category (design, development, copywriting, consulting), and basic error handling.

Days 5-6: Implement the clarification loop as a stateful conversation flow. This pulls missing fields from the intake, generates 3-5 follow-up questions, and updates the contract context before draft generation.

Days 7-8: Build the clause library as Postgres tables keyed by jurisdiction and service type. Seed initial data for a few high-volume categories (web development, copywriting, design) across three US states and a generic federal template.

Day 9: Implement the draft generation endpoint using Claude API to assemble clauses into a coherent contract. This includes testing edge cases like conflicting payment terms and missing IP ownership preferences.

Days 10-11: Build the review pass UI that diffs the generated contract against saved user defaults and flags deviations before delivery.

Days 12-13: Integrate DocuSign or HelloSign API for client signature workflows and implement archive logic (store signed PDFs in S3 with metadata for retrieval).

Days 14-15: Build the customer dashboard to list past contracts, search by client name, and trigger re-generation for template reuse.

Days 16-17: Add analytics endpoints to track trial-to-paid conversion, contract generation counts, and signature completion rates for the metrics that matter to GTM.

Days 18-19: End-to-end testing, performance profiling, and production deployment to Vercel (frontend) and Railway (backend).

What's hard about this build

The biggest technical risk is the clarification loop. It needs to recognize ambiguous user responses without looping infinitely or frustrating the user, which is a tight prompt-engineering problem with Claude. Second, clause library indexing is deceptively complex. You need to handle jurisdiction lookups (US state, Canadian province, international), service category fallbacks when exact matches don't exist, and version control on clauses as legal precedent shifts. Baking this into Postgres is fine, but you need a staging environment to test conflicting clauses before production. Third, the DocuSign integration has latency quirks: webhook delays, retry logic, and failure modes where signatures fail silently. Finally, and most critical, the legal liability angle requires bulletproof scope framing in your terms of service. You're not offering legal advice, you're offering a template generator.

What's fast because of AI

Claude compresses the boring work significantly. Scaffolding the FastAPI endpoints with proper validation and error handling takes maybe two hours manually, but Claude generates 80% of the boilerplate in thirty minutes, and I just clean up the edge cases. Writing comprehensive test coverage for the intake form's conditional logic would be a week of manual work; Claude enumerates the edge cases and writes pytest fixtures in a few hours, leaving me to run them and tweak. The clause library needs good copy describing each provision to the user. Writing legal-adjacent UI copy is tedious; Claude drafts contextual explanations for kill fee percentage or revision limit clauses in minutes, and I refine the tone. Debugging the clarification loop is where AI helps most. When the model generates ambiguous follow-ups, I feed Claude the transcript, ask it to enumerate where the user might misunderstand, and it spots the gaps in seconds.

How I'd hand it off

I'd leave you with a Loom walkthrough of the full intake-to-signature flow, a runbook covering auth setup, Stripe webhook configuration, and DocuSign credentials. The database schema is documented inline. I'd give you 30 days of on-call support via Slack, and we'd do weekly syncs for the first month to catch edge cases you find in real usage. You get API keys transferred to your own accounts, not shared ones, and a step-by-step handoff of the Linear board so you can see what we built and what's on the roadmap. Source code goes on GitHub with a private README for deployment steps.

Hire Caleb to build this for you.

Inkwell is available to own for $200 flat. Or pay $75/hr for a Roll Digital chief operator to build it for you, AI-amplified.

See pricing →