46 Commits

Author SHA1 Message Date
Helloyunho
e86cd7e661
feat: add a simple way to convert Hugging Face model to GGUF (#1972)
* chore: add react developer tools to electron

* feat: add small convert modal

* feat: separate modals and add hugging face extension

* feat: fully implement hugging face converter

* fix: forgot to uncomment this...

* fix: typo

* feat: try hf-to-gguf script first and then use convert.py

HF-to-GGUF has support for some unusual models
maybe using convert.py first would be better but we can change the usage order later

* fix: pre-install directory changed

* fix: sometimes exit code is undefined

* chore: download additional files for qwen

* fix: event handling changed

* chore: add one more necessary package

* feat: download gguf-py from llama.cpp

* fix: cannot interpret wildcards on GNU tar

Co-authored-by: hiento09 <136591877+hiento09@users.noreply.github.com>

---------

Co-authored-by: hiento09 <136591877+hiento09@users.noreply.github.com>
2024-02-26 10:57:53 +07:00
Louis
3ea8c6071c
fix: check for updates should show no update are availale on the latest build (#2075) 2024-02-18 20:55:31 +07:00
hiento09
442d142598
Fix macos auto update failed (#1991) 2024-02-11 01:18:49 +07:00
Louis
eb09399fbf
chore: reduce bundle size (#1970)
* chore: reduce bundle size

* chore: trimming langchainjs

* chore: trim pdf-parse
2024-02-09 19:23:56 +07:00
Louis
5890ade451
chore: server download progress + S3 (#1925)
* fix: reduce the number of api call

Signed-off-by: James <james@jan.ai>

* fix: download progress

Signed-off-by: James <james@jan.ai>

* chore: save blob

* fix: server boot up

* fix: download state not updating

Signed-off-by: James <james@jan.ai>

* fix: copy assets

* Add Dockerfile CPU for Jan Server and Jan Web

* Add Dockerfile GPU for Jan Server and Jan Web

* feat: S3 adapter

* Update check find count from ./pre-install and correct copy:asserts command

* server add bundleDependencies @janhq/core

* server add bundleDependencies @janhq/core

* fix: update success/failed download state (#1945)

* fix: update success/failed download state

Signed-off-by: James <james@jan.ai>

* fix: download model progress and state handling for both Desktop and Web

---------

Signed-off-by: James <james@jan.ai>
Co-authored-by: James <james@jan.ai>
Co-authored-by: Louis <louis@jan.ai>

* chore: refactor

* fix: load models empty first time open

* Add Docker compose

* fix: assistants onUpdate

---------

Signed-off-by: James <james@jan.ai>
Co-authored-by: James <james@jan.ai>
Co-authored-by: Hien To <tominhhien97@gmail.com>
Co-authored-by: NamH <NamNh0122@gmail.com>
2024-02-07 17:54:35 +07:00
hiento09
4f751338b7
Regression fix assitant extension codesign (#1918)
* Separated build macos arm64 and x86_x64

* Update dependencies jobs name

* Remove arch from electron-builder command for mac

* Add combine latest-mac.yml jobs

* Remove unuse workflow job

* Add prefix to install js-yaml

* Run merge script from /tmp

* workflow update release draft depend on combile-latest-mac

* correct template path

* upload assert release latest-mac.yml overwrite set to true

* upload assert release latest-mac.yml overwrite set to true

* Grant permission for combine latest-mac jobs

---------

Co-authored-by: Hien To <hien@jan.ai>
2024-02-04 15:44:57 +07:00
NamH
8151ef0313
feat: add factory reset feature (#1750)
* feat(FactoryReset): add factory reset feature

Signed-off-by: nam <namnh0122@gmail.com>
Signed-off-by: James <james@jan.ai>
Co-authored-by: Faisal Amir <urmauur@gmail.com>
Co-authored-by: James <james@jan.ai>
2024-01-31 13:23:48 +07:00
Helloyunho
5e58f67abd
chore: add react developer tools to electron (#1858)
Co-authored-by: NamH <NamNh0122@gmail.com>
2024-01-31 12:32:49 +07:00
Louis
aeab22f5ab
fix: Jan server - v1/chat/completions is throwing ERR_REQUIRE_ESM (#1703) 2024-01-22 17:54:47 +07:00
hiento09
87f621129e
Update CI follow git flow (#1625)
* Update CI follow git flow

---------

Co-authored-by: Hien To <tominhhien97@gmail.com>
2024-01-17 19:10:00 +07:00
NamH
9bfcecc542
chore(Dependencies): upgrade node-fetch to fix vulnerable issue (#1598)
Signed-off-by: James <james@jan.ai>
Co-authored-by: James <james@jan.ai>
2024-01-16 12:33:33 +07:00
hiento09
3057aaae43
Chore update docs jan - add AppImage instruction to docusaurus (#1480)
* Update docs by adding AppImage format for linux

* Correct CI update url in README.md

* Add AppImage to yarn scrip build:publish:linux

---------

Co-authored-by: Hien To <tominhhien97@gmail.com>
2024-01-09 22:59:33 +07:00
hiento09
e5a8cca736
Feature linux support app image format (#1442)
* Add AppImage package format

* Update CI and README.md by adding AppImage

---------

Co-authored-by: Hien To <tominhhien97@gmail.com>
2024-01-08 15:14:48 +07:00
Louis
12b037e2cb
fix: swagger CSP issue (#1284) 2024-01-02 12:48:00 +07:00
Louis
5250061c11
feat: Jan Server, API and decoupled clients (#948)
* chore: expose fs apis

* chore: correct electron import path

* update download api

Signed-off-by: James <james@jan.ai>

* update chat_completion

Signed-off-by: James <james@jan.ai>

* fix electron import

Signed-off-by: James <james@jan.ai>

* feat: adding API support at 1337 (#991)

Signed-off-by: James <james@jan.ai>
Co-authored-by: James <james@jan.ai>

* feat: Add /chat/completion api and handler

* chore: add todo for modelList

* chore: read engine.json for openai chat_completion (#1030)

Signed-off-by: James <james@jan.ai>
Co-authored-by: James <james@jan.ai>

* refactor: move routes to shared node module

* refactor: exported modules from core with types (#1172)

* refactor: exported modules from core with types

* fix: fix file reading args

* refactor: fileManager handles

* fix: app issues with server refactoring

* refactor: shared server module (#1210)

* chore: resolve main

* chore: update makefile

---------

Signed-off-by: James <james@jan.ai>
Co-authored-by: James <james@jan.ai>
Co-authored-by: NamH <NamNh0122@gmail.com>
Co-authored-by: hiro <vuonghoainam.work@gmail.com>
2023-12-28 17:57:39 +07:00
hiento09
96b00bd284
Fix auto update windows Bug (#1102)
* upgrade electron-updater and electron-builder for fixing windows autoupdater

* windows specific target build

* Add block map for windows nightly build

* content-type blocksize change to application/gzip

* content-type blocksize change to application/octet-stream

* remove content-type for windows

* add custom sign for windows

* correct exe file path for binary file

* Add windows codesign step to electron-builder

---------

Co-authored-by: Service Account <service@jan.ai>
Co-authored-by: Hien To <tominhhien97@gmail.com>
2023-12-19 16:33:53 +07:00
Louis
92442ba093
fix: migrate new models (#1034)
* fix: migrate new models

* fix: filter out invalid model files

* chore: migrate models
2023-12-15 16:14:52 +07:00
hiento09
dc26a19c40
Upgrade electron from 26.2.1 to 28.0.0 (#958) 2023-12-12 17:54:28 +07:00
Louis
c4d8defe94
refactor: deprecate invokers - auto proxying apis - strict types (#924)
* refactor: deprecate invokers

* refactor: define routes and auto proxying routes

* refactor: declare types for APIs, avoid making dynamic calls to any functions from the web

* chore: deprecate route handling from preload script

* refactor: deprecate unused apis
2023-12-11 13:10:53 +07:00
NamH
1bf4c1b621
feat: pre-populate Jan's /models folder (#796)
Signed-off-by: James <james@jan.ai>
Co-authored-by: James <james@jan.ai>
2023-12-01 18:03:51 +07:00
Louis
1143bd3846
refactor: jan extensions (#799)
* refactor: rename plugin to extension
2023-12-01 11:30:29 +07:00
hiento09
e5d4b81aab
Add nightly build ci (#794)
Co-authored-by: Hien To <tominhhien97@gmail.com>
2023-11-30 20:23:45 +07:00
Louis
70a8d03c9b
fix: messages sync is not threadsafe (#784) 2023-11-30 11:19:17 +07:00
Linh Tran
9c5c03b6bc
Add run-script-os (#620) 2023-11-15 21:46:27 +07:00
Louis
f3060f290e refactor: main electron with managers and handlers 2023-11-14 12:08:40 +07:00
Louis
f02f769f11
chore: disable app update on test (#521)
* chore: disable app update on test

* chore: add build:test step

* Update CI test uses yarn build:test

* Plugin pull from npm registry instead of rebuild
---------

Co-authored-by: Hien To <tominhhien97@gmail.com>
2023-11-01 17:29:58 +07:00
Louis
37c36363d8
refactor: plugin manager and execution as ts (#504)
* refactor: plugin manager and execution as ts

* chore: refactoring
2023-11-01 09:48:28 +07:00
NamH
1fd47ba453
fix: duplicated messages when user switch between conversations (#441)
Signed-off-by: James <james@jan.ai>
Co-authored-by: James <james@jan.ai>
2023-10-24 20:30:06 -07:00
Louis
c5925b6a79
feat: explore plugins from the npm repository and install them remotely (#399)
* feat: explore plugins from the npm repository and install them remotely

* refactor: clean out redundant codes

* chore: only show update button on different version
2023-10-19 22:53:55 +07:00
hiento09
cb25a69909
Fix #290: Add description in package.json and rename to jan (#333)
Co-authored-by: Hien To <tominhhien97@gmail.com>
2023-10-12 09:38:21 +00:00
hiento09
63d8b895f3
Fix icon error for linux app (#316)
* Create icon folder for linux building app

* CI Test: add clean workspace

---------

Co-authored-by: Hien To <tominhhien97@gmail.com>
2023-10-10 17:30:59 +07:00
hiento09
5afae2172d
Fix CI Test run failed on ubuntu and change release file app name (#307)
Co-authored-by: Hien To <>
2023-10-09 03:36:48 +00:00
James
9a79c3effa clean up
Signed-off-by: James <james@jan.ai>
2023-10-06 16:46:47 +07:00
James
e47d19e6e4 update ui
Signed-off-by: James <james@jan.ai>
2023-10-06 16:46:47 +07:00
James
dbe2cc848e allow pagination for querying hf
Signed-off-by: James <james@jan.ai>
2023-10-06 16:46:47 +07:00
Louis
0bdd3713d4
chore: notarize Jan app for macos distribution (#278)
* chore: notarize Jan app for macos distribution

* chore: fix entitlements path

* chore: update notarize package

* chore: update post signing hook

* chore: use built-in notarize tool

* chore: update entitlements

* chore: binary code sign

* add auto signing binary file script

* Separate build:plugins for darwin os

---------

Co-authored-by: Hien To <>
2023-10-06 09:32:48 +00:00
hiento09
8031f3eccf
add electron artifactName (#289)
* add electron artifactName

* update path trigger for linter-and-test CI

---------

Co-authored-by: Hien To <tominhhien97@gmail.com>
2023-10-06 09:22:29 +00:00
Louis
d74178c542
chore: update eslint ignore patterns (#276)
* chore: update eslint ignore patterns

* Add CI linter and test

* remove app arch and start a conversation test case

---------

Co-authored-by: Hien To <tominhhien97@gmail.com>
2023-10-05 16:49:51 +07:00
Louis
efe0cce387
[#249] Add e2e test cases (#266)
* chore: add e2e tests

* chore: do not retry failed test cases
2023-10-05 02:07:35 +00:00
hiento09
517d651871
Feature CICD for MacOS and Windows (#263)
* Separate CICD into multi platform
* Update yarn script to build multi-platform and arch

---------

Co-authored-by: Hien To <tominhhien97@gmail.com>
Co-authored-by: Hien To <>
2023-10-04 13:44:02 +00:00
Louis
a22e901c45 chore: add missing dependencies 2023-10-04 09:59:31 +07:00
Louis
fd512f2cee refactor: clean app dependencies 2023-10-04 09:59:31 +07:00
Louis
dabf0f13b1 fix: the app bundle is missing files 2023-10-02 17:02:02 +07:00
Louis
6500d0dca0 chore: add linter 2023-10-02 10:49:58 +07:00
Louis
dad3d04403 chore: add plugins migration 2023-09-30 13:04:17 +07:00
Louis
afbb94f083
efactor app directories and enforce ts strict mode (#201)
* refactor: move Electron app to main directory and enforce ts strict mode

* chore: add pre-install plugins

* remove duplicated initModel function

Signed-off-by: James <james@jan.ai>

* chore: correct module path

* fix: dynamic import does not work with ts

* chore: web should be able to run on target host browser

* fix: history panel, should display conversations rather just blank state

* chore: init default model

* chore: pluggin in ts

* fix: pre-pack model management

* fix: compiled core should not include plugins

* chore: refactor - invoke plugin function

* refactor download/delete file

Signed-off-by: James <james@jan.ai>

* update prebuild lib

Signed-off-by: James <james@jan.ai>

* chore: yarn workspace

* chore: update yarn workspace

* chore: yarn workspace with nohoist

* fix: llama-cpp-import

* chore: fix data-plugin wrong module path

* chore: correct build step

* chore: 	- separate inference service (#212)

- remove base-plugin

Signed-off-by: James <james@jan.ai>
Co-authored-by: James <james@jan.ai>

* chore: update core plugins

* chore: hide installation prompt and fix model load - management plugin

* chore: remove legacy files; update readme

* fix: refresh page lost the download state

Signed-off-by: James <james@jan.ai>

* fix: ai prompt not passed to plugin

Signed-off-by: James <james@jan.ai>

* chore: module import fix for production

* chore: auto updater

* chore: package is public

* chore: fix yarn workspace config

* update: model management uses Q4_K_M

* chore: fix yarn scripts for publishing

* chore: app updater - progress update message

* chore: user confirms update action

* adding some state for changing page
store downloaded model to database

Signed-off-by: James <james@jan.ai>

* chore: refactor plugins into yarn workspace - a single command to publish all base plugins

* chore update readme (#218)

Co-authored-by: Hien To <tominhhien97@gmail.com>

* change app name and app icon

Signed-off-by: James <james@jan.ai>

* remove: go-to-nowhere actions

* chore: bundle core plugins from root and scan default plugins

* fix: app crashes on different field name lookup

* chore: css fix

* chore: bind download progress to app ui

* chore: bind active model

* chore: simplify app splash-screen only centered jan icon

* feature: system monitoring plugin (#196)

* feat: Add function for system monitoring

* chore: register plugin functions

* chore: move to corresponding directory

* chore: bind system monitoring data to UI

---------

Co-authored-by: Louis <louis@jan.ai>

* chore: add build:plugins step to README

* chore: model searching and fix model name

* fix: plugin file selected appearance

* fix: create new conversation does not work

* fix: delete conversation not update state - messages still exist

* chore: fix asset path prefix

* Add CICD for macos (#221)

Co-authored-by: Hien To <tominhhien97@gmail.com>

* chore: fix production plugin path

* chore: add shell open url in external browser

---------

Signed-off-by: James <james@jan.ai>
Co-authored-by: James <james@jan.ai>
Co-authored-by: NamH <NamNh0122@gmail.com>
Co-authored-by: 0xSage <n@pragmatic.vc>
Co-authored-by: hiento09 <136591877+hiento09@users.noreply.github.com>
Co-authored-by: Hien To <tominhhien97@gmail.com>
Co-authored-by: namvuong <22463238+vuonghoainam@users.noreply.github.com>
2023-09-28 18:15:18 +07:00