Bonfire - tend to your digital life in community. Customise and host your own online space and control your experience at the most granular level. https://bonfirenetworks.org
  • Elixir 43.7%
  • Rust 16.3%
  • Just 12.2%
  • Nix 8%
  • JavaScript 6.4%
  • Other 13.3%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
github-actions[bot] ce288b65b1
Automated changelog update (#2319)
changelog [skip ci]

Co-authored-by: mayel <115318+mayel@users.noreply.github.com>
2026-09-20 07:51:04 +01:00
.claude optimisations 2026-06-11 19:19:37 +01:00
.github rel 2026-09-15 16:46:52 +01:00
.sobelow Initial commit on new clean branch 2024-07-16 14:05:37 +02:00
.tx fixes 2026-08-12 22:36:36 +01:00
.zed Initial commit on new clean branch 2024-07-16 14:05:37 +02:00
benchmarks/load_test benchmark 2026-05-28 11:42:36 +02:00
config modularise 2026-09-20 00:51:26 +01:00
docs Automated changelog update (#2319) 2026-09-20 07:51:04 +01:00
gettext/en/LC_MESSAGES c2s 2026-08-21 18:59:58 +01:00
lib rel 2026-08-26 15:01:38 +01:00
LICENSES include licenses in docs 2025-02-04 14:10:01 +00:00
native/swiftui https://github.com/bonfire-networks/bonfire-app/issues/1043 2024-10-09 12:42:36 +02:00
nix Initial commit on new clean branch 2024-07-16 14:05:37 +02:00
priv modularise 2026-09-20 00:51:26 +01:00
rel rel 2026-08-26 09:24:37 +01:00
reports/dev/static/livemd arch 2024-11-07 14:18:13 +00:00
src-tauri misc 2026-07-01 10:35:59 +01:00
test prepare theme 2026-09-10 10:28:09 +02:00
.credo.exs Adding comment headers to selected files/folders as a demonstration of the REUSE Specification 2025-02-05 02:48:33 +13:00
.cursorignore Initial commit on new clean branch 2024-07-16 14:05:37 +02:00
.dockerignore Adding comment headers to selected files/folders as a demonstration of the REUSE Specification 2025-02-05 02:48:33 +13:00
.envrc .envrc: Update default Docker setting. 2025-10-22 14:35:45 +01:00
.formatter.exs Adding comment headers to selected files/folders as a demonstration of the REUSE Specification 2025-02-05 02:48:33 +13:00
.gitattributes Adding comment headers to selected files/folders as a demonstration of the REUSE Specification 2025-02-05 02:48:33 +13:00
.gitignore rel 2026-06-09 15:52:57 +02:00
.gitpod.Dockerfile Initial commit on new clean branch 2024-07-16 14:05:37 +02:00
.gitpod.yml Adding comment headers to selected files/folders as a demonstration of the REUSE Specification 2025-02-05 02:48:33 +13:00
.iex.exs Adding comment headers to selected files/folders as a demonstration of the REUSE Specification 2025-02-05 02:48:33 +13:00
.recode.exs Adding comment headers to selected files/folders as a demonstration of the REUSE Specification 2025-02-05 02:48:33 +13:00
.tool-versions docs 2026-09-18 08:12:26 +01:00
.yarnrc Adding comment headers to selected files/folders as a demonstration of the REUSE Specification 2025-02-05 02:48:33 +13:00
AGENTS.md docs: fix typos in AGENTS, HACKING and topic docs 2026-08-25 12:13:16 +01:00
ap-basic-profile-response.md misc 2026-05-27 10:53:13 +01:00
bonfire-workspace-generate.sh Initial commit on new clean branch 2024-07-16 14:05:37 +02:00
CloudronManifest.json cloudron support 2025-02-04 20:54:25 +00:00
deps-alpine-build.sh up 2026-08-27 11:50:40 +01:00
deps-alpine.sh Initial commit on new clean branch 2024-07-16 14:05:37 +02:00
deps-debian-build.sh up 2026-08-27 11:50:40 +01:00
deps-debian.sh Initial commit on new clean branch 2024-07-16 14:05:37 +02:00
deps-rhel-build.sh up 2026-08-27 11:50:40 +01:00
deps-rhel.sh rh 3 2026-05-19 17:24:09 +01:00
deps-test-browser.sh Initial commit on new clean branch 2024-07-16 14:05:37 +02:00
deps.nix Initial commit on new clean branch 2024-07-16 14:05:37 +02:00
docker-compose.release.yml search adapter improvements 2026-09-10 10:42:14 +01:00
docker-compose.yml search adapter improvements 2026-09-10 10:42:14 +01:00
Dockerfile.dev RUSTLER_BUILD_ALL 2025-05-15 23:27:49 +01:00
Dockerfile.old Initial commit on new clean branch 2024-07-16 14:05:37 +02:00
Dockerfile.release docs 2026-09-18 08:12:26 +01:00
flake.lock Initial commit on new clean branch 2024-07-16 14:05:37 +02:00
flake.nix Initial commit on new clean branch 2024-07-16 14:05:37 +02:00
git-publish.sh up 2026-09-14 23:45:33 +01:00
js-deps-get.sh up 2026-08-27 15:13:04 +01:00
justfile docs 2026-09-18 08:12:26 +01:00
Makefile Initial commit on new clean branch 2024-07-16 14:05:37 +02:00
manifest.scm Initial commit on new clean branch 2024-07-16 14:05:37 +02:00
masto_api_coverage.json up 2026-07-17 15:01:13 +02:00
mix.exs rel 2026-09-18 11:14:12 +01:00
mix.lock up 2026-09-20 00:53:44 +01:00
prepare-flavour-theme.sh prepare theme 2026-09-10 10:28:09 +02:00
props.nix Initial commit on new clean branch 2024-07-16 14:05:37 +02:00
README.md versions 2026-08-04 15:05:47 +02:00
SECURITY.md Update SECURITY.md 2025-07-02 09:48:42 +01:00
tool-versions-to-env.sh attempt fix 2025-12-14 19:31:26 +00:00

Bonfire Networks

Bonfire is an open-source framework for building federated digital spaces where people can gather, interact, and form communities online.

Bonfire wallpaper

Note

The release candidate of Bonfire Social 1.0 is ready! Other flavours of Bonfire are currently at alpha or beta stages.

Main characteristics

  1. Modular architecture: Bonfire consists of extensions that shape the functionality and user experience of each digital space. Communities can enable or disable these extensions to customize their space according to their needs and vision.
  2. Extensibility: Developers can create new extensions to expand the capabilities of digital spaces, such as adding new activities or introducing innovative user experiences for existing functions.
  3. Federation: Bonfire allows digital spaces to connect and communicate with each other, enabling users to interact across different communities while maintaining their unique identities and preferences.
  4. Flexibility: Whether you're an individual developer or part of a larger team, Bonfire provides a flexible framework for building and customizing digital spaces that cater to a wide range of communities and purposes.

Bonfire empowers developers and communities to create engaging, customizable, and interconnected digital spaces that foster collaboration, creativity, and social interaction online.

🔥 Apps / Flavours

This repo includes configurations to run a few main flavours of Bonfire you can choose from. Each flavour (see above) includes different extensions and default settings.

  • Ember for just the basics
  • Social for classical social networking (1.0)
  • Community with groups and topics functionality (1.0 beta)
  • Open Science building the next generation of open science platforms (alpha/beta)
  • Coordination for organising work and collaborating around projects and tasks (pre-alpha)
  • Cooperation for cooperative production, distribution, and exchange of economic resources (pre-alpha)

Release versions

Each flavour is released in different versions (though some flavours are still only available in alpha or beta). Here's how to choose:

Channel Stability Federation safe? Best for
Stable (e.g: 1.0) Thoroughly tested Yes Running a server; please report any bugs you find
RC (release candidate) Ready for broad testing Yes Early adopters who want to help catch issues before stable; please report bug and confusing features
Beta New features in progress; existing functionality should hold With caution Participating in co-design and giving input on new features and UX; please focus bug reports on pre-existing functionality
Alpha Work in progress, may be broken No, turn off federation Developers and contributors comfortable with breakage

🧩 Extensions

All of the features and user interface elements in Bonfire are implemented in extensions, with the code for each being in a separate repository.

How to get the most out of the documentation

  • Developers: You'll probably be interested in understanding how to build on Bonfire. The dev setup will guide you through the installation of bonfire on your local machine. In the Just commands page you will gain familiarities with the basic Bonfire CLI commands. From there you may want to continue developing a new extension, or learning more about the internals and the Bonfire architecture.

  • Users: Whether you are a user who is looking for an existing digital place to join, or want to understand more about how Bonfire works and how to get the most out of it, the Community Manual is a good place to start. There you can learn about how to customize your experience, what boundaries are and how to experience a new and safer way to interact with federated social networks.

  • Community organisers & sysadmins: Ready to launch your digital space? We got you covered on our hosting guide.

Prerequisite knowledge

Bonfire aims to be beginner-friendly, but to keep the documentation focused on the framework's functionalities, we assume a basic understanding of the following technologies:

Bonfire also provides a GraphQL API for developers who want to build custom frontends.

Throughout the documentation, we'll make sure to provide links to relevant resources when introducing new concepts to help you along the way. We have a strong affinity for Elixir and believe it's a powerful language for building scalable and maintainable social networks.

Join our community

If you have questions about anything related to Bonfire, you're always welcome to ask our community on Matrix, Slack, Elixir Forum and the Fediverse or send us an email at team@bonfire.cafe.

Funding

This project has received funding from NGI0 Discovery and NGI0 Entrust, funds established by NLnet with financial support from the European Commission's Next Generation Internet programme. Learn more at the NLnet project page (also for previous projects )

NLnet foundation logo NGI Zero Logo NGI Zero Logo

Copyright (c) 2020-2026 Bonfire Contributors

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License along with this program. If not, see https://www.gnu.org/licenses/.