Home

Awesome

Jan - Turn your computer into an AI computer

Jan banner

<p align="center"> <!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section --> <img alt="GitHub commit activity" src="https://img.shields.io/github/commit-activity/m/janhq/jan"/> <img alt="Github Last Commit" src="https://img.shields.io/github/last-commit/janhq/jan"/> <img alt="Github Contributors" src="https://img.shields.io/github/contributors/janhq/jan"/> <img alt="GitHub closed issues" src="https://img.shields.io/github/issues-closed/janhq/jan"/> <img alt="Discord" src="https://img.shields.io/discord/1107178041848909847?label=discord"/> </p> <p align="center"> <a href="https://jan.ai/guides">Getting Started</a> - <a href="https://jan.ai/docs">Docs</a> - <a href="https://github.com/janhq/jan/releases">Changelog</a> - <a href="https://github.com/janhq/jan/issues">Bug reports</a> - <a href="https://discord.gg/AsJ8krTT3N">Discord</a> </p>

[!Warning] 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:

Download

<table> <tr style="text-align:center"> <td style="text-align:center"><b>Version Type</b></td> <td style="text-align:center"><b>Windows</b></td> <td colspan="2" style="text-align:center"><b>MacOS</b></td> <td colspan="2" style="text-align:center"><b>Linux</b></td> </tr> <tr style="text-align:center"> <td style="text-align:center"><b>Stable (Recommended)</b></td> <td style="text-align:center"> <a href='https://app.jan.ai/download/latest/win-x64'> <img src='https://github.com/janhq/docs/blob/main/static/img/windows.png' style="height:14px; width: 14px" /> <b>jan.exe</b> </a> </td> <td style="text-align:center"> <a href='https://app.jan.ai/download/latest/mac-x64'> <img src='https://github.com/janhq/docs/blob/main/static/img/mac.png' style="height:15px; width: 15px" /> <b>Intel</b> </a> </td> <td style="text-align:center"> <a href='https://app.jan.ai/download/latest/mac-arm64'> <img src='https://github.com/janhq/docs/blob/main/static/img/mac.png' style="height:15px; width: 15px" /> <b>M1/M2/M3/M4</b> </a> </td> <td style="text-align:center"> <a href='https://app.jan.ai/download/latest/linux-amd64-deb'> <img src='https://github.com/janhq/docs/blob/main/static/img/linux.png' style="height:14px; width: 14px" /> <b>jan.deb</b> </a> </td> <td style="text-align:center"> <a href='https://app.jan.ai/download/latest/linux-amd64-appimage'> <img src='https://github.com/janhq/docs/blob/main/static/img/linux.png' style="height:14px; width: 14px" /> <b>jan.AppImage</b> </a> </td> </tr> <tr style="text-align:center"> <td style="text-align:center"><b>Experimental (Nightly Build)</b></td> <td style="text-align:center"> <a href='https://app.jan.ai/download/nightly/win-x64'> <img src='https://github.com/janhq/docs/blob/main/static/img/windows.png' style="height:14px; width: 14px" /> <b>jan.exe</b> </a> </td> <td style="text-align:center"> <a href='https://app.jan.ai/download/nightly/mac-x64'> <img src='https://github.com/janhq/docs/blob/main/static/img/mac.png' style="height:15px; width: 15px" /> <b>Intel</b> </a> </td> <td style="text-align:center"> <a href='https://app.jan.ai/download/nightly/mac-arm64'> <img src='https://github.com/janhq/docs/blob/main/static/img/mac.png' style="height:15px; width: 15px" /> <b>M1/M2/M3/M4</b> </a> </td> <td style="text-align:center"> <a href='https://app.jan.ai/download/nightly/linux-amd64-deb'> <img src='https://github.com/janhq/docs/blob/main/static/img/linux.png' style="height:14px; width: 14px" /> <b>jan.deb</b> </a> </td> <td style="text-align:center"> <a href='https://app.jan.ai/download/nightly/linux-amd64-appimage'> <img src='https://github.com/janhq/docs/blob/main/static/img/linux.png' style="height:14px; width: 14px" /> <b>jan.AppImage</b> </a> </td> </tr> </table>

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

Demo

Demo

Realtime Video: Jan v0.4.3-nightly on a Mac M1, 16GB Sonoma 14

Quicklinks

Jan

Nitro

Nitro is a high-efficiency C++ inference engine for edge computing. It is lightweight and embeddable, and can be used on its own within your own projects.

Troubleshooting

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

To reset your installation:

  1. 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>
    
  2. Remove Jan from your Applications folder and Cache folder

    make clean
    

    This will remove all build artifacts and cached files:

    • Delete Jan extension from your ~/jan/extensions folder
    • Delete all node_modules in current folder
    • Clear Application cache in ~/Library/Caches/jan

Requirements for running Jan

Contributing

Contributions are welcome! Please read the CONTRIBUTING.md file

Pre-requisites

Instructions

  1. Clone the repository and prepare:

    git clone https://github.com/janhq/jan
    cd jan
    git checkout -b DESIRED_BRANCH
    
  2. Run development and use Jan Desktop

    make dev
    

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

  1. (Optional) Run the API server without frontend

    yarn dev:server
    

For production build

# Do steps 1 and 2 in the previous section
# 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.

Docker mode

Docker compose ProfileDescription
cpu-fsRun Jan in CPU mode with default file system
cpu-s3fsRun Jan in CPU mode with S3 file system
gpu-fsRun Jan in GPU mode with default file system
gpu-s3fsRun Jan in GPU mode with S3 file system
Environment VariableDescription
S3_BUCKET_NAMES3 bucket name - leave blank for default file system
AWS_ACCESS_KEY_IDAWS access key ID - leave blank for default file system
AWS_SECRET_ACCESS_KEYAWS secret access key - leave blank for default file system
AWS_ENDPOINTAWS endpoint URL - leave blank for default file system
AWS_REGIONAWS region - leave blank for default file system
API_BASE_URLJan Server URL, please modify it as your public ip address or domain name default http://localhost:1377

This will start the web server and you can access Jan at http://localhost:3000.

Note: RAG feature is not supported in Docker mode with s3fs yet.

Acknowledgements

Jan builds on top of other open-source projects:

Contact

Trust & Safety

Beware of scams.

License

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