MCPSERV.CLUB
Hubzilla

Hubzilla

Self-Hosted

Decentralized social platform for privacy‑first collaboration

Stale(40)
0stars
0views

Overview

Discover what makes Hubzilla powerful

Hubzilla is a self‑hosted, federated social networking engine that blends traditional web‑app patterns with the principles of the fediverse. At its core it exposes a *privacy‑first* identity, communication and permission system built on top of standard web technologies. The platform can serve as a single website or be extended into a network of interconnected nodes that share content, users and conversations. From a developer’s perspective it is essentially a modular PHP framework with RESTful endpoints, WebSocket hooks and a rich plugin ecosystem that lets you expose new features or integrate with external services.

Decentralized Identity & SSO

Fine‑Grained Access Control

Federated Forums & Conversation Containers

Extensible Plugin Architecture

Overview

Hubzilla is a self‑hosted, federated social networking engine that blends traditional web‑app patterns with the principles of the fediverse. At its core it exposes a privacy‑first identity, communication and permission system built on top of standard web technologies. The platform can serve as a single website or be extended into a network of interconnected nodes that share content, users and conversations. From a developer’s perspective it is essentially a modular PHP framework with RESTful endpoints, WebSocket hooks and a rich plugin ecosystem that lets you expose new features or integrate with external services.

Key Features

  • Decentralized Identity & SSO – Hubzilla implements the Nomadic Identity model, allowing users to move their account across servers while preserving all relationships and content. The Single Sign‑On API lets external sites authenticate against a Hubzilla node without storing passwords locally.
  • Fine‑Grained Access Control – Every post, file or group can be tagged with a permission mask that is evaluated against the user’s role and relationship graph. The API exposes these masks as JSON objects, making it straightforward to build custom UI or automate moderation.
  • Federated Forums & Conversation Containers – Forum data is stored in a relational schema that mirrors the underlying activity‑streams format. Developers can subscribe to activitypub events or use Hubzilla’s native WebSocket feed to build real‑time dashboards.
  • Extensible Plugin Architecture – The core is split into addons, themes and widgets. Addons are PHP classes that register hooks (e.g., on_post_create) and can expose new REST endpoints. Themes are pure CSS/JS overrides, while widgets provide reusable UI components that can be dropped into any page.

Technical Stack

LayerTechnology
Web ServerApache / Nginx (mod_php or PHP‑FPM)
BackendPHP 7.4+ with Zend Framework‑style MVC
DatabaseMySQL / MariaDB (schema is fully normalized, with optional SQLite for lightweight deployments)
Real‑TimeWebSocket (Ratchet) for live feeds and notifications
FederationActivityPub compliant endpoints, plus custom JSON‑LD payloads for private channels
TestingPHPUnit + Behat integration tests, CI via GitHub Actions

The framework is intentionally lightweight; it relies on common PHP libraries (Guzzle, Symfony Components) rather than a monolithic stack. This keeps the footprint small and makes it easy to drop Hubzilla into existing LAMP or LEMP environments.

Deployment & Infrastructure

  • Self‑Hosting – A single server can run a Hubzilla node; the application is file‑based and requires only PHP, MySQL and a web server. The install script creates the necessary database schema automatically.
  • Scalability – Horizontal scaling is achieved by running multiple nodes behind a load balancer. Each node can act as a federation relay, synchronizing content via ActivityPub. For heavy read traffic, a CDN or reverse‑proxy cache (Varnish/NGINX) can be added.
  • Containerization – Official Docker images are available on Docker Hub. The image exposes ports 80/443 and uses environment variables for database credentials, making it trivial to deploy in Kubernetes or Docker‑Compose setups.

Integration & Extensibility

Developers can extend Hubzilla through:

  • REST APIs – Endpoints such as /api/v1/post, /api/v1/user allow CRUD operations on core entities. OAuth2 support lets third‑party apps authenticate users.
  • Webhooks – Configure a URL to receive POST notifications on events like post_created or user_registered. Useful for integrating with external moderation tools or analytics services.
  • SDKs – While no official SDK exists, the public API follows standard JSON‑API conventions, enabling easy wrappers in any language.
  • Custom Widgets – Write a PHP class that implements the Widget interface and register it via the addon manifest. The widget can then be embedded in any page with a simple tag.

Developer Experience

  • Documentation – The official docs contain an API reference, addon development guide and migration notes. Though dated in places, the community forum is active and offers rapid answers to integration questions.
  • Configuration – A single config.php file holds database credentials, site URL and feature flags. Advanced users can tweak the permission system or add custom hooks without touching core code.
  • Community & Support – A dedicated developer forum and GitHub repositories provide issue tracking, pull‑request reviews and a clear contribution workflow. The project’s 15‑year history guarantees stability and backward compatibility for most core features.

Use Cases

  1. Private Enterprise Social Platform – Companies can host a Hubzilla instance to provide an internal microblog, file sharing and discussion forums with full control over data residency.
  2. Federated Non‑Profit Networks – NGOs that require secure, privacy‑respecting communication can deploy a cluster of Hubzilla nodes to share resources while keeping sensitive content local.
  3. Academic Collaboration – Universities can use Hubzilla to host research groups, schedule meetings and manage shared datasets with fine‑grained access control.
  4. Developer Communities – Open source projects can embed Hubzilla as a forum and issue tracker, leveraging its ActivityPub integration to surface community activity on the broader fediverse.

Advantages

  • Performance & Flexibility – The lightweight PHP core keeps memory usage low, while the plugin system allows developers to add only what they need.
  • Licensing – Released under a permissive open‑source license, Hubzilla can be modified and

Open SourceReady to get started?

Join the community and start self-hosting Hubzilla today