# moonbitlang/core [![check](https://github.com/moonbitlang/core/actions/workflows/stable-check.yml/badge.svg)](https://github.com/moonbitlang/core/actions/workflows/stable-check.yml) [![Coverage Status](https://coveralls.io/repos/github/moonbitlang/core/badge.svg?branch=main)](https://coveralls.io/github/moonbitlang/core?branch=main) [![doc](https://img.shields.io/badge/docs-mooncakes.io-green)](https://mooncakes.io/docs/moonbitlang/core) moonbitlang/core is the standard library of the [MoonBit language](https://www.moonbitlang.com/). It is released alongside the compiler. You can view the documentation for the latest official release at . This repository serves as the development repository. ## Architecture at a glance Almost every package in this repository sits on top of `builtin`, which is available in every MoonBit program without an import (`builtin` itself bootstraps on the tiny `abort` package). `prelude` is opened automatically and re-exports the commonly used names from `builtin` plus a few companions (`Debug`, `BigInt`, `Ref`, `Lazy`, test assertions, …). Everything else is an ordinary package imported as `moonbitlang/core/` and used via `@`: ```mermaid graph BT builtin["builtin (implicitly available, no import)
Array · FixedArray · Map · String · Bytes · views
Iter · StringBuilder · Json
traits: Eq · Compare · Hash · Show · ToJson · Default"] prelude["prelude — auto-opened re-exports
from builtin, debug, test, bigint, …"] --> builtin values["value types
bool · byte · char · unit · option · result
error · ref · tuple · cmp · range · lazy"] --> builtin numbers["numerics
int · uint · int16 · uint16 · int64 · uint64
double · float · bigint · v128 · math"] --> builtin text["text & binary
string · bytes · buffer · encoding/*
lexbuf"] --> builtin mut["mutable collections
array · hashmap · hashset · deque · queue
priority_queue · set · sorted_map · sorted_set"] --> builtin imm["immutable collections
list · lazy_list · immut/vector
immut/hashmap · immut/sorted_map · …"] --> builtin tools["algorithms & tooling
json · diff · random · quickcheck · argparse
bench · test · debug · env"] --> builtin ``` ## Current status It is experimental and under active development. At this early stage, our primary focus is on enhancing the functionality of `moonbitlang/core`. ⚠️**The API is subject to change.** ## Contributing We are actively developing moonbitlang/core and appreciate your help! To contribute, please read the contribution guidelines at [CONTRIBUTING.md](./CONTRIBUTING.md). ### Being a collaborator Note we regularly evaluate external contributions and invite active contributors to join us as collaborators, thank you! To keep the contributors manageable, we will revoke commit rights if external collaborators are not active for over 6 months.