BizzFed — föderiertes berufliches Netzwerk (ActivityPub)
  • TypeScript 97.2%
  • CSS 1.9%
  • JavaScript 0.8%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
root 8b5b6539dd
Some checks failed
CI / lint-typecheck-test (push) Failing after 1m43s
CI / test-db (push) Successful in 3m22s
fix: Auto-Rueck-Navigation auf Externer-Link-Seite entfernt (Fider #372 Regression)
Werner meldete, dass der gestrige Fix (setTimeout-verzoegertes router.back())
das Problem nicht behebt -- "Fortfahren" fuehrt auf iPadOS weiterhin nur
zurueck zum Feed, in allen Browsern. Root Cause ist keine Timing-Frage:
WebKit haengt einen per target="_blank" geoeffneten Tab als Kind des
Ursprungs-Tabs ein und schliesst dieses Kind automatisch, sobald der
Ursprungs-Tab per history.back() navigiert -- unabhaengig von der Verzoegerung.
Da alle iOS-Browser WebKit nutzen muessen, betrifft das dort ausnahmslos jeden
Browser. Einzig robuster Fix: die in #343 eingefuehrte automatische
Rueck-Navigation komplett entfernen, Stand vor #343 wiederhergestellt.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013NSpvneTzMtuJTQ415rPbp
2026-09-15 12:16:22 +02:00
.forgejo/workflows feat: Redirect-Confirm springt zurueck + Kontrast-Token-CI-Check (Fider #343+#344) 2026-08-24 07:45:08 +02:00
apps fix: Auto-Rueck-Navigation auf Externer-Link-Seite entfernt (Fider #372 Regression) 2026-09-15 12:16:22 +02:00
packages feat: Fider #366 reziproker Folge-Status + #284 föderierte Profil-Felder 2026-09-12 11:51:43 +02:00
scripts feat: echten Software-Stand in NodeInfo + Mastodon-Instance-Endpoint (F4) 2026-07-24 08:41:04 +02:00
.dockerignore feat(sh2): Produktions-Docker-Setup — Dockerfiles + docker-compose.prod.yml 2026-06-08 09:14:25 +02:00
.env.prod.example fix: LEGAL_OPERATOR_ADDRESS auf Komma-Trennung statt \n umgestellt 2026-07-29 11:15:28 +02:00
.gitignore feat: echten Software-Stand in NodeInfo + Mastodon-Instance-Endpoint (F4) 2026-07-24 08:41:04 +02:00
.npmrc feat: Q1 ESLint+Prettier-Setup, Q7 reproduzierbare Dependency-Kontrolle (Fider #113) 2026-06-20 10:42:43 +02:00
.prettierignore feat: Q1 ESLint+Prettier-Setup, Q7 reproduzierbare Dependency-Kontrolle (Fider #113) 2026-06-20 10:42:43 +02:00
.prettierrc.json feat: Q1 ESLint+Prettier-Setup, Q7 reproduzierbare Dependency-Kontrolle (Fider #113) 2026-06-20 10:42:43 +02:00
AGENTS.md docs: Q3 AGENTS.md (Fider #113) 2026-06-20 13:03:43 +02:00
AI-NOTICE.md docs: Quellcode-Links von Codeberg auf forgejo.bizzfed.de umstellen 2026-08-06 14:08:05 +02:00
API.md feat: Codeberg #26 - Jobs-Relay-Actor für bessere Föderations-Reichweite 2026-07-16 15:08:39 +02:00
ARCHITECTURE.md docs: update ARCHITECTURE.md for bidirectional Event federation (#95) 2026-06-27 15:07:50 +02:00
CONTRIBUTING.md chore(quality): Automatisierung nachziehen, damit Security-Drift nicht mehr unbemerkt bleibt 2026-08-02 16:03:33 +02:00
docker-compose.prod.yml fix: generateMetadata()-Fetches erreichten den Server-Container auf Hetzner nie 2026-07-09 11:42:54 +02:00
docker-compose.yml chore: Log-Rotation für Docker-Infra-Container ergänzen (V4 Produktions-Hardening, CT 200) 2026-08-02 15:17:44 +02:00
INSTALL.md feat: Feedback-Link (Bugs/Feature-Requests) in Profilmenü, /about, Landing-Footer 2026-09-06 12:08:59 +02:00
instances.json docs: Quellcode-Links von Codeberg auf forgejo.bizzfed.de umstellen 2026-08-06 14:08:05 +02:00
LICENSE docs: AGPL-3.0 LICENSE-Datei ergänzt (war leer) 2026-06-23 08:03:58 +02:00
package.json chore: Version-Bump 1.0.0 -> 1.1.0 (Fider-Batch #330-337 + F332) 2026-08-19 11:06:16 +02:00
pnpm-lock.yaml fix: pnpm-lock.yaml mit falscher lokaler pnpm-Version (9.15.9) erzeugt 2026-08-16 11:17:30 +02:00
pnpm-workspace.yaml chore(quality): Automatisierung nachziehen, damit Security-Drift nicht mehr unbemerkt bleibt 2026-08-02 16:03:33 +02:00
README.md feat: Medienkit-Seite (/media-kit) für Presse und Community 2026-08-02 16:56:49 +02:00
renovate.json chore(quality): Automatisierung nachziehen, damit Security-Drift nicht mehr unbemerkt bleibt 2026-08-02 16:03:33 +02:00
TODO.md docs: Blogpost zum KI-Entwicklungsworkflow auf TODO (Q8) 2026-08-06 15:32:34 +02:00
tsconfig.base.json feat: initial BizzFed monorepo scaffold 2026-05-23 16:28:18 +02:00
turbo.json test: Q4 Vitest-Grundgerüst + 45 Regressionstests, dabei echten SSRF-Bug gefunden+gefixt (Fider #113) 2026-06-20 13:41:39 +02:00

BizzFed

Federated professional network based on ActivityPub.

License: AGPL v3

BizzFed is a decentralized alternative to LinkedIn — without tracking, without algorithms. Accounts live on independent instances and communicate via ActivityPub (the same protocol used by Mastodon). Profiles, job postings, and connections are portable across instances.

Live instance: bizzfed.de


Features

  • Federated profiles (@handle@instance.tld) compatible with Mastodon and other ActivityPub software
  • Job postings as first-class ActivityPub objects (federated across instances)
  • Skills, endorsements, career history, education, projects
  • Direct messages, notifications, bookmarks
  • Company accounts with team pages and job listings
  • Polls, hashtags, mentions, link preview cards
  • Post scheduling, editing, deletion (with AP Update/Delete activities)
  • GDPR data export (Art. 20) — ZIP with all personal data
  • Contact lists, shadow fields, vCard export (RFC 6350)
  • Admin panel with federation controls, audit log, health monitoring
  • Rate limiting, HTTP Signatures (Mastodon-compatible), RSA-4096 keypairs

Tech Stack

Layer Technology
Frontend Next.js 15 (App Router), Tailwind CSS v4
Backend Hono on Node.js 22
Database PostgreSQL 16 (Drizzle ORM)
Queue BullMQ + Redis 7
Media MinIO (S3-compatible)
Infrastructure Docker Compose
Federation ActivityPub S2S, HTTP Signatures

Self-Hosting

See INSTALL.md for the full guide.

Requirements (minimum): 2 GB RAM, 20 GB disk, Docker 24+, a public domain with HTTPS


Development

# Prerequisites: Node.js 22, pnpm 11, Docker

# Install dependencies
pnpm install

# Start infrastructure (Postgres, Redis, MinIO)
docker compose up -d

# Apply database schema
pnpm db:push

# Start all apps in dev mode
pnpm dev

Frontend runs on :3000, API on :3001.


Contributing

Issues and pull requests are welcome. Please open an issue first for larger changes.

This project uses Conventional Commits.


License

Copyright (C) 2026 René Hamdorf

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.

See LICENSE for details. Full license text: https://www.gnu.org/licenses/agpl-3.0.txt

Hinweise zur KI-gestützten Entwicklung und urheberrechtlichen Einordnung: siehe AI-NOTICE.md. BizzFed ist ein aktiv und fortlaufend menschlich betreutes Projekt mit echter Nutzerbasis (kein autonom generiertes Wegwerfprojekt).