acornix
Vibe code app builder
Vibe code apps and games on your phone. Create apps from your voice, text or a photo.
⚡ Shortcuts for Android, like iPhone Shortcuts: tell your phone what to do and it does it with one tap, at a time of day or when your car connects. See how
Vibe coding in your pocket. Describe an app, a game or a tool, and watch the AI write it live. Seconds later it runs full screen on your phone, saves its own data and can sit on your home screen like any other app. Or just ask the assistant to do things for you.
Vibe Code apk download
https://github.com/user-attachments/assets/d9b09e3d-3a41-4094-82b8-69c64a8655c1
What is Acornix?
Acornix is a free AI app builder for Android and a no-code app creator: an AI app generator that turns a sentence, your voice or a photo into a working app or game, right on your phone. You bring an API key from your favourite AI (Claude, GPT, Gemini or any OpenAI-compatible model), and Acornix does the rest:
- Brings Shortcuts to Android (Atajos para Android): automations like iPhone Shortcuts, made by describing them or step by step without any AI. More below.
- Creates apps and games from a sentence, your voice or a photo, and lets you keep improving them by asking. Out of ideas? The AI suggests original ones.
- Lets you show them off with a share card: your app, its name and how many seconds it took.
- Runs them like real apps: full screen, offline, on your home screen, each with its own private database.
- Acts as an assistant that can open apps, search YouTube, set alarms, blink the flashlight in Morse, read and change your apps' data and, if you allow it, tap and type inside other apps for you.
- Turns your phone or tablet into a desktop with AcornixOS: windows, a Dock and a Launchpad, like a little Mac in your pocket.
No terminal, no server, no account. Everything you create lives on your phone.
Acornix started as a Python tool for Termux. Version 2.0 is a full native Android app that does everything the old one did and much more. Looking for the Termux version?
⚡ Shortcuts for Android (Atajos para Android)
Android finally has its own Shortcuts app. Acornix Shortcuts are like iPhone Shortcuts for Android: as simple as Apple's, as powerful as Tasker, and as easy as telling your phone what you want. Tap a shortcut and your phone does several things in a row: turns on Do not disturb, sets the volume, opens Google Maps, flashes the flashlight, reads you the weather, sends a WhatsApp…
- Three ways to make one. Describe it — "bedtime mode: silent, low brightness and an alarm at 7" — and your AI builds it as steps you can edit. Or build it step by step without any AI, picking actions from a list, like in iPhone Shortcuts. Or download one from the community.
- Real logic. Ask for a value, choose from a menu, keep answers in variables (
{answer},{time},{location},{battery}…), If / Otherwise, Repeat, calculate, and get data from the web (JSON APIs like Open-Meteo) to say it, show it or send it. - Actions: alarms and timers, volume, silent and Do not disturb, brightness, Bluetooth, music controls, flashlight and strobe, vibration, voice, notifications, WhatsApp (it can send the message by itself), SMS and calls (pick a contact), open any app (pick it from a list), Google Maps navigation, YouTube search, web pages in the app you choose, copy and share.
- Automations that run on their own: at a time of day, when your car's Bluetooth connects, when you plug in the charger, when the battery runs low, when you join or leave a wifi, or when you touch an NFC sticker.
- Run them from anywhere: the Shortcuts tab, their own home screen icon, a long-press on the Acornix icon, the Acornix widget, a Quick Settings button, or Share with a shortcut from any app.
- A built-in tutorial: tap the big ? for a step-by-step guide with examples you can open in the editor.
- Once made, shortcuts work without an AI key. Free and open source.
Shortcuts included
Acornix comes with eight example shortcuts that show what's possible. Open any of them to see its steps and change them:
| Shortcut | What it does |
|---|---|
| 🌙 Night mode | Lowest brightness, volume at 80 %, Do not disturb, and it tells you the time. |
| 🎶 Synthwave lights | Plays synthwave music on YouTube while the flashlight flashes. |
| 🔋 Low battery alert | If the battery is low it warns you out loud, with a notification, and dims the screen. |
| ⏰ Light alarm | The alarm rings at the time you choose, the flashlight flashes and it says good morning. |
| 🚗 Driving | Turns Bluetooth on, opens Google Maps to your destination, volume up and Do not disturb. |
| ☀️ Good morning | The date, the weather in your city and your battery, out loud, and Do not disturb off. |
| 📈 Markets | The price of bitcoin, Nvidia, Apple, Google and Amazon, live from the internet. |
| 🎬 Acornix videos | Opens Acornix's Shorts on YouTube. |
The tutorial has more (cinema mode, "I'm running late", tip calculator, focus timer, SOS with your location, kitchen timer…), and the ⚡ Shortcuts filter in Community apps has shortcuts made by other people.
Questions about shortcuts on Android
Is there an iPhone Shortcuts app for Android? Android doesn't come with one, and that's the gap Acornix fills: a Shortcuts tab with actions, variables, If / Otherwise, Repeat, automations and home screen icons, like Shortcuts on iPhone.
How do I create a shortcut on Android? Open the Shortcuts tab, tap New shortcut and either describe it in a sentence or add steps one by one. Tap Save and try to test it, then put it on your home screen, in Quick Settings or on an NFC sticker.
Is it a Tasker or MacroDroid alternative? Yes. If you found Tasker hard to learn, Acornix lets you describe the automation in your own words and gives you the steps already made, which you can still edit by hand. Triggers cover time of day, Bluetooth, charger, battery, wifi and NFC.
Do I need an AI key? Only to create shortcuts by describing them. Building them step by step, running them and the automations all work without an AI key and without an account.
Can it run automations in the background? Yes. Scheduled shortcuts use exact alarms, and charger, battery and wifi triggers use a small "Automations are on" notification so Android keeps delivering those events.
Atajos para Android (en español)
Acornix trae los Atajos de iPhone a Android. Crea atajos y automatizaciones describiéndolos con una frase ("modo dormir: silencio, brillo bajo y alarma a las 7") o paso a paso sin IA, como en Atajos de iPhone. Tienen variables, condiciones Si / Si no, repeticiones y datos de internet, y se ejecutan solos a una hora, al conectar el Bluetooth del coche, al enchufar el cargador, con poca batería, al conectarte a una wifi o al tocar una pegatina NFC. Puedes lanzarlos desde la pestaña Atajos, su icono en la pantalla de inicio, el widget o los Ajustes rápidos. Es una alternativa gratuita y de código abierto a Tasker y MacroDroid, toda la app está en español y, una vez creados, los atajos funcionan sin clave de IA. Descarga el APK gratis.
✨ What you can do
🛠️ Create apps from text, voice or a photo
Type what you want, create it from your voice 🎙️ (voice to app, no typing needed) or attach a reference photo 📎 ("make an app like this"). Pick a type (game, utility, music…) or tap one of the ideas, and Acornix writes a complete, mobile-first web app live in front of you.
✨ Ideas. Out of ideas? Create shows ready-made ideas for every type, from sound toys and generative art to science simulations and odd little tools. Tap one and the full request and the name are filled in for you. Tap 🎲 Ideas from the AI and your AI writes a fresh batch, idea by idea; its last ideas stay until you ask for more.
When it's done you get an interactive preview, an Open button, an Add to home screen button and a suggested next improvement. Apply the suggestion or ask for your own changes ("add sound effects", "make the buttons bigger", "add a dark mode"). Every change is saved as a new version.
🎮 An AI game builder
Vibe coding a mobile game takes one sentence: "a platformer with endless levels", "a bowling game you play by swiping", "a castle defense with bosses and an upgrade shop". Acornix builds it with touch controls, keeps your saves and high scores in the game's own database, and you can keep asking for more levels, sounds or power-ups.
🧠 Apps with their own AI
Ask for an app that thinks: "take a photo of my fridge and suggest recipes", "an English teacher I can chat with", "point the camera at a plant and tell me what it is". The app uses your own AI model: it understands camera photos, answers as it writes, returns structured data and holds conversations that remember what you said, with a New conversation button to start over. Each app asks once before using your AI, since every answer spends tokens of your key; apps that use it show a 🧠 AI label, and you can switch it off any time.
📣 Share what you made
Made something cool? Tap Share and Acornix builds a card with your app running big inside a phone, its name, how many seconds the AI took to build it and what you asked for. Edit or hide the request, play with the app until it looks just right, then post it on X, Reddit, WhatsApp or anywhere else.
🌍 Community apps
Explore apps and games other people made with Acornix: search them, filter by category or by whether they need your AI, see the request that created each one, try them without installing, install them with one tap or remix them with your own AI. Every app is reviewed before it's published, shows what it uses (your AI, the camera, the internet…) and gets updates from its author. Home suggests a new mix of them every time you open Acornix. They live in acornix-apps, under the MIT license.
⚡ Shortcuts for Android
iPhone-style shortcuts and automations, with their own tab. Everything about Shortcuts ↑
🤖 An AI assistant that gets things done
One chat for everything. Ask in your own words and the assistant picks the right tools, showing every step it takes:
- "Create a piano and open it"
- "Turn on the flashlight in SOS" · "Set an alarm at 7:30" · "Start a 10 minute timer"
- "Search Nirvana videos on YouTube" · "Open Maps and find a pharmacy"
- "Add bread to my shopping list" · "What's my best score in Bowling?"
- "How much battery do I have?"
Total control (optional). Turn on the Acornix total control accessibility service and the assistant can also see the screen and tap, type and scroll inside other apps, for example "open Settings and turn on dark mode". It only acts while a task you asked for is running. It asks before sending, paying, calling or deleting anything, never sees password fields, and you can stop it at any time from the notification.
📱 Your apps, like real apps
All your creations live in My Apps, a launcher with live thumbnails, search and filters. Tap to open full screen; long-press for more:
- Improve with AI or edit the code by hand.
- Versions: every creation, improvement or edit is kept, and you can restore any of them.
- Add to home screen: a real icon that opens the app in its own window, like an installed app.
- Data: see, export or clear what the app saved.
- Share it as a ZIP, with or without your data, or rename and delete it.
🖥️ AcornixOS: your phone as a computer
Open AcornixOS from Tools and your apps become a desktop, inspired by macOS:
- Windows you can drag, resize, minimize and maximize, with the classic red, yellow and green buttons. Touch one and it comes to the front.
- A Dock with your favourite apps and the ones you have open. Long-press to add or remove.
- A Launchpad with all your apps and a search box.
- Wallpapers to choose from, and a menu bar with the time and battery.
- Apps open in a window; tap the green button (or double-tap the title) to make one full size. On a tablet you get several apps side by side, like a real computer.
Every window is the real app, with its own data, camera and files. Add AcornixOS to your home screen and it opens like any other app.
🗄️ A private database for every app
Every app gets its own fast SQLite database (Acornix.db), so a to-do list keeps its tasks and a game keeps its saves and high scores. The data:
- survives improvements, because the AI is told which collections and fields already exist;
- can be read and changed by the assistant ("add eggs to my to-do list");
- can travel inside the app's ZIP;
- is included in backups.
Each app runs on its own isolated origin, so apps never see each other's data.
☁️ Backups and sharing
- Full backup: one ZIP with all your apps, their versions, data and files. Save it to Google Drive or anywhere else from the system picker, and restore it on any phone.
- Android backup: your apps and data are also included in your Google account backup.
- Import ZIPs shared by friends, including apps made with the original Termux version of acornix. If you already have an app with that name, install it as a copy or put it in place of yours, keeping your data. Before installing one, Review it with AI: your AI reads its code and tells you if it sends data away, asks for passwords, hides code or abuses your AI.
📋 Manual studio: no API key needed
Don't have an API key? Copy a ready-made prompt, paste it into ChatGPT, Claude or Gemini on the web, then paste the answer back. Acornix checks the code, warns you if something is missing and installs the app.
🔔 Always up to date
Acornix checks GitHub for new versions. When one comes out you'll see what's new and can update with one tap, right from the app.
And more
A tour of everything Acornix can do (Settings › Discover Acornix), phone status (battery, memory, storage), Material You colors with light and dark themes, and an interface in English and Spanish: it follows your phone, or pick one in Settings › Language and Acornix, its shortcuts and the apps it creates switch to it.
Dark mode too
🎮 Games and apps included
Acornix comes with twelve example apps. Six were rebuilt for 2.0: they all work offline, adapt to any screen in portrait or landscape, and save their data with Acornix.db.
![]() Calculator History saved, proper operator precedence |
![]() BMI Gauge, healthy range and progress chart |
![]() Drummer 8 pads, 16-step sequencer, saved beats |
![]() Bowling Swipe to throw, hook spin, real scoring |
![]() Piano 4 instruments, multitouch, recordings |
![]() Castle Defense Waves, bosses and an upgrade shop |
The other six were made with AI on a phone, each from a single request and one improvement, for our step-by-step videos, and they are included exactly as they came out. Reef Aquarium loads its 3D engine from the internet.
![]() Neon Drone Race 3D race through neon rings, with rival drones |
![]() Notes Checklists, pinned notes, colors and search |
![]() Neon Kaleidoscope 8-way mirrored neon drawing and a galaxy mode |
![]() Reef Aquarium Feed the fish; glowing jellyfish at night |
![]() Pocket Coach A workout coach that talks and vibrates |
Pixel City Build a city, day and night, fireworks |
📲 Download the APK and install
Acornix is free: download the APK from GitHub releases and install it in a minute.
- Download
acornixfrom the latest release on your phone. - Open it. If Android asks, allow your browser or file manager to install apps, then tap Install. Google Play Protect may warn you because the app doesn't come from the Play Store; tap More details › Install anyway.
- Open Acornix and follow the three-step welcome: tap Get my free key (Google Gemini, no card needed in most countries), paste it and tap Connect. Acornix works out the provider from the key, checks it and takes you straight to your first app. Keys from OpenAI and Anthropic work the same way, and you can skip the step and connect later.
Requirements: Android 8.0 or newer, and an API key from one of these providers:
| Provider | Where to get a key | Notes |
|---|---|---|
| Anthropic (Claude) | console.anthropic.com | Excellent for code; uses the official Anthropic SDK |
| OpenAI | platform.openai.com | Any chat model your account can use |
| Google Gemini | aistudio.google.com | Has a free tier (no card in most countries). Acornix starts with the fast gemini-flash-lite-latest and switches model by itself when one is busy |
| OpenAI-compatible | OpenRouter, Groq, Together, a local Ollama… | Set your own base URL |
Tap ▾ next to Model in Settings to load the models available to your account.
Updating: Acornix tells you when there's a new version. Tap Update and Android installs it over the current one, keeping all your apps and data. The first time, Android will ask you to allow Acornix to install apps.
Total control (optional): Android Settings › Accessibility › Acornix total control › On. You can also get there from the Assistant or from Acornix Settings.
🔐 Privacy and security
- Your API key is encrypted with the Android Keystore and only ever sent to the provider you chose.
- Your apps and their data stay on your phone, except for what you send to your AI provider when you create or improve something. Acornix has no servers, accounts or analytics.
- Each app is sandboxed on its own origin with its own database. The phone bridge only answers that app's own pages.
- Apps ask before using your AI, once per app, and you can change it in the app's options. Apps someone shares with you can be reviewed by your AI before you install them.
- The assistant asks first before sending messages, calling, paying, buying or deleting. It never sees password fields, and a notification with a Stop button is shown while it works.
🧑💻 For creators: the window.Acornix API
Every app made with Acornix can use this API, and so can your own HTML apps imported as a ZIP, whether you write them by hand or with your favourite AI coding assistant. All calls return Promises.
// Phone
Acornix.language; // 'es', 'en'…: the language picked in Acornix, to show your app in it
await Acornix.vibrate(200); // or a pattern: [100, 50, 100]
await Acornix.flashlight(true);
await Acornix.speak('Hello!', 'en-US');
await Acornix.notify('Timer', 'Time is up');
await Acornix.toast('Saved');
const { level, charging } = await Acornix.battery();
const info = await Acornix.deviceInfo();
await Acornix.share('Look what I made');
await Acornix.openUrl('https://example.com');
// Shortcuts
await Acornix.alarm(7, 30, 'Wake up'); // and Acornix.timer(seconds, label) — in the phone's clock app
await Acornix.volume(80, 'media'); // 'media', 'ring' or 'alarm'; Acornix.volume() reads it
await Acornix.ringer('silent'); // 'normal', 'vibrate'; Acornix.doNotDisturb(true)
await Acornix.brightness(20); // 0-100
await Acornix.media('next'); // 'play', 'pause', 'toggle', 'previous': whatever music app is playing
await Acornix.whatsapp('+34600000000', "I'm home"); // Acornix.sms(number, text), Acornix.call(number)
await Acornix.maps('Plaza Mayor, Madrid'); // Acornix.launchApp('Spotify')
await Acornix.calendar({ title: 'Dentist', start: new Date('2026-12-01T10:00'), end: new Date('2026-12-01T11:00') });
const text = await Acornix.clipboard();
const json = JSON.parse(await Acornix.http('https://api.open-meteo.com/v1/forecast?latitude=40.4&longitude=-3.7¤t=temperature_2m')); // no CORS limits
await Acornix.youtube('lofi beats'); // Acornix.openUrl(url, 'com.android.chrome') opens it in that app
Acornix.input; // text shared with the shortcut ("Share with a shortcut")
await Acornix.keepAwake(true); // screen stays on while the app is open
await Acornix.bluetooth(true); // asks once for permission; false turns it off
await Acornix.alarmSound(30); // rings the alarm tone for 30 s; Acornix.stopAlarm()
Acornix.trigger; // 'tap', 'home', 'icon', 'widget', 'tile', 'share', 'nfc', 'schedule', 'bluetooth'…
await Acornix.done('Bedtime mode on'); // shows "✓ Bedtime mode on" and closes the shortcut
// Your AI, inside the app (the user's own model and key)
const fact = await Acornix.askAI('Give me a fun fact about acorns');
const plant = await Acornix.askAI('What plant is this?', { images: [videoOrImgOrFile] }); // camera frame, <img>, file…
const plan = await Acornix.askAI('Three dinners with rice and eggs', { json: true }); // → parsed JSON
await Acornix.askAI('Tell me a story', { onText: t => story.textContent = t }); // text as it's written
const chat = Acornix.ai.chat({ system: 'You are a friendly chef' }); // remembers its turns
await chat.ask('What can I cook with rice and eggs?');
await chat.ask('And without onions?'); // knows which recipe
// save chat.history with Acornix.db and pass it back: Acornix.ai.chat({ system, history }); chat.reset() starts over
// options: { system, images (up to 4), json, onText, quick: false for deep thinking }
// Database (private to this app)
const tasks = Acornix.db.collection('tasks');
const t = await tasks.add({ text: 'Buy bread', done: false }); // → {_id, _created, _updated, ...}
await tasks.update(t._id, { done: true });
const pending = await tasks.list({ where: { done: false }, orderBy: '_created', desc: true, limit: 50 });
const big = await tasks.list({ where: { score: { $gt: 100 } } }); // $gt $gte $lt $lte $ne $in $contains
await Acornix.db.set('highScore', 1200);
const best = await Acornix.db.get('highScore');
// Files (photos, drawings, exports…)
const file = await Acornix.files.save('photo.jpg', blob); // Blob or data URL → {name, url, size}
document.querySelector('img').src = file.url;
await Acornix.files.export('photo.jpg', blob); // to the phone's gallery (videos too; other files go to Downloads)
await Acornix.files.export('photo.jpg'); // or a file you already saved
await Acornix.files.share('photo.jpg', canvas); // share sheet: WhatsApp, email… (Blob, data URL or <canvas>)
// Refresh when the assistant changes your data
window.addEventListener('acornixdata', () => reload());
If window.Acornix is missing (the app was opened in a normal browser), fall back to localStorage. Apps generated by Acornix already do this.
Standard web APIs work too: the camera and microphone with getUserMedia, and the phone's location with navigator.geolocation (Acornix asks for permission the first time).
🛠️ Build from source
You need Android Studio Ladybug or newer (AGP 8.7) and the Android SDK 35.
git clone https://github.com/gonzaroman/acornix.git
cd acornix
./gradlew assembleDebug # app/build/outputs/apk/debug/app-debug.apk
./gradlew testDebugUnitTest # unit tests
Release builds are signed with a keystore kept outside the repository: -PacornixSigning=/path/to/keystore.properties, with storeFile, storePassword, keyAlias and keyPassword. Without it, release builds are unsigned.
Project structure
app/src/main/java/com/gonzaroman/acornix/
├── ai/ AI providers (Anthropic SDK, OpenAI & compatible, Gemini), streaming, tool calling
├── core/ Prompts, response parser, app generator
├── data/ Settings (encrypted keys), apps + versions, per-app SQLite store,
│ ZIP import/export, full backups, sample apps, update checker
├── device/ Phone actions (flashlight, vibration, speech, alarms, intents…), shortcuts
├── control/ Accessibility service for "total control"
├── agent/ Assistant tools and conversation loop
├── web/ Full-screen app runner, per-app origins, window.Acornix bridge
└── ui/ Jetpack Compose screens (Material 3)
app/src/main/assets/sample_apps/ The twelve example apps
Tech: Kotlin, Jetpack Compose and Material 3, OkHttp, kotlinx.serialization, DataStore, SQLite, AndroidX WebKit, Coil, and the official Anthropic Java SDK.
🌳 Looking for the original Termux version?
Acornix began as an AI-powered Python system for Termux. That version is kept in the termux branch (tag v1-termux). Version 2.0 replaces it: no Termux, Python or local servers needed, just install the app.
🤝 Contributing
If you like Acornix, a ⭐ on GitHub helps more people find it. Ideas, bug reports and pull requests are welcome. Open an issue to tell us what you built with Acornix or what you would like it to do next.
📄 License
MIT © Gonzalo Román Márquez











