Everything that runs mochela.it is free software: the server configuration, the scripts and the operations guide. We publish it here, on our own server, with no third-party platform.
Everything can be read here. The full repository, history included, is available on request at forgy@mochela.it.
What is in it
- The Ansible playbooks that build the whole cluster: mail, messaging, video calls, replicated database and storage, WireGuard networks, data encryption, checks and backups.
- The laptop scripts: Borg backup, external observer, OpenPGP key publishing.
- The full operations guide, step by step, in Italian, and an overview in English (
docs/OVERVIEW.md).
How it was made
mochela is designed, tested and run by one person. Most of the code and of the guide was written with an AI assistant, Anthropic's Claude, following that person's instructions. Theirs are the architecture and the requirements, every decision and every change (each checked with a dry run before it is applied), the tests on the three production servers and the day-to-day running.
The code has not been independently audited: read it before you use it on your own servers. Every release says in its history that the content was written with AI assistance. Details, copyright included, in the README, under How this was made.
What is not in it, on purpose
The encrypted Vault with the secrets, the administrator's personal variables, users' public keys, the nodes' addresses and the providers' names. Every release is a cleaned copy of the working repository, checked before it goes out.
Status
In experimental use, still being developed. What is still done by hand, or has not yet been tested from scratch on new servers, is listed in the README, under Known gaps. The goal is an installer that asks for the details and prepares everything by itself.
Licences: code under AGPL-3.0-or-later (whoever runs a modified version as a network service must offer its source to their users), texts under CC BY-SA 4.0.
Comments and suggestions
The working repository is not reachable from the Internet, so there is no public issue tracker: just write. For security issues, preferably encrypted (contact), and give us time to fix them before making them public.