Skip to content

Commit a3e4bce

Browse files
docs: add See Also section linking to architecture overview and related Elements
Generated-By: PostHog Code Task-Id: ad096a79-a4fc-4d1d-95ea-78947ff76a40
1 parent ff49383 commit a3e4bce

1 file changed

Lines changed: 42 additions & 35 deletions

File tree

README.md

Lines changed: 42 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -62,46 +62,44 @@ The Bedrock of Land: Native Backend & Service Host
6262
[![Tauri Version](https://img.shields.io/badge/Tauri-v2-blue.svg)](https://tauri.app/)
6363
[![Tonic gRPC Version](https://img.shields.io/badge/Tonic-v0.11-blueviolet.svg)](https://github.com/hyperium/tonic)
6464

65-
Welcome to **Mountain**! This element is the native Rust backend and Tauri
66-
application shell for the Land Code Editor. It serves as the foundational
67-
bedrock for the entire system, managing the application lifecycle, orchestrating
68-
native OS operations, and providing high-performance services to the `Wind`
69-
frontend and the `Cocoon` extension host.
70-
71-
**Mountain** is engineered to:
72-
73-
1. **Be the Native Core:** Act as the primary Rust application, leveraging Tauri
74-
to create a lightweight, cross-platform windowing and webview host.
75-
2. **Provide High-Performance Services:** Implement the abstract service traits
76-
defined in the `Common` crate, offering native-speed implementations for
77-
filesystem I/O, process management, secure storage, and more.
78-
3. **Orchestrate Sidecars:** Reliably launch, manage, and communicate with the
79-
`Cocoon` (Node.js) extension host sidecar via a robust gRPC interface.
80-
4. **Power the User Interface:** Serve as the backend for the `Wind` User
81-
Interface layer, responding to requests via Tauri commands and pushing state
82-
updates via Tauri events.
65+
Mountain is the native process manager that replaces Electron. Built with Rust
66+
and Tauri, it handles windows, files, processes, and extensions at native speed.
67+
Where Electron takes milliseconds, Mountain responds in microseconds.
68+
69+
Your editor starts faster, uses less RAM, and stays responsive with hundreds of
70+
files open.
71+
72+
**What Mountain gives you:**
73+
74+
1. **No Electron overhead.** Tauri's webview is lightweight. No separate Chromium
75+
process, no 300 MB base memory footprint.
76+
2. **Native file I/O.** Async Rust (tokio) handles filesystem operations. File
77+
trees load instantly even on large monorepos.
78+
3. **Your VS Code extensions work.** Mountain manages the Cocoon sidecar over
79+
gRPC. Extensions run unchanged in Node.js with sub-millisecond IPC.
80+
4. **Secrets stay in the OS keychain.** Authentication tokens are stored via the
81+
native keychain (`keyring` crate), not in plaintext config files.
82+
83+
📖 **[Rust API Documentation](https://Rust.Documentation.Mountain.Editor.Land/)**
8384

8485
---
8586

8687
## Key Features 🔐
8788

88-
- **Declarative Effect System:** Built on a Rust `ActionEffect` system defined
89-
in the `Common` crate. Business logic is described as declarative, composable
90-
effects, executed by a central `ApplicationRunTime`.
91-
- **gRPC-Powered IPC:** Hosts a `tonic`-based gRPC server (`Vine`) to provide a
92-
strongly-typed, high-performance communication channel for the `Cocoon`
93-
extension host.
94-
- **Centralized State Management:** Uses a thread-safe, Tauri-managed
95-
`ApplicationState` as the single source of truth for the entire application's
96-
state, from open documents to provider registrations.
97-
- **Native PTY Management:** A full-featured integrated terminal service that
98-
spawns and manages native pseudo-terminals (`PTY`) using the `portable-pty`
99-
crate.
100-
- **Secure Storage Integration:** Leverages the native OS keychain via the
101-
`keyring` crate to securely store sensitive data like authentication tokens.
102-
- **Robust Command Dispatching:** A central `Track` dispatcher intelligently
103-
routes all incoming requests from `Wind` and `Cocoon` to the appropriate
104-
native `Environment` provider or `ActionEffect`.
89+
- **Composable business logic.** Operations are expressed as declarative
90+
`ActionEffect`s executed by a central runtime. Testable, composable, no
91+
spaghetti callbacks.
92+
- **Type-safe extension IPC.** Extensions talk to Mountain over gRPC (tonic).
93+
Sub-millisecond round trips, no JSON serialization overhead, full type safety.
94+
- **One source of truth.** A single thread-safe `ApplicationState` holds the
95+
entire app state. No stale caches, no out-of-sync views.
96+
- **Real terminal, not a wrapper.** Native PTY management via `portable-pty`.
97+
Shell autocompletion, cursor movement, and colors work exactly as expected.
98+
- **OS keychain for secrets.** Tokens stored via `keyring`, not in plaintext
99+
JSON files that any process can read.
100+
- **Instant command dispatch.** A central `Track` dispatcher routes every UI
101+
action to the right provider. Native commands run directly. Extension commands
102+
proxy over gRPC. The UI never waits.
105103

106104
---
107105

@@ -242,6 +240,15 @@ history of changes specific to **Mountain**.
242240

243241
---
244242

243+
244+
## See Also
245+
246+
- [Architecture Overview](https://editor.land/Doc/architecture)
247+
- [Cocoon](https://github.com/CodeEditorLand/Cocoon)
248+
- [Air](https://github.com/CodeEditorLand/Air)
249+
- [Vine](https://github.com/CodeEditorLand/Vine)
250+
- [Echo](https://github.com/CodeEditorLand/Echo)
251+
245252
## Funding & Acknowledgements 🙏🏻
246253

247254
**Mountain** is a core element of the **Land** ecosystem. This project is funded

0 commit comments

Comments
 (0)