MCPSERV.CLUB
Known

Known

Self-Hosted

Open‑source social publishing for groups and individuals

Stale(68)
1.1kstars
0views
Updated Jun 12, 2025
Known screenshot 1
1 / 4

Overview

Discover what makes Known powerful

Known is a self‑hosted, multi‑author publishing engine that blends blog‑style content management with social networking features. From a developer’s perspective, it functions as a modular PHP framework that exposes a REST‑like API for content creation, user management, and social interactions. The core engine handles routing, templating, and persistence while allowing developers to inject custom plugins or themes. Its design prioritizes extensibility: every major feature—posts, comments, tags, feeds—is implemented as a pluggable component that can be overridden or extended via Composer autoloading.

Language & Core

Frameworks & Libraries

Database

Deployment

Overview

Known is a self‑hosted, multi‑author publishing engine that blends blog‑style content management with social networking features. From a developer’s perspective, it functions as a modular PHP framework that exposes a REST‑like API for content creation, user management, and social interactions. The core engine handles routing, templating, and persistence while allowing developers to inject custom plugins or themes. Its design prioritizes extensibility: every major feature—posts, comments, tags, feeds—is implemented as a pluggable component that can be overridden or extended via Composer autoloading.

Architecture

  • Language & Core: PHP 8.1+ with strict typing and modern language features (attributes, union types). The framework follows a lightweight MVC pattern but leans heavily on dependency injection containers to keep modules decoupled.
  • Frameworks & Libraries: Uses Symfony components (Routing, Console, EventDispatcher) for core infrastructure. Twig powers templating; Doctrine ORM or PDO can be swapped for data access. The event system allows plugins to hook into lifecycle events such as post.published or user.registered.
  • Database: Supports MySQL, MariaDB, and PostgreSQL. The schema is intentionally simple (users, posts, comments, tags, settings) but can be extended via custom tables. Schema migrations are handled by Doctrine Migrations.
  • Deployment: The application is fully compatible with LAMP/LEMP stacks and can be containerized using Docker. Official Docker images are available, simplifying CI/CD pipelines. For larger deployments, a reverse proxy (NGINX or Apache) can serve static assets while PHP-FPM handles dynamic requests.

Core Capabilities

  • API: REST‑style endpoints for CRUD operations on posts, comments, users, and tags. OAuth2 support is optional via a plugin, enabling third‑party integrations.
  • Webhooks: Exposes event hooks that external services can subscribe to, such as post.created or comment.deleted. This allows real‑time integrations with chat platforms, analytics, or CI tools.
  • RSS/Atom/JSON: Built‑in feed generators for public content, with support for pagination and selective filtering.
  • IndieWeb: Implements WebMention, microformats, and ActivityPub endpoints to participate in the decentralized web ecosystem.
  • Rich Text & Markdown: Dual editors (WYSIWYG and Markdown) that output sanitized HTML, making it easy to embed in other sites or export.

Deployment & Infrastructure

Known is designed for self‑hosting on any web server that supports PHP 8.1+. It requires a writable cache directory and optional Redis or Memcached for session handling. For production, recommended practices include:

  • Using a dedicated database user with least‑privilege permissions.
  • Enabling HTTPS via Let’s Encrypt or corporate certificates.
  • Scaling horizontally by running multiple PHP workers behind a load balancer; the stateless nature of requests means no sticky sessions are required.
  • Leveraging Docker Compose for local development or Kubernetes manifests for cloud deployments.

Integration & Extensibility

  • Plugin System: Developers can create Composer packages that register services, routes, or event listeners. The plugin API is documented in the official docs and encourages use of Symfony bundles.
  • Theme Engine: Twig templates can be overridden by placing files in a themes/ directory. Themes can also provide their own CSS, JS, and static assets.
  • Custom Fields & Metadata: The post entity exposes a JSONB field for arbitrary metadata, allowing developers to store structured data without schema changes.
  • CLI Tools: Artisan‑like console commands (e.g., known:user:create) aid in scripting and automation.

Developer Experience

Known’s documentation is comprehensive, covering installation, configuration, API usage, and plugin development. The community mailing list and IRC channel provide rapid support for edge cases. GitHub issues are triaged with clear labeling, and contributors benefit from a well‑structured repository layout. The Apache 2.0 license grants full freedom to modify and redistribute, which is attractive for internal tooling or commercial deployments.

Use Cases

  • Community Portals: Create a fully featured, multi‑author site for clubs, hobby groups, or local communities with minimal overhead.
  • Personal Publishing: A single‑user blog that supports Markdown, photos, and RSS feeds—ideal for writers or developers who want a self‑hosted alternative to Medium.
  • Enterprise Knowledge Base: Leverage the tagging and permission system to build an internal documentation hub that integrates with existing authentication providers.
  • Decentralized Web Projects: Use the IndieWeb features to interoperate with other microblogging platforms, enabling cross‑site commenting and content discovery.

Advantages

  • Performance & Flexibility: PHP 8.1’s JIT and the lightweight framework keep request times low while offering deep customization.
  • Open Source & Licensing: Apache 2.0 ensures no royalty obligations, making it suitable for commercial products.
  • Ecosystem Integration: Native support for IndieWeb, OAuth2, and webhooks reduces the need for external services.
  • Community & Support: Active contributors and a responsive mailing list mean issues are resolved quickly, and new features are added regularly.

In short, Known offers a robust, extensible platform for developers who need a self‑hosted, social publishing engine without the constraints of proprietary SaaS solutions.

Open SourceReady to get started?

Join the community and start self-hosting Known today