Turn ideas into working mobile and web apps.

Build with AI, real code and a connected backend. Refine visually, through conversation or in code, then deploy and keep shipping.

Build forFlutterReact NativeWeb

Describe what you want to build

01/ 10 · KoolPOS · Point of sale
09:414G

KoolPOS

Point of sale

Terminal
Osu · POS 04
Online
Preparing your workspace
Products & pricingSyncing…
Inventory
Customer records
Recent transactions
Loading products…24%
Running in production today.·Start with the Designer →
The platform

Everything from idea to launch,
and everything after.

Seven parts of one platform, built to work together.

01

Describe it

Tell Koolbase what you are building. It works out the screens, the data and the logic.

Build a point of sale for my shop, with staff sign-in, stock, and mobile money payments.

ScreensDatabaseLogic
02

See it working

Real, clickable apps, not mock-ups. Tap through screens, fill in forms, see live data.

09:414G
O
Osu branch
Ama Mensah · Cashier #1
Today's takings↑ +18.4%
GH₵4,778.50
08:0012:00NOW (41 sales)
+
Sell
₵
Payout
▤
Stock
Live receipts41 today
MTN
Kofi Owusu
Club Beer × 6
GH₵ 114.00
Settled
VISA
Abena Yeboah
Jollof Pack × 2 · 8m ago
GH₵ 90.00
Settled
CASH
Walk-in
Sobolo × 1 · 14m ago
GH₵ 15.00
Settled
MTN
Yaw Boakye
Rice 5kg · 22m ago
GH₵ 145.00
Settled
Register
Products
Reports
Setup
09:414G
Search products
All 38DrinksStaplesSnacks
×2
RA
Royal Aroma
GH₵ 145.00
×1
SC
Sobolo 1L
GH₵ 15.00
CB
Club Beer
GH₵ 19.00
GT
Gino Mix
GH₵ 8.50
MK
Milo 400g
GH₵ 42.00
VO
Voltic 1.5L
GH₵ 6.00
3Review cart
GH₵ 305.00 →
03

One source of truth

Screens, data, logic and code stay in sync, whether you change them by chat, visually or in code.

UIsynced
Data
Logic
Code
04

Real code you own

Inspect, edit and export idiomatic Flutter, React Native or web code. No lock-in.

FlutterReact NativeWeb
1class OrdersScreen extends StatelessWidget {
2 @override
3 Widget build(BuildContext context) {
4 final orders = context.watch<Orders>();
5 return OrderList(items: orders.today);
6 }
7}
05

Backend included

Auth, database, storage, realtime, functions and payments, ready on day one. Also available on its own.

Authentication
Database
Storage
Realtime
Functions
Payments
06

Test before you ship

Run the app, simulate real journeys, and check it is ready for production.

09:414G

Sign in

Ama's Provisions · Osu · POS 04

+23324 491 8021
1
2
3
4
5
6
7
8
9
0
⌫
Sign in
Terminal registered to this device
Test run
Sign-in flow
Data sync
Edge cases
Performance
07

Ship and keep shipping

Deploy, roll out features gradually and push fixes after launch, including over-the-air code push for Flutter.

Build
Deploy
Code push0%
Update ready
A fix is ready to apply
Restart
Code push · Flutter

Ship the fix today. Not after store review.

One command, and the app on your users' phones updates itself. No rebuild. No review queue.

orders_screen.dart
42@override
43Widget build(BuildContext context) {
44 return Column(
45 crossAxisAlignment: CrossAxisAlignment.start,
46 children: [
47 // summary row
48 Text('Order total', style: theme.caption),
49 PriceLine(total: order.total),
50 ],
51 );
52}
$
signed · ed25519 · ✓ applied before first frame
$
signed · ed25519 · ✓ applied before first frame
no rebuild · no store review
9:41
Orders
3 open
Sarah Mitchell$ 240.00
Order total
James Whitfield$ 85.50
Order total
Emily Carter$ 1,120.00
Order total
Updated in place
iOS · 1.4.2

AI Assistant

Change your backend by asking. Approve it before it happens.

Every project ships with an assistant that works on your actual infrastructure — flags, remote config, environments, even recalling a live code-push patch. It reads real state to answer, and it never changes anything without showing you the diff first.

why aren't new users seeing the referral banner?

The referral_banner flag is off in production.

environmentenabledrollout
developmenttrue100%
stagingtrue100%
productionfalse0%

turn it on for 10% of production

Review changefeature_flags · production
referral_banner
enabledfalse→true
rollout0%→10%
ConfirmCancelNothing changes until you confirm

Included on every plan — 15 messages a day on Free, 200 on Pro.

Read how it works

SDKs

Flutter, React Native and the web.

One dependency for your whole backend, published on pub.dev and npm. VM-level code push and fiscalization are Flutter-only; everything else ships on all three.

koolbase_flutter
89 releases · pub.dev
v12.33.0
v1.8.0Offline-first, with instant writes
v9.1.0VM-level code push, real Dart over the air
v11.2.0Fiscal: certified sales for Ghana GRA E-VAT
v12.0.0Flutter Web: the full backend in the browser
pubspec.yaml
dependencies:
koolbase_flutter: ^12.33.0
@koolbase/react-native
15 releases · npm
v12.23.0
v1.0.0Auth, database, storage, realtime, functions, flags
v1.1.0Offline-first, with instant writes
v8.0.0Search by meaning and by keyword
v12.0.0Account settings, sessions and aggregate queries

Code push is Flutter-only — it patches the Dart VM, which has no React Native equivalent.

terminal
$ npm install @koolbase/react-native
@koolbase/js
12 releases · npm
v12.23.0
v10.0.0The same core as React Native, built for the browser
v10.0.1Works with server rendering
v10.2.0Open tabs share one offline queue
v12.0.0Account settings, sessions and aggregate queries

TypeScript, ESM and CommonJS, 16 kB gzipped — offline queue and conflict resolution included.

terminal
$ npm install @koolbase/js

More platforms in development

Swift (iOS)Soon
Kotlin (Android)Soon

Agent-Native

The backend your AI agent already knows how to build against.

Koolbase exposes your backend over MCP, so the coding agent you already work in reads your real collections, access rules, and SDK surface instead of guessing at them. The server ships inside the Koolbase CLI — one entry in your agent's config and your backend is in the room.

It knows your schema

Your collections, storage buckets, deployed functions, and environments — read from the project itself. Generated code uses the names that exist, not names that sound plausible.

It respects your access rules

Rules arrive as data, not advice. An agent handed scoped(user_id → caller.id) writes the filter; an agent handed a paragraph forgets it. Secrets and function source never leave your project.

It knows the SDK's idioms

The query pattern, the offline write path, the conflict surface — for Flutter, React Native and the browser, each with its own real call shapes. No invented methods, no hallucinated parameters.

The same prompt — “list the signed-in user’s conversation members” — without and with Koolbase connected:

without MCPinvented
// guessed client, guessed method
final records = await client
    .collection('conversation_members')
    .list();

// no idea the read rule is scoped,
// so no filter — returns nothing
// and nobody knows why
with Koolbase MCPwriting

Real collection. Real access rule, honoured. Real SDK surface — including the widgets that handle cache-then-refresh and the signed-out state for you.

Works with any MCP-capable agent — Claude Code, Claude Desktop, Cursor.

Connect your agent →

Pricing

One platform. One bill. Code push included.

Build your whole app on the free tier — it never pauses. Pay when your app becomes a business.

Free projects never pause. Not after a week, not ever.

Koolbase runs on shared multi-tenant infrastructure, so an idle project costs us almost nothing to keep awake. Platforms that give every project its own instance burn compute whether you're using it or not — which is why they have to put yours to sleep.

Free

Build and launch a real app, the whole platform, no card.

$0/mo
  • 10,000 monthly active users
  • 2 projects that never pause
  • Auth, Database, Storage, Realtime
  • Designer — no screen limit
  • Run — the real app in the frame, 20 runs a day
  • 250 functions (100k invocations/mo)
  • 3 environments (dev · staging · prod)
  • 1 GB storage
  • 20 feature flags · 20 remote configs
  • AI Assistant — 15 messages/day
  • Code Push — 5,000 patch installs/mo
  • Fiscalization — 1,000 certified transactions/mo
  • Community support
Get Started
Most Popular

Pro

For apps in production. Everything in Free, with room to grow.

$25/mo

Need more than the included amounts? Additional usage is available on request — we scale limits with you.

Spend caps on by default — no surprise invoices.

  • 100,000 monthly active users
  • Unlimited projects
  • Designer — no screen limit
  • Run — the real app in the frame, 20 runs a day
  • 100 GB storage
  • Functions (2M invocations/mo)
  • 10 environments
  • Unlimited flags, configs & secrets
  • AI Assistant — 200 messages/day
  • Code Push — 50,000 patch installs/mo
  • Fiscalization — 25,000 certified transactions/mo
  • 5 team members
  • Usage-based scaling beyond limits
  • Email support
Start building

Enterprise

For large-scale production infrastructure.

Custom
  • Custom MAU & usage limits
  • All Pro features
  • Fully dedicated infrastructure
  • Unlimited environments
  • SSO / SAML authentication
  • Role-based access control
  • SLA guarantee
  • Dedicated support engineer
Contact Sales

No credit card required. Upgrade only when your app grows.

FeatureFree
Pro
Enterprise
Core backend
Monthly Active Users10,000
100,000 included · more on request
Custom
Projects2 — never paused
Unlimited
Unlimited
Environments3
10
Unlimited
Authentication
DatabaseShared
Shared
Dedicated
Storage1 GB
100 GB included · more on request
Custom
Realtime connections200
500 included · more on request
Custom
Function invocations100k/mo
2M/mo
Custom
Functions250
Unlimited
Unlimited
Function secrets10
Unlimited
Unlimited
Design & AI
DesignerNo screen limit
No screen limit
Custom
AI Assistant15 messages/day
200 messages/day
Custom
Semantic Search (BYOK)
Shipping & control
Code Push (patch installs)5,000/mo
50,000/mo included · more on request
Custom
Over-the-air bundles
Feature flags20
Unlimited
Unlimited
Remote config20
Unlimited
Unlimited
Version enforcement
Analytics
Cloud Messaging
Fiscalization (certified transactions)1,000/mo
25,000/mo included · more on request
Custom
Team & support
Team members1
5, then per-seat
Unlimited
SSO / SAML—
—
Role-based access control—
—
SupportCommunity
Email
Dedicated engineer

Designer has no screen limit on any plan. Generations draw on the same daily AI allowance as the Assistant — 15 a day on Free, 200 on Pro.

Free and Pro run on shared database and bandwidth. We'll contact you before taking any action if your usage is significantly above normal — no throttling without a conversation.

Security & Trust

Built for teams that ask hard questions.

Your data is encrypted, backed up, and hosted in the EU. See exactly how we protect it — the same answers your security team needs before signing off.

View security overview
EU-hostedGDPR-alignedEncrypted in transit & at restEncrypted off-site backups

FAQ

Frequently Asked Questions

Everything you need to know before building with Koolbase.

Getting started

Which platforms does Koolbase support?
Three published SDKs — Flutter, React Native and the browser — over one backend: auth, database, semantic search, storage, realtime, functions, feature flags, remote config, analytics, and an offline write queue with conflict resolution on all three. Two things are Flutter-only, because they patch the Dart VM and have no equivalent elsewhere: code push and server-driven UI. Push notifications need a native module, so the browser uses Web Push. Swift and Kotlin are in development.
What do I get that I would otherwise build myself?
One backend under every client you ship — the same users, the same access rules, the same data, whether the request comes from a browser or a phone. An offline write queue with cached reads and explicit conflict resolution, in the SDK rather than in your code. Semantic and keyword search over your own records without running a vector database. On Flutter, a fix shipped to installed apps without a store review. And fiscalization: if you sell where invoices are certified, Koolbase records the sale, gets it certified by the tax authority, and puts the signature and QR on your receipt.
Do I have to change how I build my app?
You add the SDK and build through the Koolbase CLI instead of calling flutter build directly. The CLI runs the same build with the flags code push needs and registers the resulting binary as a release, so patches can be pinned to it later. Everything else about your project stays as it is.

Code push

What is Code Push?
A Flutter feature, in two tiers. Over-the-air bundles push config overrides, flag overrides, screen layouts and assets — versioned, signed, activated on the next cold launch. VM patches push fixes to your actual compiled Dart code on iOS and Android: signed with your own Ed25519 key, pinned to the exact binary they were built against, and applied before the app draws its first frame. Ship a real bug fix without waiting for store review. Neither exists for React Native or the browser: there is no Dart VM to patch, and the web already ships on deploy.
Is iOS code push allowed by Apple?
Yes, by construction. Apple permits downloaded interpreted code but not downloaded compiled code — so Koolbase delivers iOS patches as signed bytecode executed by the engine’s interpreter, never as downloaded machine code. App Store policy also narrows what you should ship this way: bug fixes that don’t change your app’s primary purpose, not feature delivery around review. The same policy space Shorebird and Expo Updates operate in.
What happens if a patch is bad?
Recall it. A recalled patch stops being served immediately, and devices fall back to the code compiled into the store build — the original binary is never modified, so there is always something correct to fall back to. Patches can also be rolled out to a percentage of devices first, so a mistake reaches a slice of your users rather than all of them.
Can a patch land on the wrong version of my app?
No. Every build gets a build ID derived from a hash of its compiled code, and every patch carries the ID of the binary it was built against. A device only applies a patch whose ID matches the binary it is running. A patch built for 1.4.2 is inert on 1.4.1 — it is not applied and then reverted, it is never applied at all.

Designer

What is Koolbase Designer?
Describe a screen in plain language and Designer produces a Flutter interface for it — then wires that interface to collections in your project, so the list you just designed reads real records instead of placeholder data. It is the same platform on both sides, which is the point: designing a screen and having a backend for it are one act rather than two.
Does Designer produce real Flutter code?
Yes — Dart you can open in your editor, not an export from a proprietary format and not a runtime that renders someone else’s widget tree. You own the output and you can keep editing it by hand afterwards.
What does Designer cost?
Nothing extra. There is no screen limit on Free or Pro — Designer generations draw on the same daily AI allowance as the Assistant, which is 15 a day on Free and 200 on Pro.

Backend

What is Semantic Search?
Declare a vector field on any collection (via dashboard or CLI) and Koolbase auto-embeds every record on insert and update — using your Gemini or OpenAI API key, which stays server-side. Then call searchSemantic with plain queryText and Koolbase embeds the query and returns ranked hits. HNSW indexing across 384, 768, 1024, and 1536 dimensions keeps lookups sub-millisecond. Failed embeddings land in a per-project Dead Letter Queue with one-click replay.
What are database access rules?
Each collection has three configurable rules — read, write, and delete. Rules can be set to public (anyone), authenticated (must have a valid session token), or owner (only the record creator). These are enforced server-side on every request.
What is the Functions runtime?
Functions run on Deno in an isolated subprocess, with full TypeScript support, access to ctx.db for database operations, and Deno.env.get() for encrypted secrets. You can also deploy Dart functions on the Dart runtime. Timeouts are configurable at 5s, 10s, or 30s. Max function size is 1MB.
What happens when a function fails?
Failed trigger executions are automatically retried up to 5 times with exponential backoff (1, 2, 4, 8, 16 minutes). If all retries fail, the event moves to the Dead Letter Queue. From the dashboard you can inspect the error, fix your function, and replay the event with one click.
How are secrets stored?
Secrets are encrypted with AES-256-GCM using a server-side key before being written to the database. Secret values are never returned by the API — only names are exposed. At function execution time, secrets are decrypted in memory and injected as environment variables.
What is version enforcement?
Version enforcement lets you set a minimum required app version per environment. If a user is below the minimum, the SDK returns a force_update flag along with a configurable message and store URL. Use it to block legacy versions after a breaking API change or a critical security patch.
What is fiscalization, and do I need it?
A growing number of countries require every sales invoice to be reported to the tax authority in real time, with the authority’s signature and QR code printed on the receipt. If you build a point-of-sale or invoicing app in one of them, you need it. Koolbase gives every transaction a gapless fiscal number, seals it as an immutable record, delivers it to the authority, and returns the certification your receipt must carry. Ghana (GRA E-VAT) is live; the same engine runs the full record-keeping machine anywhere an authority integration doesn’t exist yet. Merchants get their credentials from their own tax authority — Koolbase never sits between a taxpayer and their regulator.

Plans

Is there a free tier?
Yes, and it is a real one: 10,000 monthly active users, 2 projects, 3 environments, 1 GB storage, 100k function invocations a month, 20 feature flags, 20 remote configs, 5,000 code push patch installs, and Designer with no screen limit. No credit card required.
Will my free project be paused if I stop using it?
No. Koolbase runs on shared multi-tenant infrastructure, so an idle project costs almost nothing to keep awake. Platforms that give every project a dedicated instance burn compute whether you are using it or not, which is why they have to put yours to sleep. We do not, so we do not.

Turn your idea into a working app.

One platform for mobile and web, from the first screen to the fix that reaches phones already in the field.

Free to start. No credit card. Free projects never pause.