Skip to content
/ jan Public
forked from janhq/jan

Jan is an open source alternative to ChatGPT that runs 100% offline on your computer

License

Notifications You must be signed in to change notification settings

jesst3r/jan

Repository files navigation

Jan - Personal AI

Project Cover

GitHub commit activity Github Last Commit Github Contributors GitHub closed issues Discord

Getting Started - Docs - Changelog - Bug reports - Discord

⚠️ Jan is currently in Development: Expect breaking changes and bugs!

Jan is a tool to build your own Personal AI, that runs privately on your personal computer.

Jan is free and open source, under the AGPLv3 license.

Jan runs on any hardware. From PCs to multi-GPU clusters, Jan supports universal architectures:

  • Nvidia GPUs (fast)
  • Apple M-series (fast)
  • Apple Intel
  • Linux Debian
  • Windows x64

Download Jan at https://jan.ai/

Demo

Demo.Jan.0.3.0.mp4

Video: Jan v0.3.0 on Mac Air M2, 16GB Ventura

Quicklinks

Plugins

Jan supports core & 3rd party extensions:

  • LLM chat: Self-hosted Llama2 and LLMs
  • Model Manager: 1-click to install, swap, and delete models with HuggingFace integration
  • Storage: Optionally save conversation history and other data in SQLite
  • 3rd-party AIs: Connect to ChatGPT, Claude via API Key (in progress)
  • Cross device support: Mobile & Web support for custom shared servers (in progress)
  • File retrieval: User can chat with docs
  • Multi-user support: Share a single server across a team/friends (planned)
  • Compliance: Auditing and flagging features (planned)

Nitro (Jan's AI engine)

In the background, Jan runs Nitro, an open source, C++ inference engine. It runs various model formats (GGUF/TensorRT) on various hardware (Mac M1/M2/Intel, Windows, Linux, and datacenter-grade Nvidia GPUs) with optional GPU acceleration.

See the open source Nitro codebase at https://nitro.jan.ai.

Troubleshooting

As Jan is development mode, you might get stuck on a broken build.

To reset your installation:

  1. Delete Jan Application from /Applications

  2. Clear cache: rm -rf /Users/$(whoami)/Library/Application\ Support/jan-electron OR rm -rf /Users/$(whoami)/Library/Application\ Support/jan


Contributing

Contributions are welcome! Please read the CONTRIBUTING.md file

Pre-requisites

  • node >= 20.0.0
  • yarn >= 1.22.0

Instructions

Note: This instruction is tested on MacOS only.

  1. Clone the Repository:
   git clone https://github.com/janhq/jan
   git checkout DESIRED_BRANCH
   cd jan
  1. Install dependencies:
   yarn install

   # Build core module
   yarn build:core

   # Packing base plugins
   yarn build:plugins

   # Packing uikit
   yarn build:uikit
  1. Run development and Using Jan Desktop

    yarn dev
    

    This will start the development server and open the desktop app. In this step, there are a few notification about installing base plugin, just click OK and Next to continue.

For production build

# Do step 1 and 2 in previous section
git clone https://github.com/janhq/jan
cd jan
yarn install

# Build core module
yarn build:core

# Package base plugins
yarn build:plugins

# Packing uikit
yarn build:uikit

# Build the app
yarn build

This will build the app MacOS m1/m2 for production (with code signing already done) and put the result in dist folder.

Acknowledgements

Jan builds on top of other open-source projects:

Contact

About

Jan is an open source alternative to ChatGPT that runs 100% offline on your computer

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • TypeScript 93.8%
  • JavaScript 2.8%
  • SCSS 2.3%
  • Dockerfile 0.5%
  • Makefile 0.4%
  • Batchfile 0.2%