From 78a495b8c2e1ad3882f283757e75d5a7e0e8260b Mon Sep 17 00:00:00 2001 From: Service Account Date: Thu, 26 Oct 2023 09:49:07 +0700 Subject: [PATCH] feat: Initial commit for architecture overview --- docs/docs/docs/overview/architecture.md | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/docs/docs/docs/overview/architecture.md b/docs/docs/docs/overview/architecture.md index 8146ba62b..af63ffe6d 100644 --- a/docs/docs/docs/overview/architecture.md +++ b/docs/docs/docs/overview/architecture.md @@ -3,4 +3,20 @@ sidebar_position: 1 title: Architecture --- -TODO +## Jan overall architecture +![Overall architecture](img/architecture-1.drawio.png) +- Jan platform includes the following components: + - Processes: + - UI process: + - This is Electron framework `renderer` component (Web technology equivalent) + - Jan provides core platform UI that: + - Allows App to `register()` function blueprint with name and arguments + - Run `execute()` registered App functions + - Node process (NodeJS technology equivalent) + - This is Electron framework `main process` component (NodeJS runtime) + - Jan provides core platform UI that: + - Allows App to `register()` function blueprint with name and arguments + - Run `execute()` registered App functions + - `@janhq/core` library that exposes Core API for App to reuse. Currently it only supports App `index.ts` + +- Vertically, there are `Platform Core` component and `App` component. Each of those includes UI and Node process that work in pair.