bna-code
v0.0.8
Published
The CLI AI agent that builds full-stack mobile apps.
Maintainers
Readme
BNA Code
The CLI AI agent that builds full-stack mobile apps from your terminal.
bna-code turns a natural-language description into a production-ready
mobile application — frontend, backend, database, authentication, API
layer, and a native iOS/Android build — in minutes, without leaving your
terminal.
Quick Start
npx bna-codeThat's it. The CLI walks you through authentication, project setup, stack selection, and your first build.
Installation
Install globally:
npm install -g bna-codeUsage
Authentication
npx bna-code login # browser-based OAuth; token stored in ~/.config/bna-code/
npx bna-code logout # clear saved credentials
npx bna-code credits # check remaining credit balanceBuild a new app
Run the CLI and follow the interactive prompts:
npx bna-codeYou'll be asked to pick a frontend, a backend, a project name, and describe the app you want to build.
Non-interactive build
Skip the prompts by passing flags:
bna-code init \
--name habit-tracker \
--frontend expo \
--backend convex \
--prompt "A habit tracker with streaks, reminders, and a leaderboard"bna-code and bna-code init are equivalent — use whichever reads more
naturally.
Flags
| Flag | Description |
| --------------------- | ----------------------------------------------------------------------- |
| -n, --name <name> | Project directory name |
| -p, --prompt <text> | Natural-language description of the app |
| -f, --frontend <fe> | expo |
| -b, --backend <be> | convex, supabase, or omit for no backend |
| --no-install | Skip the background npm install |
| --no-run | Skip launching the simulator after finalization (other steps still run) |
Resume a session
Re-run npx bna-code inside an existing generated project. The CLI detects
saved session state under .bna/ and continues the conversation where
you left off.
Requirements
- Node.js 20 or higher
- Xcode (for iOS builds) or Android Studio (for Android builds)
- A free BNA account for authentication and credits
- Stack-specific tooling:
- Expo + Convex — a free Convex account
- Expo + Supabase — the Supabase CLI
Supported Stacks
| Stack | Backend |
| --------------- | ----------------------------------------------- |
| expo-convex | Convex — database, realtime, auth, file storage |
| expo-supabase | Supabase — Postgres, auth, realtime, RLS |
| expo | None — local-only data via AsyncStorage / MMKV |
All three templates share the same Expo Router layout, component structure, and theming system.
Credits
bna-code runs on a credit-based pricing model. New accounts include a
free starter balance. Check your balance at any time:
npx bna-code creditsTop-ups and plans are available at BNA.
Support
- Website: BNA
- Report Issues: [email protected]
- Licensing inquiries: [email protected]
License
BNA Code — Proprietary License Copyright © 2026 Ahmed BNA ([email protected]). All rights reserved.
This package is licensed, not sold. Installing it from npm grants you a
personal, non-exclusive, non-transferable, revocable license to execute
the published bna-code binary for the purpose of generating
applications for your own use or for the use of your employer or client.
You may not copy, redistribute, modify, reverse engineer, or create derivative works of the Software; sublicense, sell, rent, or transfer it; use it (or any output, prompt, schema, or interface extracted from it) to develop or train a competing product, service, model, or dataset; or circumvent any authentication, metering, credit, or rate-limiting mechanism of the CLI or its backend services.
Templates emitted into your project directory at generation time are licensed for use in your generated application. The Software itself remains the exclusive property of the copyright holder.
The Software is provided "as is", without warranty of any kind. To the maximum extent permitted by law, the copyright holder disclaims all liability arising out of its use.
See LICENSE for the complete terms, including grant of use, restrictions, ownership, confidentiality, termination, warranty disclaimer, limitation of liability, and governing law.
For licensing inquiries, partnerships, or written permissions beyond the scope of this License, contact [email protected].
