Documentation · Updated 22 September 2026
Build internal tools, websites, portfolios and AI automations with Chromoly. Learn how to turn a prompt into a working app, connect your services and manage it over time. AI agents are planned for a future release.
Need help? hello@chromoly.io
Availability, 27 September 2026. Custom builds open on December 1, 2026. Our team scopes the build, integrations and ongoing service with you. Self-service opens in January 2027. These guides describe supported workflows; availability depends on your agreed scope and configured services. Anything marked in development is not complete.
Chromoly turns a plain-language description into a structured app blueprint, then compiles that blueprint into an app you can preview and edit. Custom builds open on December 1, 2026: book a discovery call. Self-service opens in January 2027. The development environment is private; the steps below apply when your account has access.
Email/password sign-in is the current starting point. Google and GitHub sign-in depend on production configuration; they are not prerequisites for building an app.
Explore the use-case guides: CRM, website, booking portal and portfolio. Each includes an example prompt and a practical review checklist.
Build apps that help your team manage its day-to-day work:
Build business websites, landing pages and portfolios with responsive layouts, project showcases and contact forms. Describe your audience, pages, visual direction and any owner-only content management. You can add a public AI advisor grounded in published content.
Add AI to repeatable tasks inside your apps:
Connect the services each automation needs and test the complete flow before enabling it.
Building AI agents in Chromoly is planned for a future release. It is not currently available as a native build option.
You can combine internal tools and AI automations in the same app. A booking portal does not automatically include invoicing or onboarding; describe the features you need.
Games, native mobile apps and consumer apps at scale are outside Chromoly’s intended scope.
The selected AI model plans the build and proposes edits. The compiler assembles the app from its structured definition. Shared components provide tables, forms, charts and business workspaces; the saved blueprint describes the data and behavior.
Generation includes structure and behavior checks. Larger apps can be split into saved phases. A completed build still needs your review with representative records and connected services before it is used for important work.
Describe who will use the app, the records it manages, the actions they need, and what should happen automatically. Include the language, reporting time zone and any design preferences. Ask for demonstration data explicitly if you want it.
Build an internal request tracker for our operations team. Let staff submit requests, assign an owner and track status and due dates. Show open requests by category and completed requests over time. Use AI to suggest a category, priority and reply for review. Use a clean, neutral design.
You can request a color by name or an exact hex value. English and Swedish app interfaces are supported. Supported attachments and import controls are shown in the builder and generated app.
Use the builder preview to check navigation, forms, charts and settings. Make changes from the builder controls and review the result before deploying. Open app gives you the app experience without the builder editing controls.
Use the deployment URL shown for your app. Preview is not a disposable data sandbox: actions can save real records or use configured services. Use synthetic records and test credentials for acceptance testing.
Availability: built, and not enabled on the platform yet. Email hello@chromoly.io before you plan around it. Production delivery also depends on your deployment setup and plan. Do not configure DNS from a guessed hostname, and contact support if your deployment screen does not provide the connection details.
Once it is released, the flow will work like this. Deploy the app, then open Deployment → Custom domain and enter a hostname such as example.com or app.example.com, without https:// or a path. Add the ownership TXT record shown in Chromoly at your DNS provider and choose Check connection, then add the DNS records the hosting provider returns: root domains use A records, and subdomains normally use CNAME records. Open the site when the connection says Connected. DNS propagation and certificate issuance take time, and checking again resumes the saved setup.
Connecting a domain will not purchase or transfer it, and disconnecting will remove the hosting connection, not your registration or DNS records. Only the app owner will be able to add, verify or disconnect a domain, and the included app address stays available either way. The flow covers one hostname at a time: www is connected separately, and redirects and wildcard domains are not included.
Describe the change in the builder, review the affected structure, and test the saved version. Version history and the dependency map help you understand what changed. A version restore does not automatically reverse data edits, sent messages or payments.
Open an app in the editor and choose Dependency map. Select a field, table, API, component, page, route, workflow, integration or role to see what depends on it. Search, filter by type, focus on a highlighted item, or use the relationship list when the graph is crowded. Viewing the map is read-only and uses no AI credits. A blueprint health panel lists deterministic findings with links to the node they concern.
Use Review changes before you apply an edit. The review compares the saved version with the actual generated candidate and lists additions, modifications, removals and dependent features. Nodes are marked Safe, Affected or Breaking, and removed items remain visible with their dependents. You can open the same pending candidate in the map, then apply or cancel it in either place. Applying saves a new version and refreshes the map and preview. A review expires when another version is saved, or after 30 minutes.
Safe, Affected and Breaking come from static dependency analysis, not from running your app. A field edit conservatively flags every consumer of its table, and dynamic table names, custom code and external services can have effects the map cannot see. Highlighting means review this dependent, not this is definitely broken. Test the saved version before you rely on it.
The editor History tab browses saved versions, compares them and restores one. A restore is guarded against a stale version, and it does not reverse data edits, sent messages or payments.
The blueprint, called AppSpec, describes your app’s pages, records, APIs and workflows. The compiler uses it to build the interface and supported behavior. Keep requested features clear so the definition stays focused on your business process.
Apps start with empty states unless you explicitly request demonstration data. Charts and statistics use saved records rather than invented totals. Add records with forms or use supported CSV imports, reviewing mappings and validation before saving.
Supported record tables can import text-based PDFs for reviewed extraction and export loaded, filtered rows as a PDF report. Scanned PDFs require OCR, which is not included in this flow. A table PDF is not a full dashboard or chart export. Review AI-extracted values before creating records.
Reporting apps benefit from category charts and an over-time chart. Supported visuals include bar, line and pie charts. They use real data; a pie chart needs a positive total, and a trend needs a real date field or saved snapshots.
Rolling monthly charts advance automatically in the app’s reporting time zone. You do not need to prompt in a new month. Older fixed reports may need a one-time change to connect their date field. An empty month can appear as zero without creating records or inventing historical activity.
Set your account time zone in Profile and the app’s reporting time zone in its Settings. These are separate preferences. Booking availability uses the booking workspace’s time zone.
App owners can add a name and logo, choose a theme and adjust the app’s appearance. The logo is reused on supported customer booking pages and as the favicon in standalone app views. Embedded previews keep the platform’s tab icon.
App default follows the generated design, including its background treatments and restrained section colors. Light and Dark provide alternative appearances. Owners save the shared theme; supported customer pages can have a separate owner-selected theme. Visitors do not choose the public page’s theme.
Automatic designs include muted colors and neutral palettes. Explicit color requests take priority. Already exported sites need redeployment to receive updated branding.
Start with services, descriptions, durations, prices, working hours and a booking time zone. Review the customer page, then enable public booking when ready. The owner workspace includes month/week calendar views, while customers use the booking page and their private management link.
Configure which booking events should notify the owner by email or Slack. Customer emails require a verified sending setup. Owners provide their own one-time, fixed-price Stripe Payment Links for services.
A successful browser return does not mark a booking paid. The app requires a verified Stripe event with matching booking, amount, currency and mode. Refunds, disputes and tax decisions remain in your Stripe account. Cancelling a booking does not automatically refund a payment.
Supported workflows connect app events, rules, schedules and reviewed actions. Configure destinations and credentials before enabling delivery. Email and Slack notifications depend on the connected account, permissions and selected event settings.
Review run history when a workflow fails. Missing credentials, revoked access, limits or provider errors can stop a step. A delivery attempt is not proof that a person received or read a message. Use explicit test actions with destinations you control.
Global planning: A frontier OpenAI model is the default, with a Claude model as an alternative. Global in-app AI: a faster Claude model is the configured runtime model. Calls use direct OpenAI, Anthropic and Mistral integrations; OpenRouter routing has been removed.
EU processing: the Mistral route uses separate reviewed planning and runtime models. It is available only when the account, regional and privacy requirements are satisfied. An unavailable EU route stops instead of silently switching to Global.
The model selector and processing details show the choices available in your environment. New releases appear after review. An app without an executable AI feature does not show in-app AI settings just because AI was used to plan it.
All shared-gateway AI requests have audit events, including planning, runtime calls, moderation and retries. The audit records model, provider, timing, outcome and available usage information. It does not store prompts, responses or private reasoning. App-level AI audit is shown when the app contains AI; account-level history covers builder activity.
Built-in AI can use saved records across the app, calculated chart and metric values, and relevant text from saved PDFs. Suggested question cards appear only when their chart or metric data is available. Large record sets use complete calculated totals with selected detail excerpts; document answers use relevant page excerpts. This does not fetch unsaved browser changes, external services or scanned documents automatically.
Use AI for drafts and proposals that people can review. AI can make mistakes. Untrusted records and uploaded content must not be treated as permission to send messages, reveal secrets or perform unrelated actions.
Coming soon — not available yet. BYOK is planned as an optional feature on all paid plans: Starter, Builder, Pro and Custom (including Managed and Enterprise agreements). The free preview trial will use Chromoly credits for AI. Paid customers can choose BYOK or Chromoly-funded in-app AI. BYOK lets you connect your own supported AI provider account for AI advisors and AI steps inside generated apps.
Supported providers, setup instructions and any separate platform usage rates will be published before rollout. Managed and Enterprise customers can include configuration assistance in their agreed scope.
Use the integration and business settings exposed by your app. Email, Slack, webhooks and booking payment confirmation each need their own setup. A provider name in an example does not mean a ready-made connector exists for it.
Keep secrets in the provided credential fields, never in prompts or customer-visible content. Verify a connection using its test controls and check the receiving service before enabling recurring work. See integration guides for connection patterns.
Availability: deployed and verified on our development environment; public rollout is pending. MCP connections are for Global-mode apps only. Contact hello@chromoly.io to check availability before depending on an external client. EU-mode apps cannot enable MCP.
MCP (Model Context Protocol) lets a compatible external AI client use selected parts of your app. You choose its permissions in App settings → AI client connections (MCP). The connection belongs to one app, and no access is selected by default.
Connection expiry options are 7, 30 or 90 days. OAuth uses short-lived access tokens and rotating refresh tokens within that connection’s lifetime. A new app version requires a new connection and a fresh permission review. Never put tokens in prompts or support messages.
Record changes, app actions and workflow controls require owner approval in Chromoly. The external client cannot approve its own requests. Review the exact input before approving or rejecting it. Direct record edits do not execute business actions or their hooks; use a supported app action for a business operation.
Use Disconnect all AI clients or revoke a single connection to block future access and reject pending requests. This does not stop already approved workflows; cancel eligible runs separately. An external action already in flight cannot be recalled. Safe retry is available only for confirmed eligible failures; uncertain outcomes require review.
Connection activity records access and approval events. Workflow history shows run progress separately. External clients process shared data under their own provider’s terms; they do not inherit Chromoly’s in-app AI provider or EU processing controls. MCP does not expose blueprint editing or unrestricted autonomous access. Chromoly does not offer a public REST API.
BYOK for in-app AI is planned for all paid plans: Starter, Builder, Pro and Custom; it is not available during the free preview trial. Rollout is pending.
Planned launch allowances, subject to capacity validation before self-service opens. Starter includes 1 published app, 10 internal users and 1,500 monthly credits. Builder includes 3 published apps, 100 internal users and 2,500 monthly credits. Pro includes 10 published apps, 500 internal users and 6,000 monthly credits. These are account-wide allowances, not allowances per app.
Contact us about a Custom plan. These planned allowances do not change existing customer agreements or activate new runtime limits.
Custom builds open on December 1, 2026 through our Custom offer, which includes Managed services. Self-service opens in January 2027 with a free preview trial and Starter, Builder and Pro plans. The free preview trial includes 500 one-time credits to build and test an app without publishing. Starter (€99/month, 1,500 monthly credits, 1 published app and 10 internal users) is for launching your first system. Builder (€249/month, 2,500 monthly credits, 3 published apps and 100 internal users across the account) is for running several systems. Pro (€699/month, 6,000 monthly credits, 10 published apps and 500 internal users across the account) includes Builder features with more monthly credits and priority email support, for teams running multiple systems. These are self-service plans; personal implementation and ongoing development are quoted under Managed. Custom domains are planned for all paid plans, with setup included in the agreed Managed scope; platform rollout is pending and domain registration is separate. See custom domain availability. Custom pricing and capacity are agreed following a discovery call. Managed builds and ongoing maintenance are available within this offer. Book a discovery call. We map your workflow, build your system to an agreed scope and maintain it. The initial build and ongoing service are quoted separately; your proposal defines the credits, revision rounds and acceptance criteria. Managed includes priority direct support with an initial response within one business day, and direct feature and integration requests. Larger changes and integrations are scoped and quoted separately. Review the current offer or contact hello@chromoly.io about a custom plan.
Planned extra credit packs for paid plans, excluding VAT, are 5,000 for €179, 10,000 for €349 and 50,000 for €1,699. These are one-time top-ups; purchased credits carry over and monthly credits are used first. Packs can be purchased again when needed once checkout is available. Contact hello@chromoly.io if you need more than 50,000 credits. Credit-pack checkout is not available yet. Purchasing depends on the production billing configuration. Your account’s plan, credit balance and checkout terms determine its actual allowance. Do not infer an unlimited build allowance or a fixed number of builds from a credit balance; model choice and build size affect usage. Automatic credit top-ups are not currently available.
Chromoly uses Supabase in Ireland for its application database. Database location is separate from AI processing location. Global AI requests may be processed outside the EU and use the relevant provider’s commercial retention terms.
The EU AI route requires regional controls, applicable processing terms, training restrictions and zero-data-retention coverage for supported stateless requests before activation. ZDR approval alone does not establish where all processing occurs. Custom integrations have their own data flows.
Access controls, audit history and privacy settings support responsible operation. The correct legal basis, customer notices, retention choices and configuration still depend on your use case. Review the Privacy Policy, DPA and subprocessor list before sending personal data.
Use the record export controls available in your app. Contact support about blueprint exports, account deletion or migration requirements. A saved version and an exported record set serve different purposes; confirm what you need before deleting data or cancelling a service.
Email hello@chromoly.io for setup help, build problems, billing questions and privacy requests.
For a build problem, include the app name or build reference, what you expected, what happened, and the approximate time with your time zone. A screenshot without private customer data helps. Never email passwords, API keys or payment secrets.
For larger deployments, integration requirements or a support agreement, contact us before rollout. Do not assume an uptime or response-time SLA unless it is included in your agreement.
Generated app interfaces support English and Swedish. State the desired language in your prompt. Language does not determine the reporting time zone or automatically convert currencies; specify those separately.
Larger structured apps are generated in saved phases so completed work can be reused. Builds can queue, pause for provider limits or stop when validation fails. Follow the displayed recovery guidance and keep the build reference when contacting support.
There is no promise that every app size or prompt will succeed. Hosting limits, model capacity and end-to-end workload tests determine real capacity. Discuss a large rollout with us before relying on it.