Inspiration
A person can be arrested without a phone, wallet, remembered numbers, or anyone available to help. MyBondNow began with that hardest case: the person has their own resources but no reliable way to begin the bond process from jail. Traditional advice assumes a parent, sibling, friend, phone, or wallet is available. For many people, none of those assumptions is true.
MyBondNow asks what can be prepared before an arrest so a licensed bondsman can identify the customer, confirm a narrowly defined authorization, and coordinate the next verified handoff. Family and friends remain optional backup support, not a requirement for the customer's freedom plan.
What it does
MyBondNow provides three focused experiences:
- Customer: A new user creates a profile, prepares contact and identity information, chooses a memorable bondsman call-in phrase, adds the front and back of a demonstration driver's license, and completes Form A. Existing users sign in to continue their own profile and see completed or missing preparation steps.
- Bondsman: A bondsman signs in or creates a professional profile using agency and licensing information. The approved-agent workflow matches the customer's call-in code with identity details, protects the request with a temporary claim, and records the jail and official bond amount before continuing to payment and posting controls.
- Family or friend: Linked access is available only through an enrolled customer's invitation. The view is limited to alerts, status, the assigned bondsman's contact information, and an approved backup-payment request. It excludes identity documents, Social Security information, Form A, payment credentials, private codes, and authorization controls.
The homepage explains the process in three steps and provides separate login paths for all three roles. Fireball, a bounded GPT-5.6 Sol guide, stays available throughout the experience. Its live action asks what the participant should do next. The browser sends minimized workflow milestones to a private endpoint, which calls the OpenAI Responses API and returns structured next-step guidance. Fireball cannot submit forms, expose sensitive profile fields, recommend providers, give legal advice, predict release, authorize payment, or make a bondsman decision.
All identities, documents, agencies, authorizations, payment references, jail records, and outcomes in this contest build are demonstration data. No real identity verification, notarization, payment, bail posting, jail integration, or release occurs.
How we built it
Codex and GPT-5.6 were the primary engineering partners. They helped turn an extended product-design conversation into a working multi-role experience, formalize state transitions and responsibility boundaries, preserve accepted versions, implement Fireball's direct API boundary, and create repeatable tests for successful and blocked workflow states.
The application uses semantic HTML, responsive CSS, browser JavaScript modules, and local browser storage for demonstration state. A server-only endpoint keeps the OpenAI API key out of the browser and calls GPT-5.6 Sol through the Responses API with a strict structured-output contract. The production build generates a SHA-256 allowlist for its assets, adds Subresource Integrity to primary files, and verifies content before serving it.
The release gate runs syntax checks, 40 product and user-flow tests, a fresh production build, integrity verification for every built asset, and server tamper-protection tests. Every accepted adjustment begins from the latest validated checkpoint and creates a new recovery checkpoint only after the complete gate passes.
Challenges
The hardest challenge was protecting the original purpose while making the experience understandable to three participants. The customer must remain able to prepare without depending on family. The family role must help without exposing or controlling the customer's sensitive plan. The bondsman must control official jail and bond information. Fireball must explain the process without pretending to replace licensed, financial, notarial, court, or legal decision-makers.
The second challenge was preventing iterative design work from overwriting approved features. We added validation gates and dated checkpoints so every change is tested against the latest accepted version instead of an older copy.
Accomplishments
- A coherent three-role customer, bondsman, and family experience
- Separate sign-in and account-creation paths for every role
- Customer setup with a call-in phrase, memory reminder, driver's-license files, and Form A
- Bondsman setup with agency and licensing fields
- Invitation-based family access with explicit information restrictions
- Customer lookup, temporary agency claim, official jail/amount controls, and downstream posting workflow
- Bounded GPT-5.6 Sol guidance through the direct OpenAI Responses API
- Secret isolation, minimized AI inputs, strict output validation, and graceful no-key behavior
- Forty automated product and workflow checks
- Deterministic builds, SHA-256 integrity controls, and recoverable release checkpoints
What we learned
The strongest version of MyBondNow is not an emergency-contact app. It is a preparedness and coordination platform centered on the person who may have nobody else. Trust comes from making each participant's authority and limits visible and from separating the working contest experience from future integrations that still require licensed partners, processors, banks, identity providers, notaries, courts, and professional review.
What's next
The next milestone is a one-jurisdiction validation program with a licensed bail agency, payments and bail-industry counsel, an identity/notary provider, and a processor or acquiring bank willing to evaluate capped stored-credential authorization. Production also requires authenticated storage, encryption, retention controls, incident response, merchant onboarding, dispute handling, and written approval of the operating model.
Judge accounts
- Customer 1:
user1/password - Customer 2:
user2/password - Bondsman:
bondsman/password - Family:
family/password
Use Reset experience to restore the original demonstration state.
Built With
- cloudflare-workers
- codex
- css
- gpt-5.6
- html
- javascript
- node.js
- openai-responses-api
- sha-256