Skip to main content

Community

Contributing

How to contribute code, documentation, or translations to Editor.Land.

Contributing to Editor.Land

Editor.Land is open source and welcomes contributions. The full contributing guide is at CONTRIBUTING.md on GitHub.


Quick Start

  1. Fork and clone the repository with submodules:

    git clone --recurse-submodules https://github.com/YOUR_USERNAME/Land.git
    cd Land
  2. Install Node.js dependencies:

    pnpm install
  3. Start the development build:

    cargo tauri dev

    This compiles Mountain and opens the editor window. The first run downloads and compiles Rust dependencies from scratch — allow a few minutes on a fresh checkout. Subsequent builds use Cargo’s incremental compilation cache and are significantly faster.

  4. Create a branch from Current and make your changes. The project uses PascalCase naming for files, identifiers, and settings keys throughout the codebase.

  5. Open a pull request against the Current branch with a clear description of what changed and why.


Ways to Contribute

  • Code — Rust or TypeScript fixes, features, or performance improvements
  • Documentation — Correcting inaccuracies, adding missing context, or improving clarity on any doc page
  • Testing — Bug reports with reproductions, test coverage for Cocoon or Mountain
  • Design — UI/UX improvements for the editor or this website

Submodule Workflow

Each Land element (Mountain, Cocoon, Sky, Wind, Vine, Air, Echo, and others) is a separate Git repository referenced as a submodule. When working on a specific element:

cd Land/Mountain   # or whichever element
git checkout -b MyFeatureBranch
# make changes
git commit -m "Description"

Then update the submodule reference in the parent Land repo and open pull requests against both the element repo and the Land repo if the change affects the pinned submodule commit.


Code of Conduct

All participants are expected to be respectful. Read the full Code of Conduct before engaging.


Funding

Editor.Land is funded through the NGI0 Commons Fund (grant No. 101135429), operated by PlayForm (Sofia, Bulgaria) under the NLnet Foundation.


See Also