explaingit

kiraa-ai/project-onyx

Analysis updated 2026-05-18

34SwiftAudience · developerComplexity · 3/5LicenseSetup · moderate

TLDR

An iPhone app for chatting privately with an AI language model that runs entirely on your device, no server or account required.

Mindmap

mindmap
  root((project onyx))
    What it does
      On device AI chat
      Fully offline
    Tech stack
      Swift
      MLX
      iOS
    Use cases
      Private AI chat
      App starting point
    Audience
      iOS developers

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Chat privately with an on-device AI model with no internet connection needed after setup.

USE CASE 2

Use the project as a starting skeleton for building your own private AI iOS app.

USE CASE 3

Add new AI models to the app by following the one-line code example.

USE CASE 4

Learn how Apple's MLX framework runs language models on iPhone GPUs.

What is it built with?

SwiftMLXiOS

How does it compare?

kiraa-ai/project-onyxbleeeet/termipethoobnn/fanfan
Stars343333
LanguageSwiftSwiftSwift
Setup difficultymoderateeasyeasy
Complexity3/53/53/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Requires a physical iPhone 15 or newer, the simulator cannot run it.

Use freely for any purpose, including commercial use, as long as you keep the copyright and license notices.

In plain English

Onyx is an iPhone app that lets you chat with an AI language model entirely on your device, with nothing sent to any external server. There is no account to create, no API key to obtain, and no subscription. Once the model file is downloaded, the app works completely offline. The app ships with a pre-configured model called Llama 3.2 1B Instruct, a compressed version of Meta's Llama model that weighs about 860 MB. You download it from within the app's Models tab. The underlying inference is handled by Apple's MLX framework, which runs the model on the iPhone's built-in GPU. Because of this, the app requires a physical iPhone 15 or newer: the simulator does not have the necessary hardware, and older iPhones do not have enough memory. The interface has three tabs: Chat, Models, and Settings. The Chat tab is a standard conversation interface where the AI's responses appear token by token as they are generated. The Models tab lets you download, activate, or remove models. The Settings tab lets you set a system prompt (a background instruction that shapes the AI's behavior) and toggle some developer options. The project is designed as a starting point for developers who want to build their own private AI iOS app. The README describes it as a skeleton with deliberate gaps: conversations do not persist between app launches, there is no custom design, and there is no crash reporting. Code examples in the README show how to add new models (one line) and how to add conversation history that survives restarts. The app requires iOS 17 or later and is built with Swift 6. It is open source under the Apache 2.0 license.

Copy-paste prompts

Prompt 1
Walk me through building and running project-onyx on a physical iPhone 15 or newer.
Prompt 2
Explain how to add a new AI model to project-onyx using the code example in the README.
Prompt 3
Show me how to add conversation history that persists between app launches.
Prompt 4
Help me understand how Apple's MLX framework is used to run Llama 3.2 on device.

Frequently asked questions

What is project-onyx?

An iPhone app for chatting privately with an AI language model that runs entirely on your device, no server or account required.

What language is project-onyx written in?

Mainly Swift. The stack also includes Swift, MLX, iOS.

What license does project-onyx use?

Use freely for any purpose, including commercial use, as long as you keep the copyright and license notices.

How hard is project-onyx to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is project-onyx for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.