phpk / ava

All-in-one desktop app for running LLMs locally.

Home Page:https://avapls.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Ava PLS

Air-gapped Virtual Assistant / Personal Language Server
Website | Twitter | Discord

Screen.Recording.2023-12-06.at.16.05.11.mov
Screen.Recording.2023-12-06.at.16.07.30.mov
Screen.Recording.2023-12-06.at.16.08.24.mov
Screen.Recording.2023-12-06.at.16.06.58.mov

Tech stack

  • Zig, C++, Swift UI, SQLite
  • Preact, Preact Signals, Twind

Local Development

Make sure you have:

  • Latest Zig
  • Node.js 20.5.1
    • only needed for fetching dependencies
  • Xcode (for macOS)
  • pkg-config (brew install pkg-config)
npm install
npm run watch
zig build && ./zig-out/bin/ava_aarch64 # or ./zig-out/bin/ava_x86_64

Headless mode (works on Linux!)

It is now possible to build Ava in headless mode. This will start a server and you can connect to it using a web browser.

This is useful if you want to deploy Ava somewhere and connect to it remotely, or if you are using Linux, because we don't have Qt/GTK support yet.

zig build -Dheadless=true && ./zig-out/bin/ava_aarch64 # or ./zig-out/bin/ava_x86_64

macOS 12.6+ (Monterey)

Xcode is needed because of Swift UI

sudo xcode-select -switch /Applications/Xcode.app

Production build

./src/macos/create_dmg.sh

Or on Windows:

./src/windows/create_zip.sh

License

MIT

Contributing

Bug reports and pull requests are welcome but if you want to do a bigger change, please open an issue first to discuss it.

About

All-in-one desktop app for running LLMs locally.

https://avapls.com

License:Other


Languages

Language:TypeScript 51.2%Language:Zig 36.3%Language:HTML 6.2%Language:Swift 2.2%Language:Shell 2.0%Language:JavaScript 1.4%Language:C++ 0.6%Language:C 0.1%