Open source · on your phone · for Android

Knowledge you can carry.

BOAR keeps a small AI and a library of knowledge on your phone, so it can still think a problem through with you when the signal is gone. It shows where each answer came from, and keeps an honest record of how it ran.

boar-v1.0.0-arm64.apk · 123 MB · any 64-bit ARM Android phone · SHA-256 published with the release · MIT

How it works

Download once. After that, it’s yours.

BOAR needs the internet one time, to fetch its model. From then on, everything it knows and everything it says stays on your phone.

  1. 01

    Install and download once

    Get boar-v1.0.0-arm64.apk from the release and check its SHA-256. On first launch BOAR fetches its default model and a small embedding model: about 1 GB, the only time it needs the network.

  2. 02

    Go where the signal doesn’t

    Airplane mode on, Wi-Fi off, mobile data off. BOAR searches its offline library with keywords and on-device embeddings, and runs the model locally.

  3. 03

    Ask, and see the sources

    Every answer lists the offline articles it was built from, so you can check it. And every answer is measured: model, time to first token, speed, memory.

  • 49,832 articles, 164 MBThe optional Wikipedia Vital Articles pack, on top of the built-in library.
  • Your own knowledgeImport .txt, .md, .csv, .json and .pdf files as collections you can switch on and off, and share them as portable packs.
  • Your own modelSearch Hugging Face for another GGUF model and run it on the phone.
  • No Google Play ServicesThe release build has no Play Services or Firebase dependency. No account, no API.

When it matters

The moments you can’t look things up.

The six places in the film. BOAR reasons with a model on the phone and grounds what it says in its library. Each source named here is an article in the Wikipedia Vital Articles pack BOAR can download. Answers are abridged and written for the page. The train question is from BOAR’s evaluation set, where the default model answered 6:15 pm on a real phone.

  1. In flight

    The man next to me is choking and can’t speak. What do I do?

    BOARLean him forward and give up to five firm blows between the shoulder blades. If that fails, give up to five abdominal thrusts. Keep alternating, and call the crew.

    Choking

  2. Underground

    A train leaves at 3:40 pm and the trip takes 2 hours and 35 minutes. What time does it arrive?

    BOAR3:40 pm plus 2 hours is 5:40 pm. Add 35 minutes: 20 to reach 6:00, then 15 more. 6:15 pm.

    Worked out on the phone · no source needed

  3. Mountain hut

    My friend is shivering, clumsy and slurring words. Is it hypothermia?

    BOARThose are classic signs. Get her out of the wind, swap wet clothes for dry layers, warm her core first, and give a warm sweet drink if she’s alert.

    Hypothermia

  4. In the garden

    Why plant corn, beans and squash together?

    BOARThey help each other. Corn gives the beans a pole to climb, beans add nitrogen to the soil, and squash leaves shade the ground and hold in moisture.

    Companion planting

  5. At sea

    Thunder came 9 seconds after the flash. How far away is the storm?

    BOARSound covers about 1 km every 3 seconds, so roughly 3 km. That’s close: head for shore or shelter now.

    Thunder

    Lightning

  6. Flooded road

    Water is running across the road ahead. Can I drive through it?

    BOARDon’t. Moving water can float a car even when it looks shallow, and the road underneath may be gone. Turn around and wait on higher ground.

    Flash flood

For anything serious, BOAR is a companion, not a doctor or a rescue service. Get help as soon as you can reach it.

The receipt

A model card isn't a benchmark.

Every answer records which model ran, how long until the first word, how fast it generated and how much memory it used. These are the first runs on a real phone, failures included.

Run 1 · Wikipedia Vital Articles pack

One average answer, second by second

Qwen2.5-1.5B · 6 questions · 2026-09-24

Answered correctly
6/6
First token
6.4 s avg
Generation
17.5 tok/s avg
Whole answer
10.6 s avg
Peak memory
1.76 GB
Network
none

Run 2 · five configurations, 17 questions each, same phone

Seconds per answer (median)

2026-09-24 · timeout at 120 s

  • Qwen2.5-1.5B default

    21.0 s

    11.4 tok/s · first token 13.6 s · 17/17, no timeouts

  • LFM2.5-8B-A1B MoE

    57.3 s

    14.8 tok/s · first token 27.2 s · only model to solve the RAM question; 4 of 17 ran out of answer budget

  • Phi-3.5-mini

    73.1 s

    4.0 tok/s · first token 44.0 s · 4 timeouts at 120 s

  • Qwen2.5-7B

    107.1 s

    2.7 tok/s · first token 70.5 s · 5 timeouts at 120 s

  • Instella-MoE-16B-A3B

    didn't load

    Architecture not supported yet

Show as a table
Modeltok/sFirst tokenPer answerWhat happened
Qwen2.5-1.5B (default)11.413.6 s21.0 s17/17, no timeouts
LFM2.5-8B-A1B (MoE)14.827.2 s57.3 sOnly model to solve the RAM question; 4 of 17 ran out of answer budget
Phi-3.5-mini4.044.0 s73.1 s4 timeouts at 120 s
Qwen2.5-7B2.770.5 s107.1 s5 timeouts at 120 s
Instella-MoE-16B-A3B———Didn't load: architecture not supported yet

Medians. LFM2.5 ran separately with the same 17 questions. Highest peak memory of any run: 5.21 GB, under the 12 GB limit.

Measured on Xiaomi 2311DRK48G · MediaTek Dimensity 8300 · 11.6 GB RAM · Android 16. Raw results: docs/evidence.

Numbers look wrong? Run them on your phone and tell us. A result from your device is data nobody else has.

npm run eval:device -- --models <model>

From the manifesto

Nothing leaves your phone.

Useful now beats perfect later.

No account, no API, no Google Play Services. One download at setup, then nothing. Not “mostly local”, not “offline except when it matters”.

From the BOAR manifesto

Still growing

Not the dream, and we say so.

The model everyone wants on a phone, a huge mixture-of-experts model streaming from storage, doesn't exist yet. BOAR is what works today, measured honestly. 4–15 tok/s is enough to find out how to treat a blister, what a museum is about, or why the train isn't running, when there's no signal and nobody around to ask.

Open source

MIT licensed. Code, models, data sources and benchmark results are in the repo, and the APK ships with its SHA-256.

github.com/rferrari/boar-app

Still open

  • Not measured yet: a comparison against internet search plus frontier models.
  • Not run yet: GrapheneOS on real hardware.
  • Weak spots: synthesis on the 1.5B model, and citation formatting.

poidh bounty #31

BOAR is claim #124 on “Build the Best Offline AI Research App for Android”. The bounty is still open.

Roadmap

First the roots. Then what grows from them.

A direction, not a schedule. First, make the everyday app excellent, tested by the people who use it. Then BOAR grows into a library that the community fills and shares, one pack at a time.

  1. Phase 1 · Here today

    Roots

    Works now on Android: a model and a searchable library on your phone, your own documents, and any GGUF model you choose.

  2. Phase 2 · Next

    First shoots

    iOS is in progress. Then offline voice, and packs for places you can download before a trip.

  3. Phase 3 · After that

    Branches

    Packs people share: a library of community knowledge packs to browse and download, and private, encrypted memory.

  4. Phase 4 · Further out

    Grove

    An essentials library: verified offline bundles for first aid, disaster response and growing your own food.

See the full roadmap

BOAR mascot, a boar in a pith helmet

Keep your phone charged, pack BOAR, and go somewhere without signal.

v1.0.0 · 123 MB · any 64-bit ARM Android phone · MIT · Read the manifesto