README.md -rw-r--r-- 5.2 KiB

πŸŒ„ Ayllu

Ayllu is a hyper performant & hackable code forge optimized for single instance deployments. It leverages the distributed nature of Git with a variety of standards based integrations.

Ayllu might fit the following use cases well:

  • A drop-in replacement for gitweb allowing you to browse your repositories locally.
  • Self-hosted personal project pages with lots of customizability.
  • Small to medium sized community projects.

Name

The name Ayllu /ˈajʎu/, eye-joo is the Quechua word for the traditional form of a community in the Andes region of South America, particularly in Bolivia and Peru.

Project Status & Collaboration

Please note that this is still a work in progress and the project’s canonical home is at ayllu-forge.org. To facilitate collaboration we have mirrors available at codeberg and sourcehut. Please feel free to use which ever platform you prefer, eventually we will import both platforms into Ayllu.

Tickets

codeberg sourcehut

Patches

codeberg sourcehut

Chat

A general development channel #ayllu is available on libera.

Features

Feature Status Notes
git-log βœ…
git-clone (http & ssh) βœ…
git-notes TODO
git-blame βœ…
git-lfs βœ…
git-verify βœ…
refs (tags & branches) βœ…
release exporting βœ…
blob rendering βœ…
tree/file browsing βœ…
patch generation βœ…
markdown rendering βœ…
diff generation βœ…
syntax highlighting βœ… via tree-sitter
source code analysis βœ…
full featured rss support βœ…
customizable themes βœ…
static hosting βœ…
activity tracking βœ…
extensible plugin system βœ…
WebFinger βœ…
mailing list support WIP
xmpp integration WIP
activity pub based federation TBD
continuous integration TODO
graphql api TODO
centralized β€œhub” TODO

Installation

See the installation section in the documentation

Compiling From Source

Ayllu is written in rust and you’ll need its compiler to build the project. Additionally you also must have the following installed on your system:

You can run the check_build_dependencies.sh script to verify you have all the necessary software on your system.

# check your build dependencies
scripts/check_build_dependencies.sh
# intialize the sqlite database
scripts/init_db_if_missing.sh
# install pico css
npm install
# build the project
cargo build