82 Commits

Author SHA1 Message Date
Faisal Amir
424b00338e
feat: revamp thread screen (#802)
* Make thread screen as default screen

* Blank state when user have not any model

* Cleanup topbar thread screen

* Improve style right panel

* Add instructions right panel

* Styling thread list history

* Resolve conflict

* Default title new thread

* Fix trigger panel sidebar

* Make default right panel false when no activethread

* Fix CI test

* chore: assistant instruction with system prompt

* Fix title and blank state explore the hub

* Claenup style thread screen and add buble message for assitant

* Remove unused import

* Styling more menus on thread list and right panel, and make max height textarea 400 pixel

* Finished revamp ui thread

* Finished system monitor UI

* Style box running models

* Make animate right panel more smooth

* Add status arround textarea for starting model info

* Temporary disable hide left panel

* chore: system resource monitoring update

* copy nits

* chore: typo

* Reverse icon chevron accordion

* Move my models into setting page

---------

Co-authored-by: Louis <louis@jan.ai>
Co-authored-by: 0xSage <n@pragmatic.vc>
2023-12-04 10:55:47 +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
NamH
86e693b250
refactor: model plugin to follow new specs (#682)
* refactor: model plugin to follow new specs

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

* chore: rebase main

chore: rebase main

---------

Signed-off-by: James <james@jan.ai>
Co-authored-by: James <james@jan.ai>
Co-authored-by: Louis <louis@jan.ai>
2023-11-29 11:36:59 +07:00
Louis
9a52135b1f
chore: open app data should lead user to jan root (#749) 2023-11-28 15:32:04 +07:00
Louis
d6807f50c4 fix: clean downloading model file 2023-11-28 15:06:36 +07:00
NamH
52d56a8ae1
refactor: move file to jan root (#598)
* feat: move necessary files to jan root

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

* chore: check model dir

---------

Signed-off-by: James <james@jan.ai>
Co-authored-by: James <james@jan.ai>
Co-authored-by: Louis <louis@jan.ai>
2023-11-16 12:09:09 +07:00
Linh Tran
9c5c03b6bc
Add run-script-os (#620) 2023-11-15 21:46:27 +07:00
Louis
7715cd1bd9 chore: esm import 2023-11-14 12:08:40 +07:00
Louis
f3060f290e refactor: main electron with managers and handlers 2023-11-14 12:08:40 +07:00
Faisal Amir
52b96e69a5 Remove file from application data when user cancel download a model 2023-11-14 09:11:32 +07:00
Faisal Amir
2394c13065
ui: standalone UIKit and refactor (#557)
* Eslint import order

* Initial Uikit

* Rename file with camelCase

* Remove unused code

* Remove unused code

* Set position traficlight mac

* Grouping Ribbon, Topbar and Bottombar as layout

* Added image brand

* Moving feature toggle into context folder

* Fix active state of setting menu

* Cleanup downloadModel atom helper

* Cleanup useGetConfigureModel

* Added wave animation

* Create useMainViewState intead of import helper atom

* Remove unused code

* Take a back switch ui

* Toggle using switch component

* Add dynamic primary color

* Cleanup import

* Added uikit scroll area

* Add best practice form

* Added toaster container

* Fix loader container

* Add hooks useDownloadState

* Added tooltip on ribbon menu

* Added case user multiple download model

* Adjust input style with bigger ring

* Restyle my model screen

* Replace useStartStop model with useActiveModel

* Import icon using Icon name

* Fix missing login loading start and stop model

* WIP integrate with cmdk

* Move layout search bar on middle of app

* Added function cancel download

* Cleanup model explore

* Cleanup unused code

* Move app version in bototmbar or footer

* WIP chat screen

* WIP chat screen

* Cleanup style and remove unsed code

* Added command for showing downloaded model

* Fix missing keyframe loader dot animation

* Conditional loader of plugin setting

* WIP history list message

* chore: rebase main

* Adding script ui into root package

* Fix different version react hooks form

* Add close toaster

* Added status model active or not on list of command

* Conditional showing info if user don't have a model

* Disabled toolbar chat when user not yet have convo

* chore: fix state

* fix: get resource atom

* Fix conditional bottom bar

* fix: model download state

* Fix font

* Improve icon my model

* Add toaster delete chat

* Remove test classname

* Fix scroll chat body

* Fix scrolling chat body

* chore: add message update

* Add uikit into depedencies on root package

* Update chat flow

* Fix hot reload ui changes

* Increate background color chat screen light mode

* Added visual conversation active state

* Added build:uikit on gh actions

* chore: attempt to fix CI

* fix: deps

* fix: tests

* chore: attempt to fix CI

---------

Co-authored-by: Louis <louis@jan.ai>
2023-11-07 21:27:11 +07:00
Louis
36c9807ae4 feat: JSON Conversational Plugin 2023-11-06 13:46:01 +07:00
Louis
96dba2690d feat: class-based plugin manager
chore: add facades

refactor: core module export

refactor: inference plugin - deprecate function registering (#537)

* refactor: revamp inference plugin as class - deprecate function registering

* refactor: monitoring plugin - deprecate service registering (#538)

refactor: revamp inference plugin as class - deprecate function registering

chore: update import

refactor: plugin revamp - model management

chore: update build steps and remove experimental plugins

refactor: remove pluggable electron

chore: add sorting for conversations

chore: build plugins for testing

chore: consistent plugin directory name

chore: docs

chore: fix CI

chore: update conversation prefix
2023-11-06 13:46:01 +07:00
Louis
d29d076a3e
fix: #396 - allow user to cancel a model download (#530)
* fix: #396 - allow user to cancel model download

* chore: fix typo
2023-11-02 19:58:56 +07:00
Louis
0d13756a86
feat: Experimental Feature Toggle (#525)
* feat: Experimental Feature Toggle

* chore: add open app directory action

* chore: disable experimental feature test case
2023-11-01 23:42:47 +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
Louis
edeb82ae84
fix: app toolbar is gone on windows (#503) 2023-10-31 23:15:23 +07:00
Louis
1efe2cbd1e
fix: dest.end is not a function (#501) 2023-10-31 15:21:18 +07:00
John
c3cc63499c #255: load plugins from CDN 2023-10-30 23:26:27 +07:00
John
6be67895dd 255: Cloud native 2023-10-30 23:20:10 +07:00
Louis
7fbb5822f7
chore: update plugin sdk - add appDataPath (#492) 2023-10-30 15:17:41 +07:00
Louis
1439742544
chore: attempt to kill Nitro subprocesses (#484) 2023-10-27 16:46:18 +07:00
Louis
d42b3114d5
fix: failed to build electron app (#461)
* fix: failed to build electron app

* fix: unstable test case
2023-10-26 11:43:49 +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
Service Account
11bb52fd9d Update code siging for new data plugin 2023-10-24 20:49:51 +07:00
Faisal Amir
539b467141
ui: interface revamp (#429)
* feat: adding create bot functionality

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

* update the temperature progress bar

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

* WIP baselayout

* Mapping plugins with available preferences

* Added loader component

* WIP working another screen

* Cleanup types and avoid import one by one

* Prepare bottom bar

* Add css variables colors to enable user select the accent

* Enable change accent color

* Seperate css variable

* Fix conflict

* Add blank state of my model empty

* Restyle explore models page

* Enable user config left sidebar

* Restyle my models page

* WIP styling chat page

* Restyling chat message

* Fix conflict

* Adde form preferences setting plugins

* Fixed form bot info

* Sidebar bot chat

* Showing rightbar for both setting when user created bot

* Fix style bot info

* Using overflow auto intead of scroll

* Remove script built UI from root package

* Fix missig import

* Resolve error linter

* fix e2e tests

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

---------

Signed-off-by: James <james@jan.ai>
Co-authored-by: James <james@jan.ai>
2023-10-24 10:59:12 +07:00
NamH
6e2210cb22
feat: adding create bot functionality (#368)
* feat: adding create bot functionality

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

* update the temperature progress bar

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

* chore: remove tgz

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

* update core dependency

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

* fix e2e test

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

---------

Signed-off-by: James <james@jan.ai>
Co-authored-by: James <james@jan.ai>
2023-10-23 15:57:56 +07:00
Louis
c7b8f8c2d5
chore: install or update a plugin should not interrupt dev process (#420) 2023-10-23 06:17:46 +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
e1e6fddcdf
Move plugins folder from electron to root folder (#366)
* Move plugins folder from electron to root folder

* Add CICD for plugins

* Fix error electron import plugin after change plugin name

* Add remove app cache on CI test pipeline

---------

Co-authored-by: Hien To <>
2023-10-16 19:18:00 +07:00
Louis
27258433d1
#357 plugin & app can subscribe and emit events (#358)
* feature: event based plugin

* chore: update README.md

* Update yarn script for build plugins (#363)

* Update yarn script for build plugins

* Plugin-core install from npmjs instead of from local

---------

Co-authored-by: Hien To <>

* #360 plugin preferences (#361)

* feature: #360 plugin preferences

* chore: update core-plugin README.md

* chore: create collections on start

* chore: bumb core version

* chore: update README

* chore: notify preferences update

* fix: preference update

---------

Co-authored-by: hiento09 <136591877+hiento09@users.noreply.github.com>
2023-10-16 10:23:38 +00:00
NamH
84dd54a98c
Fix/250 (#349)
* fix(UI): #250 better chat left side bar

Signed-off-by: James <james@jan.ai>
Co-authored-by: James <james@jan.ai>
2023-10-15 07:46:15 -07:00
Louis
5fc1ba7067
feature: @janhq/plugin-core module & plugins update (#321)
* @janhq/plugin-core module

* refactor web to use exported services from module

* refactor data-plugin to provide DAL & move model logics to model management plugin

* model-management in TS

* add ci auto package, increate version, and publish to npm repository

* chore: storage operations

* chore: hybrid data-plugin esm & cjs module

* chore: PouchDB Driver

* chore: documentation

---------

Co-authored-by: Hien To <hien@jan.ai>
Co-authored-by: Service Account <service@jan.ai>
2023-10-14 15:59:28 +07:00
James
a289e6e276 fix the exception caused by race condition
Signed-off-by: James <james@jan.ai>
2023-10-12 07:30:29 -07:00
James
773bbaf4cc update
Signed-off-by: James <james@jan.ai>
2023-10-12 07:30:29 -07:00
James
d982dce090 feat: allowing user to fetch models from github
Signed-off-by: James <james@jan.ai>
2023-10-12 07:30:29 -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
Louis
a57dfe743b
fixes: #247 - inference plugin should check nitro service available (#313)
* fix: #247 - inference plugin should check nitro service available

* fix: #247 check service status and emit error if any

* chore: error handling

* chore: typo

* fix: open conversation does not work when model is deleted

* chore: reload plugins in development mode without exiting the process

* chore: move model file check to inference plugin

* update package-lock.json

---------

Co-authored-by: Hien To <>
2023-10-10 18:24:33 +07: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
Louis
1ec3d3183f chore: remove redundant query 2023-10-09 23:13:39 +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
Louis
b6a58df463 fix: #271 Cannot read properties of undefined (reading 'map') 2023-10-09 09:16:33 +07:00
namvuong
780ec5c3fd
fix(nitro): Update metal file from llama.cpp f56e1ba (#293) 2023-10-06 10:32:52 +00:00
Louis
95940e7eb8 Fix: package-lock.json
chore: add reinstall plugins CTA
2023-10-06 16:55:11 +07:00
Louis
b8b7c416c7 chore: add reinstall plugins CTA 2023-10-06 16:46:47 +07:00
James
448b21ed96 using generic name for search model
Signed-off-by: James <james@jan.ai>
2023-10-06 16:46:47 +07:00