diff --git a/README.md b/README.md new file mode 100644 index 0000000..bbd1732 --- /dev/null +++ b/README.md @@ -0,0 +1,52 @@ +# radicle-git + +The home for all Git utilities related to Radicle. While the majority +of the utilities will attempt to be general, there may be more +opinionated parts that are geared towards Radicle. + +## Motivation + +The [git2] and [gitoxide] libraries provide low-level APIs for +interacting with git repositories and the git protocol. This family of +crates attempts to provide a higher-level wrapper around those to +provide a more useful API for the Radicle protocol and UI clients +building on top of the protocol. + +## Overview + +The repository is defined as a series of crates: + +* `git-ext` -- provides higher-level types over common types found in `git2`. +* `git-ref-format` -- provides a higher-level API for constructing git. + reference paths. Prefer this over `git-ext`'s `RefLike` and `RefspecPattern`. +* `git-trailers` -- provides a way to parse and construct git trailers. +* `git-types` -- provides higher-level types, e.g. `Namespace`, + `Reference`, `Remote`, etc. +* `link-git` -- provides a higher-level API for git's `refdb`, `odb`, + and the git protocol. +* `macros` -- provides macros for the `git-ext` references types. +* `std-ext` -- provides some utilities extending the standard library. +* `test` -- a shim crate that refers depends on all other, individual + test crates. + +## Tests + +Please refer to [test/README.md][test] for understanding how our tests +are organised. + +## Contribute + +Please read [CONTRIBUTING.md][contrib] for a guide on contributing to +this repository. + +## Credits + +Thanks to the previous maintainers of the `radicle-link` repository, +Kim, Alex, and Fintan, for providing the foundation to work upon -- as +well as the [contributors][link-contributors]. + +[contrib]: ./CONTRIBUTING.md +[git2]: https://github.com/rust-lang/git2-rs +[gitoxide]: https://github.com/Byron/gitoxide +[link-contributors]: https://github.com/radicle-dev/radicle-link/graphs/contributors +[test]: ./test/README.md