Skip to content

CodeEditorLand/Maintain

Maintain

💪🏻

+

🏞️


Maintain 💪🏻

Build pipelines that change behavior based on environment variables, implicit tool versions, or undeclared dependencies make debugging production issues impossible. The same commit produces different output on different machines.

"Deterministic builds. Same commit, same output, guaranteed."

License: CC0-1.0 Crates.io Rust Version Rhai Version

Maintain builds the entire Land ecosystem with Rhai scripting for flexible build logic, compile-time validated TOML and JSON5 configurations, and deterministic artifact generation. GritQL queries handle automated refactoring across the codebase. The same commit always produces the same output across all machines.

📖 Rust API Documentation


What It Does 🔐

  • Rhai scripting. Flexible build logic without shell script fragility.
  • Deterministic output. Same commit, same artifacts, across all machines and CI environments.
  • GritQL refactoring. Automated codebase-wide refactoring with structural pattern matching.
  • Compile-time config. TOML and JSON5 configurations validated at build time.

In the Ecosystem 💪🏻 + 🏞️

graph LR
classDef maintain fill:#f9f,stroke:#333,stroke-width:2px;
classDef script fill:#9cf,stroke:#333,stroke-width:1px;
classDef config fill:#ffc,stroke:#333,stroke-width:1px;

subgraph "Maintain 💪🏻 (Build System)"
CLI["CLI Interface"]:::maintain
RhaiEngine["Rhai Script Engine"]:::maintain
ConfigEditor["Config Editor (TOML/JSON5)"]:::maintain
EnvResolver["Environment Resolver"]:::maintain

CLI --> RhaiEngine
CLI --> ConfigEditor
RhaiEngine --> EnvResolver
end

subgraph "Scripts"
DebugSh["Debug.sh"]:::script
DevMountain["Dev-Mountain.sh"]:::script
ReleaseSh["Release.sh"]:::script
end

CLI -.-> DebugSh
CLI -.-> DevMountain
CLI -.-> ReleaseSh

subgraph "Configuration"
CargoTOML["Cargo.toml"]:::config
JSON5Config["*.json5"]:::config
end

ConfigEditor --> CargoTOML
ConfigEditor --> JSON5Config
Loading

Development 🛠️

Maintain is a component of the Land workspace. Follow the Land Repository instructions to build and run.


License ⚖️

CC0 1.0 Universal. Public domain. No restrictions. LICENSE


See Also

Funding & Acknowledgements 🙏🏻

Code Editor Land is funded through the NGI0 Commons Fund, established by NLnet with financial support from the European Commission's Next Generation Internet programme, under grant agreement No. 101135429.

The project is operated by PlayForm, based in Sofia, Bulgaria.

PlayForm acts as the open-source steward for Code Editor Land under the NGI0 Commons Fund grant.

Land PlayForm NLnet NGI0 Commons Fund
Land PlayForm NLnet NGI0 Commons Fund

Project Maintainers: Source Open (Source/Open@Editor.Land) | GitHub Repository | Report an Issue | Security Policy

About

Maintain 💪🏻 + Land 🏞️

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

Packages

 
 
 

Contributors

Languages