/jan

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

Primary LanguageTypeScriptGNU Affero General Public License v3.0AGPL-3.0

Jan - Bring AI to your Desktop

Jan banner

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 an open-source ChatGPT alternative that runs 100% offline on your computer.

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

Version Type Windows MacOS Linux
Stable (Recommended) jan.exe Intel M1/M2 jan.deb
Experimental (Nighlty Build) Github action artifactory

Download the latest version of Jan at https://jan.ai/ or visit the GitHub Releases to download any previous release.

Demo

Demo.Jan.0.4.mp4

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

Quicklinks

Jan

Nitro:

Nitro is a high-efficiency C++ inference engine for edge computing, powering Jan. It is lightweight and embeddable, ideal for product integration.

Troubleshooting

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

To reset your installation:

  1. Remove Jan from your Applications folder and Cache folder

    make clean

    This will remove all build artifacts and cached files:

    • Delete Jan from your /Applications folder
    • Clear Application cache in /Users/$(whoami)/Library/Caches/jan
  2. Use the following commands to remove any dangling backend processes:

    ps aux | grep nitro

    Look for processes like "nitro" and "nitro_arm_64," and kill them one by one with:

    kill -9 <PID>

Contributing

Contributions are welcome! Please read the CONTRIBUTING.md file

Pre-requisites

  • node >= 20.0.0
  • yarn >= 1.22.0
  • make >= 3.81

Instructions

  1. Clone the Repository:
   git clone https://github.com/janhq/jan
   git checkout DESIRED_BRANCH
   cd jan
  1. Run development and Using Jan Desktop

    make dev
    

    This will start the development server and open the desktop app.

For production build

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

# Build the app
make build

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

Nightly Build

Nightly build is a process where the software is built automatically every night. This helps in detecting and fixing bugs early in the development cycle. The process for this project is defined in .github/workflows/jan-electron-build-nightly.yml

You can join our Discord server here and go to channel github-jan to monitor the build process.

The nightly build is triggered at 2:00 AM UTC every day.

The nightly build can be downloaded from the url notified in the Discord channel. Please access the url from the browser and download the build artifacts from there.

Manual Build

Manual build is a process where the software is built manually by the developers. This is usually done when a new feature is implemented or a bug is fixed. The process for this project is defined in .github/workflows/jan-electron-build-nightly.yml

It is similar to the nightly build process, except that it is triggered manually by the developers.

Acknowledgements

Jan builds on top of other open-source projects:

Contact

  • Bugs & requests: file a Github ticket
  • For discussion: join our Discord here
  • For business inquiries: email hello@jan.ai
  • For jobs: please email hr@jan.ai

License

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