diff --git a/README.md b/README.md
index aada13d5..7a12835e 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,13 @@
-# Terminus OS
-![cover](https://file.bttcdn.com/github/terminus/banner1.jpg)
+# Terminus OS - Your Free, Self-Hosted Operating System Based on Kubernetes
+
+![Build Status](https://github.com/beclab/terminus/actions/workflows/release-daily.yaml/badge.svg)
+[![GitHub release (latest by date)](https://img.shields.io/github/v/release/beclab/terminus)](https://github.com/beclab/terminus/releases)
+[![GitHub Repo stars](https://img.shields.io/github/stars/beclab/terminus?style=social)](https://github.com/beclab/terminus/stargazers)
+[![Discord](https://img.shields.io/badge/Discord-7289DA?logo=discord&logoColor=white)](https://discord.com/invite/ShjkCBs2)
+[![License](https://img.shields.io/badge/License-Terminus-red)](https://github.com/beclab/terminus/blob/main/LICENSE.md)
+
+
+![cover](https://file.bttcdn.com/github/terminus/desktop-dark.jpeg)
Let people own their data again
Website Β·
@@ -9,58 +17,116 @@
Terminus Space
+**Table of Contents**
+- [Terminus OS - Your Free, Self-Hosted Operating System Based on Kubernetes](#terminus-os---your-free-self-hosted-operating-system-based-on-kubernetes)
+ - [Introduction](#introduction)
+ - [Motivation and Design](#motivation-and-design)
+ - [Features](#features)
+ - [Feature Comparison](#feature-comparison)
+ - [Getting Started](#getting-started)
+ - [Project Navigation](#project-navigation)
+ - [Contributing to Terminus](#contributing-to-terminus)
+ - [Community \& Contact](#community--contact)
+ - [Staying Ahead](#staying-ahead)
+ - [Special Thanks](#special-thanks)
+ - [Contributors](#contributors)
## Introduction
-Terminus OS is a source-available, cloud-native operating system built on Kubernetes, designed to run on edge devices owned by users. Our goal is to enable users to securely store their most important data on their own hardware and access services based on this private data from anywhere in the world.
-
-In essence, we want you to use Terminus OS like a regular computer. We hope that Terminus OS can assist individuals and organizations in managing data, business, and life effectively, all while fully owning and controlling their data.
-
-- For users, we aim to make Terminus OS as easy to use as a smartphone.
-- For developers, we strive to provide an experience consistent with that of public clouds.
-
-## Features
-
-Terminus OS offers a wide array of features designed to enhance security, ease of use, and development flexibility, making it a powerful tool for both users and developers.
+Terminus OS is a source-available, cloud-native operating system built on Kubernetes. It is designed as a one-stop self-hosted solution for user-owned edge devices. Our goal is to enable users to securely store their most important data on their own hardware and access services based on this private data from anywhere in the world. Typical use cases inlcudeοΌ
-- [**Enterprise-Grade Security with Ease**](https://docs.jointerminus.com/overview/terminus/network.html)
+- π» **Self-hosted**: Terminus OS serves as a one-stop self-hosted solution where users can host and manage their data, operations, and digital life effectively, with full data ownership.
+- π€ **Local AI**: Build local AI agents with Terminus OS without writing code.
+- π€ **User-owned decentralized social media**: Easily install decentralized social media apps such as Mastodon, Ghost, and WordPress on Terminus, allowing you to build a personal brand without the risk of being banned or paying platform commissions.
- Terminus seamlessly integrates Tailscale, Headscale, Cloudflare Tunnel, and FRP, simplifying network configuration while providing enterprise-grade security. Users no longer need to worry about managing domain names, HTTPS certificates, and other details; each service can be accessed in the most secure and convenient way.
+## Motivation and Design
-- [**Secure and Permissionless Application Ecosystem**](https://docs.jointerminus.com/overview/terminus/application.html)
+We believe the current state of the internet, where user data is centralized and exploited by monopolistic corporations, is deeply flawed. Our goal is to empower individuals with true data ownership and control.
- Terminus offers a secure and permissionless app ecosystem via sandboxing, ensuring application isolation and security. Developers can freely distribute and run applications without the constraints of traditional app stores.
+This vision is rooted in what we call the "BEC" (Blockchain, Edge, Client) model, where applications and data reside at the edge, secrets are stored on clients, identities on blockchain. By distributing data across personal Edge nodes rather than centralized servers, Terminus aims to restore user sovereignty over their digital information, communications, and online activities.
-- [**Manage Data with Peace of Mind**](https://docs.jointerminus.com/overview/terminus/data.html)
+As an instantiation of the BEC model, the Terminus ecosystem is composed of three integral components:
- Terminus provides a unified filesystem and database at the OS level, with the OS handling scaling, backups, and high availability.
+- **Snowinning Protocol**: A decentralized identity and reputation system that integrates decentralized identifiers (DIDs), verifiable credentials (VCs), and reputation data into blockchain smart contracts. Learn more in [documentation](https://docs.jointerminus.com/overview/snowinning/overview.html).
+ ![Snowinning Protocol](https://file.bttcdn.com/github/terminus/snowinning-protocol.jpg)
+- **Terminus OS**: An one-stop self-hosted OS running on edge devices.
+ ![Tech Stacks](https://file.bttcdn.com/github/terminus/v2/tech-stack.jpeg)
+- **TermiPass**: A comprehensive client software that operates across multiple platforms. It securely stores users' private keys and manages their identities and data across various Edge devices. Learn more in [documentation](https://docs.jointerminus.com/how-to/termipass/overview.html).
-- [**One Login for All Applications**](https://docs.jointerminus.com/overview/terminus/account.html)
-
- Terminus offers a seamless integration with third-party application accounts, allowing users to log in the system once and access all applications within Terminus. Say goodbye to the hassle of logging into each app individually.
-- [**Effortlessly Enjoy AI Benefits**](https://docs.jointerminus.com/overview/terminus/ai.html)
-
- Terminus provides a one-stop solution for GPU management, model hosting, private knowledge base maintenance, and agent and workflow construction. Users can enjoy the benefits of AI without writing any code, all while protecting their privacy.
-
-- [**Versatile Built-in Applications**](https://docs.jointerminus.com/how-to/terminus/)
-
- Terminus comes with a suite of built-in applications such as a file manager, sync drive, vault, reader, app marketplace, settings, and dashboard, allowing users to use Terminus as easily as they would use a smartphone or any desktop.
-
-- [**Access Your Devices Anytime, Anywhere**](https://github.com/beclab/TermiPass)
-
- Terminus offers various clients, including mobile, desktop, and browser extensions, enabling users to access their machines anytime, anywhere.
+## Features
-- [**Easily Port and Develop Applications**](https://docs.jointerminus.com/overview/terminus/network.html)
-
- Terminus provides development tools to help users port existing applications to Terminus or develop new ones.
+Terminus OS offers a wide array of features designed to enhance security, ease of use, and development flexibility:
+
+- **Enterprise-grade security**: Simplified network configuration using Tailscale, Headscale, Cloudflare Tunnel, and FRP.
+- **Secure and permissionless application ecosystem**: Sandboxing ensures application isolation and security.
+- **Unified filesystem and database**: Automated scaling, backups, and high availability.
+- **Single sign-on**: Log in once to access all applications within Terminus with a shared authentication service.
+- **AI capabilities**: Comprehensive solution for GPU management, local AI model hosting, and private knowledge bases while maintaining data privacy.
+- **Built-in applications**: Includes file manager, sync drive, vault, reader, app market, settings, and dashboard.
+- **Seamless anywhere access**: Access your devices from anywhere using dedicated clients for mobile, desktop, and browsers.
+- **Development tools**: Comprehensive development tools and flexible networking options for effortless application development and porting.
+
+Here are some screenshots from the UI for a sneak peek:
+
+
+
+| | |
+| :---: | :---: |
+| **Desktop**βAI-Powered Personal Desktop | **Files**βA Secure Home to Your Data
+ |
+| ![Desktop](https://file.bttcdn.com/github/terminus/v2/desktop.jpg) | ![Files](https://file.bttcdn.com/github/terminus/v2/files.jpg) |
+| **Vault**β1Password for the Web3 Era |**Market**βApp Ecosystem in Your Control |
+| ![vault](https://file.bttcdn.com/github/terminus/v2/vault.jpg) | ![market](https://file.bttcdn.com/github/terminus/v2/market.jpg) |
+|**Wise**βYour Digital Secret Garden | **Settings**βManaging Terminus Efficiently |
+| ![settings](https://file.bttcdn.com/github/terminus/v2/wise.jpg) | ![](https://file.bttcdn.com/github/terminus/v2/settings.jpg) |
+|**Dashboard**βConstant Terminus Monitoring | **Profile**βCustomized Web3 Homepage |
+| ![dashboard](https://file.bttcdn.com/github/terminus/v2/dashboard.jpg) | ![profile](https://file.bttcdn.com/github/terminus/v2/profile.jpg) |
+| **Devbox**βDeveloping, Debugging, and Deploying Apps on Terminus |**Controlhub**βManaging Kubernetes Clusters Easily |
+| ![Devbox](https://file.bttcdn.com/github/terminus/v2/devbox.jpg) | ![Controlhub](https://file.bttcdn.com/github/terminus/v2/controlhub.jpg)|
+
+
+
+### Feature Comparison
+
+| | Terminus OS | Synology | TrueNAS Scale | CasaOS | Proxmox | OMV | Unraid |
+| --- | --- | --- | --- | --- | --- | --- | --- |
+| Source Code License | Terminus License | Closed | GPL 3.0 | Apache 2.0 | MIT | GPL 3.0 | Closed |
+| Built On | Kubernetes | Linux | Kubernetes | Docker | LinuxContainer/Virtual Machine | Debian | Docker |
+| Multi-Node | β
| β | β
| β | π οΈ | β | β |
+| Build-in Applications | β
(Feature-rich desktop apps) | β
(Feature-rich desktop apps) | β (CLI) | β
(Simple desktop apps) | β
(Management dashboard)| β
(Management dashboard) | β
(Management dashboard) |
+| Free Domain Name | β
| β
| β | β | β | β | β |
+| Auto SSL Certificate | π | β
| π οΈ(Let'sEncrypt) | π οΈ (Certbot) | π οΈ(Let'sEncrypt) | π οΈ | π οΈ(Let'sEncrypt) |
+| Reverse Proxy | π | β
| π οΈ | π οΈ | π οΈ | π οΈ | π οΈ |
+| VPN Management | π | π οΈ | π οΈ | π οΈ | π οΈ | π οΈ | π οΈ |
+| Graded App Entrance | π | π οΈ | π οΈ | π οΈ | π οΈ | π οΈ | π οΈ |
+| Multi-User Management | β
User management
π Resource isolation | β
User management
π οΈ Resouce isolation | β
User management
π οΈ Resouce isolation | β | β
User management
π οΈ Resouce isolation | β
User management
π οΈ Resouce isolation | β
User management
π οΈ Resouce isolation |
+| Single Login for All Applications | π | β | β | β | β | β | β |
+| Cross-Node Storage | π (Juicefs+MinIO) | β | β | β | β | β | β |
+| Database Solution | π (Built-in cloud-native database solution) | π οΈ | π οΈ | π οΈ | π οΈ | π οΈ | π οΈ |
+| Disaster Recovery | π (Powered by MinIO's [**Erasure Coding**](https://min.io/docs/minio/linux/operations/concepts/erasure-coding.html)**)** | β
RAID | β
RAID | β
RAID | β | β | β
Unraid Storage |
+| Backup | β
App Data
β
User Data | β
User Data | β
User Data | β
User Data | β
User Data | β
User Data | β
User Data |
+| App Sandboxing | β
| β | β (K8S's namespace) | β | β | β | β |
+| App Ecosystem | β
(Official + Third-party Submissions) | β
Majorly from official channel | β
(Official + Third-party Submissions) | β
Majorly from official channel | β | π οΈ (Community plugins installed manually) | β
Community maintained app market |
+| Developer Friendly | β
IDE
β
CLI
β
SDK
β
Doc | β
CLI
β
SDK
β
Doc | β
CLI
β
Doc | β
CLI
β
Doc | β
SDK
β
Doc | β
SDK
β
Doc | β
Doc |
+| Local LLM Hosting | π | π οΈ | π οΈ | π οΈ | π οΈ | π οΈ | π οΈ |
+| Local LLM app development | π (Dify integrated) | π οΈ | π οΈ | π οΈ | π οΈ | π οΈ | π οΈ |
+| Client Platforms | β
Android
β
iOS
β
Windows
β
Mac
β
Chrome Plugin | β
Android
β
iOS | β | β | β | β | β |
+| Client Functionality | β
(All-in-One client application) | β
(14 separate client apps) | β | β | β | β | β |
+
+**Note:**
+
+- π: **Auto**, indicates that the system completes the task automatically.
+- β
: **Yes**, indicates that users without a developer background can complete the setup through the product's UI prompts.
+- π οΈ: **Manual Configuration**, indicates that even users with an engineering background need to refer to tutorials to complete the setup.
+- β: **No**, indicates that the feature is not supported.
## Getting Started
Before you get started, make sure your hardware meet the following minimum system requirements:
-- Hardware congigurations
+- Hardware configurations:
- CPU >= 4 Core
- RAM >= 8GB
@@ -75,6 +141,7 @@ Before you get started, make sure your hardware meet the following minimum syste
| Debian 12 | amd64 |
| Debian 11 | amd64 |
+Take the following steps to install Terminus OS:
1. [Apply for A Terminus Name](https://docs.jointerminus.com/how-to/termipass/account/#create-terminus-name).
@@ -90,9 +157,77 @@ Before you get started, make sure your hardware meet the following minimum syste
5. [Back up your mnemonic phrase](../../how-to/termipass/account/index.md#backup-mnemonic-phrase.md) to ensure account and data security.
-
-
-## Contributing
+## Project Navigation
+
+Terminus OS consists of numerous code repositories publicly available on GitHub. The current repository is responsible for the final compilation, packaging, installation, and upgrade of the OS, while specific changes mostly take place in their corresponding repositories.
+
+The following table lists the project directories under Terminus OS and their corresponding repositories. Find the one that interests you:
+
+Framework components
+
+| **Directory** | **Repo** | **Description** |
+| --- | --- | --- |
+| [frameworks/app-service](https://github.com/beclab/terminus/tree/main/frameworks/app-service) | | A system framework component that provides lifecycle management and various security controls for all apps in the system. |
+| [frameworks/backup-server](https://github.com/beclab/terminus/tree/main/frameworks/backup-server) | | A system framework component that provides scheduled full or incremental cluster backup services. |
+| [frameworks/bfl](https://github.com/beclab/terminus/tree/main/frameworks/bfl) | | Backend For Launcher (BFL), a system framework component serving as the user access point and aggregating and proxying interfaces of various backend services. |
+| [frameworks/GPU](https://github.com/beclab/terminus/tree/main/frameworks/GPU) | | GPU sharing mechanism that allows multiple processes (or containers running on Kubernetes) to securely run on the same physical GPU concurrently, each having the whole GPU memory available. |
+| [frameworks/l4-bfl-proxy](https://github.com/beclab/terminus/tree/main/frameworks/l4-bfl-proxy) | | Layer 4 network proxy for BFL. By prereading SNI, it provides a dynamic route to pass through into the user's Ingress. |
+| [frameworks/osnode-init](https://github.com/beclab/terminus/tree/main/frameworks/osnode-init) | | A system framework component that initializes node data when a new node joins the cluster. |
+| [frameworks/system-server](https://github.com/beclab/terminus/tree/main/frameworks/system-server) | | As a part of system runtime frameworks, it provides a mechanism for security calls between apps. |
+| [frameworks/tapr](https://github.com/beclab/terminus/tree/main/frameworks/tapr) | | Terminus Application Runtime components |
+
+System level applications and services
+
+| Directory | Repo | Description |
+| --- | --- | --- |
+| [apps/agent](https://github.com/beclab/terminus/tree/main/apps/agent) | | The LLM app development platform ported from [Dify.ai](https://github.com/langgenius/dify), with integrations of Terminus Accounts, local knowledge base, and local models. |
+| [apps/analytic](https://github.com/beclab/terminus/tree/main/apps/analytic) | | Developed based on [Umami](https://github.com/umami-software/umami), Analytic is a simple, fast, privacy-focused alternative to Google Analytics. |
+| [apps/market](https://github.com/beclab/terminus/tree/main/apps/market) | | This repository deploys the front-end part of the application market in Terminus OS. |
+| [apps/market-server](https://github.com/beclab/terminus/tree/main/apps/market-server) | | This repository deploys the back-end part of the application market in Terminus OS. |
+| [apps/argo](https://github.com/beclab/terminus/tree/main/apps/argo) | | A workflow engine for orchestrating container execution of local recommendation algorithms |
+| [apps/desktop](https://github.com/beclab/terminus/tree/main/apps/desktop) | | The built-in desktop application of the system. |
+| [apps/devbox](https://github.com/beclab/terminus/tree/main/apps/devbox) | | An IDE for developers to port and develop Terminus applications. |
+| [apps/TermiPass](https://github.com/beclab/terminus/tree/main/apps/TermiPass) | | A free alternative to 1Password and Bitwarden for teams and enterprises of any size Developed based on [Padloc](https://github.com/padloc/padloc). It serves as the client that helps you manage DID, Terminus Name, and Terminus devices. |
+| [apps/files](https://github.com/beclab/terminus/tree/main/apps/files) | | A built-in file manager modified from [Filebrowser](https://github.com/filebrowser/filebrowser), providing management of files on Drive, Sync, and various Terminus physical nodes. |
+| [apps/knowledgebase](https://github.com/beclab/terminus/tree/main/apps/knowledgebase) | | A built-in application that stores articles, PDFs, and eBooks collected through RSS subscriptions, TermiPass, and recommendations by local algorithms. |
+| [apps/mynitro](https://github.com/beclab/terminus/tree/main/apps/mynitro) | | A wrapper of the official [**Nitro**](https://github.com/janhq/nitro) project that hosts LLMs locally, specfically, provides services to **Dify**'s agents on Terminus OS. |
+| [apps/notifications](https://github.com/beclab/terminus/tree/main/apps/notifications) | | The notifications system of Terminus OS |
+| [apps/profile](https://github.com/beclab/terminus/tree/main/apps/profile) | | Alternative to Linkertree in Terminus OS to create Web3.0 profiles for users. |
+| [apps/rsshub](https://github.com/beclab/terminus/tree/main/apps/rsshub) | | A RSS subscription manager based on [RssHub](https://github.com/DIYgod/RSSHub). |
+| [apps/dify-gateway](https://github.com/beclab/terminus/tree/main/apps/dify-gateway) | | A gateway service that establishes the connection between **Dify** and other services such as **Files** and **Agent**. |
+| [apps/settings](https://github.com/beclab/terminus/tree/main/apps/settings) | | Built-in system settings. |
+| [apps/system-apps](https://github.com/beclab/terminus/tree/main/apps/system-apps) | | Built based on the _kubesphere/console_ project, system-service providing a self-hosted cloud platform that helps users comprehensively understand and control the system's runtime status and resource usage through a visual Dashboard and feature-rich ControlHub. |
+| [apps/wise](https://github.com/beclab/terminus/tree/main/apps/wise) | | A reader for users to read rticles stored by users from RSS subscriptions, collections, and recommendation algorithms. |
+| [apps/wizard](https://github.com/beclab/terminus/tree/main/apps/wizard) | | A wizard application to walk users through the system activation process. |
+
+Third-party components and services
+
+| Directory | Repo | Description |
+| --- | --- | --- |
+| [/third-party/authelia](https://github.com/beclab/terminus/tree/main/third-party/authelia) | | An open-source authentication and authorization server providing two-factor authentication and single sign-on (SSO) for your applications via a web portal. |
+| [/third-party/headscale](https://github.com/beclab/terminus/tree/main/third-party/headscale) | | An open source, self-hosted implementation of the Tailscale control server in Terminus to manage Tailscale in TermiPass across different devices**.** |
+| [/third-party/infisical](https://github.com/beclab/terminus/tree/main/third-party/infisical) | | An open-source secret management platform that syncs secrets across your teams/infrastructure and prevent secret leaks. |
+| [/third-party/juicefs](https://github.com/beclab/terminus/tree/main/third-party/juicefs) | | A distributed POSIX file system built on top of Redis and S3, allowing apps on different nodes to access the same data via POSIX interface. |
+| [/third-party/ks-console](https://github.com/beclab/terminus/tree/main/third-party/ks-console) | | Kubesphere console that allows for cluster management via a Web GUI. |
+| [/third-party/ks-installer](https://github.com/beclab/terminus/tree/main/third-party/ks-installer) | | Kubesphere installer component that automatically creates Kubesphere clusters based on cluster resource definitions. |
+| [/third-party/kube-state-metrics](https://github.com/beclab/terminus/tree/main/third-party/kube-state-metrics) | | kube-state-metrics (KSM) is a simple service that listens to the Kubernetes API server and generates metrics about the state of the objects. |
+| [/third-party/notification-mananger](https://github.com/beclab/terminus/tree/main/third-party/notification-manager) | | Kubesphere's notification management component for unified management of multiple notification channels and custom aggregation of notification content. |
+| [/third-party/predixy](https://github.com/beclab/terminus/tree/main/third-party/predixy) | | Redis cluster proxy service that automatically identifies available nodes and adds namespace isolation. |
+| [/third-party/redis-cluster-operator](https://github.com/beclab/terminus/tree/main/third-party/redis-cluster-operator) | | A cloud-native tool for creating and managing Redis clusters based on Kubernetes. |
+| [/third-party/seafile-server](https://github.com/beclab/terminus/tree/main/third-party/seafile-server) | | The backend service of Seafile (Sync Drive) for handling data storage. |
+| [/third-party/seahub](https://github.com/beclab/terminus/tree/main/third-party/seahub) | | The front and middleware service of Seafile (Sync Drive) for handling file sharing, data synchronization, etc. |
+| [/third-party/tailscale](https://github.com/beclab/terminus/tree/main/third-party/tailscale) | | Tailscale has been integrated in TermiPass of all platforms. |
+
+**Additional libraries and components**
+
+| Directory | Repo | Description |
+| --- | --- | --- |
+| [build/installer](https://github.com/beclab/terminus/tree/main/build/installer) | | The template for generating the installer build. |
+| [build/manifest](https://github.com/beclab/terminus/tree/main/build/manifest) | | Installation build image list templatge |
+| [libs/fs-lib](https://github.com/beclab/terminus/tree/main/libs) | | The SDK library for the iNotify-compatible interface implemented based on JuiceFS. |
+| [scripts](https://github.com/beclab/terminus/tree/main/scripts) | | Assisting scripts for generating the installer build |
+
+## Contributing to Terminus
We are welcoming anyways of contributions: