lapce is a free, open source frameworks & platforms project written in Rust and released under Apache-2.0. It has 38,860 GitHub stars, 1,331 forks and 901 open issues, and was last pushed 22 hours ago. On this registry it ranks #12 of 44 tracked projects in Frameworks & Platforms, with 5 head-to-head comparisons available.

What is lapce?

Lapce is an Apache-2.0 licensed, native graphical code editor written in pure Rust for developers who want fast text editing, built-in language intelligence, Vim-style modal editing, and remote development support inside one application rather than assembled from a base editor plus a stack of extensions.

What it is

Lapce is a code editor implemented in pure Rust, with its user interface built in Floem, the UI framework from the same project. Text editing is designed around Rope Science from the Xi-Editor, which is what gives the editor its fast computation over large documents, and rendering goes through wgpu. The project is distributed as a desktop application for Windows, Linux, and macOS, with a homepage at lap.dev/lapce/ and user documentation on GitBook at docs.lapce.dev.

The concrete problem it solves is integration. A typical editing setup requires one program for text, another layer for completion and diagnostics, a third for modal keybindings, and separate tooling for working on remote machines. Lapce folds these into one binary: Language Server Protocol support is built in, modal editing is a first-class and toggleable feature, and remote development is built in rather than added on. The specific thing it replaces is that assembled stack — the editor plus the LSP client extension plus the Vim emulation plugin plus the remote development extension plus a separate terminal — because Lapce ships all of those paths natively.

Key capabilities

  • Built-in LSP support delivering completion, diagnostics, and code actions without a separate extension.
  • Modal editing as a first-class citizen, Vim-like and toggleable.
  • Built-in remote development, inspired by VSCode Remote Development, giving a "local" experience while using the full power of a remote system; Lapdev, from the same team, manages remote dev environments.
  • Plugin system where plugins are written in any language that compiles to the WASI format, including C, Rust, and AssemblyScript.
  • Built-in terminal, so commands run inside the workspace without leaving the editor.
  • Rendering through wgpu and UI through Floem, with editing built on Rope Science from Xi-Editor.
  • Pre-built releases for Windows, Linux, and macOS, plus package manager installation.

Who uses it and how

  • Individual developers on Windows, Linux, or macOS who install a pre-built release or use a package manager instead of compiling from source.
  • Vim users who want modal editing available and toggleable rather than bolted on through a plugin.
  • Developers working against a remote machine, who use the built-in remote development support for a local-feeling session backed by a remote system, with Lapdev optionally managing those environments.
  • Plugin authors working in C, Rust, or AssemblyScript who target the WASI format.
  • Contributors, who per CONTRIBUTING.md can start from a fully set up Lapce dev environment on Lapdev, a cloud dev environment service similar to GitHub Codespaces, with all dependencies pre-installed.

Getting started

Download a pre-built release for Windows, Linux, or macOS from the project's releases page, or install with a package manager following docs/installing-with-package-manager.md. Compiling from source is covered in docs/building-from-source.md.

How it compares

The facts do not provide a list of paid products that Lapce replaces, so the comparison rests on the tools it explicitly derives from. Lapce takes its text-editing model from Xi-Editor's Rope Science and models its remote development workflow on VSCode Remote Development, then packages both in pure Rust with WASI-based plugins and toggleable modal editing in a single editor. It therefore sits as a native Rust alternative in the same territory as those reference designs rather than as an extension-hosted editor.

When to use it — and when not to

Lapce is a desktop application, so there is no database, object storage, or SMTP service to operate; the operational cost falls instead on remote setups, where a self-managed remote host or the separate Lapdev service is needed. It is a poor fit for anyone who needs plugin breadth outside languages that compile to WASI, or who is unwilling to run or pay for remote infrastructure to get the remote development workflow. The repository also carries 901 open issues against 1331 forks, and the README itself is sparse, deferring feature detail to the website and GitBook, so users should expect an active project with a substantial open backlog rather than a finished one. The licence, Apache-2.0, is clear and permissive.

project readme (upstream, from github) — read inline


Lapce

Lightning-fast And Powerful Code Editor

Lapce Docs

Lapce (IPA: /læps/) is written in pure Rust, with a UI in Floem. It is designed with Rope Science from the Xi-Editor, enabling lightning-fast computation, and leverages wgpu for rendering. More information about the features of Lapce can be found on the main website and user documentation can be found on GitBook.

Features

  • Built-in LSP (Language Server Protocol) support to give you intelligent code features such as: completion, diagnostics and code actions
  • Modal editing support as first class citizen (Vim-like, and toggleable)
  • Built-in remote development support inspired by VSCode Remote Development. Enjoy the benefits of a "local" experience, and seamlessly gain the full power of a remote system. We also have Lapdev which can help manage your remote dev environments.
  • Plugins can be written in programming languages that can compile to the WASI format (C, Rust, AssemblyScript)
  • Built-in terminal, so you can execute commands in your workspace, without leaving Lapce.

Installation

You can find pre-built releases for Windows, Linux and macOS here, or installing with a package manager. If you'd like to compile from source, you can find the guide.

Contributing

Open in Lapdev

Lapdev, developed by the Lapce team, is a cloud dev env service similar to GitHub Codespaces. By clicking the button above, you'll be taken to a fully set up Lapce dev env where you can browse the code and start developing. All dependencies are pre-installed, so you can get straight to code.

Guidelines for contributing to Lapce can be found in CONTRIBUTING.md.

Feedback & Contact

The most popular place for Lapce developers and users is on the Discord server.

Or, join the discussion on Reddit where we are just getting started.

There is also a Matrix Space, which is linked to the content from the Discord server.

License

Lapce is released under the Apache License Version 2, which is an open source license. You may contribute to this project, or use the code as you please as long as you adhere to its conditions. You can find a copy of the license text here: LICENSE.

Frequently asked questions

Is lapce free to use?

lapce is open source under the Apache-2.0 licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does lapce do?

Lightning-fast and Powerful Code Editor written in Rust

What is lapce written in?

lapce is primarily written in Rust. Its source is publicly available at https://github.com/lapce/lapce, and it has 38,860 GitHub stars.