The Docker Hub image is the canonical published release artifact for this repository.
This repository contains the full FediSuite application source code and everything required to build and publish Docker images.
Project website: https://www.fedisuite.com
It is the canonical source/build repository for the project.
FediSuite currently has several important public URLs with different purposes.
- Project website / landing page: https://www.fedisuite.com
- Self-hosting repository: https://github.com/christinloehner/FediSuite
- Source code, bug reports and contributions: https://github.com/christinloehner/FediSuite-Docker-Image
- Published Docker image for self-hosters: https://hub.docker.com/r/christinloehner/fedisuite
In short:
- If you want to learn about FediSuite, start at the website.
- If you want to self-host FediSuite, use the
FediSuiterepository with the deployment files. - If you want to report bugs or work on the application itself, use this repository.
- If you want the ready-to-run container image, use Docker Hub.
We’re using a slightly special versioning philosophy:
- The first number is the major version and represents really big changes.
- The second number is for new features and important bug fixes.
- The third number represents bleeding-edge versions.
The last number gets bumped for test releases. Once all tests are successful, the second number is increased, which basically means it is a production release.
So keep this in mind: for a production setup, you should only update when the second number changes.
If you find a bug or if you want to contribute, please either file a bug
report or read the CONTRIBUTING.md here:
https://github.com/christinloehner/FediSuite-Docker-Image
Use this repository when you want to:
- develop the application
- change frontend or backend code
- run source-based local tests
- build Docker images
- publish images to Docker Hub / GHCR
Self-hosters should use the separate deployment repository instead of this one:
- full frontend source in
src/ - full backend source in
server/ - static assets in
public/andlogo/ Dockerfilepackage.json/package-lock.json- GitHub Actions for CI and Docker publishing
docker-compose.build.ymlfor local source-based validation- project docs such as
CONTRIBUTING.md,SECURITY.md,AGENTS.md
For source-based local validation:
cp .env.example .env
docker compose -f docker-compose.build.yml up -d --buildFor direct frontend build verification:
npm ci
npm run buildFor real image-build verification:
docker build -t fedisuite-build-repo-test .This repo keeps the fuller .env.example because it may be used for:
- local source validation
- image build verification
- optional frontend branding at build time
Notable groups:
- runtime/backend variables such as
DATABASE_URL,JWT_SECRET,APP_URL - worker/background flags such as
ENABLE_SCHEDULER,ENABLE_POSTS_REFRESH - optional frontend build-time branding variables such as
VITE_APP_NAME
The GitHub Actions workflow under .github/workflows/docker-publish.yml is
intended to publish multi-arch images on release tags.
Expected secrets:
DOCKERHUB_USERNAMEDOCKERHUB_TOKEN
Typical release flow:
- push changes to the source repository
- create a release tag
- let GitHub Actions build and publish the image
- update the deployment repository to use the desired image tag if needed
The separate deployment repo should only pull published images built from this repository.
That means:
- this repo contains source code and image-build logic
- the other repo contains compose/env/docs only
Do not collapse the two concerns again unless that separation is intentionally being redesigned.
- keep timestamps stored in UTC
- keep
server/init-db.jsidempotent - do not reintroduce proprietary support widgets or private infrastructure assumptions
- keep the Dockerfile builder and runtime stages aligned
- do not assume self-hosters will compile the app locally
FediSuite is licensed under the GNU GPL v3.0.