liberusoftware / social-network-laravel
Liberu social network Laravel application.
Package info
github.com/liberusoftware/project-social-network-laravel-filament
Type:project
pkg:composer/liberusoftware/social-network-laravel
Fund package maintenance!
Requires
- php: ^8.5
- bezhansalleh/filament-shield: ^4.3.1
- bursteri/socialstream: ^7.0.0
- filament/filament: ^5.11.0
- filament/spatie-laravel-settings-plugin: ^5.11.0
- laravel/framework: ^13.38.0
- laravel/horizon: ^5.50.1
- laravel/jetstream: ^5.5.3
- laravel/octane: ^2.22.0
- laravel/pulse: ^1.8.1
- laravel/reverb: ^1.12.0
- laravel/sanctum: ^4.3.3
- laravel/socialite: ^5.31.0
- laravel/tinker: ^3.0.2
- liberusoftware/activity-comments: ^1.0
- liberusoftware/analytics-contracts: ^1.0
- liberusoftware/analytics-core: ^1.0
- liberusoftware/analytics-google: ^1.0
- liberusoftware/analytics-meta: ^1.0
- liberusoftware/api-access: ^1.0
- liberusoftware/application: ^1.0
- liberusoftware/audit: ^1.0
- liberusoftware/composer-installer: ^1.1
- liberusoftware/currency-context: ^1.0
- liberusoftware/developer-experience: ^1.0
- liberusoftware/feature-flags: ^1.0
- liberusoftware/files-media: ^1.0
- liberusoftware/identity-core: ^1.0
- liberusoftware/identity-core-filament: ^1.0
- liberusoftware/identity-socialstream: ^1.0
- liberusoftware/import-export: ^1.0
- liberusoftware/integrations: ^1.0
- liberusoftware/jetstream-bridge: ^1.0
- liberusoftware/localization-contracts: ^1.0
- liberusoftware/localization-core: ^1.0
- liberusoftware/localization-core-livewire: ^1.0
- liberusoftware/localization-mymemory: ^1.0
- liberusoftware/module-manager: ^1.9
- liberusoftware/module-manager-filament: ^1.11
- liberusoftware/module-social-network-analytics: ^0.1
- liberusoftware/module-social-network-analytics-api: ^0.1
- liberusoftware/module-social-network-analytics-filament: ^0.1
- liberusoftware/module-social-network-analytics-livewire: ^0.1
- liberusoftware/module-social-network-communities: ^0.1
- liberusoftware/module-social-network-communities-api: ^0.1
- liberusoftware/module-social-network-communities-filament: ^0.1
- liberusoftware/module-social-network-communities-livewire: ^0.1
- liberusoftware/module-social-network-discovery: ^0.1
- liberusoftware/module-social-network-discovery-api: ^0.1
- liberusoftware/module-social-network-discovery-filament: ^0.1
- liberusoftware/module-social-network-discovery-livewire: ^0.1
- liberusoftware/module-social-network-engagement: ^0.1
- liberusoftware/module-social-network-engagement-api: ^0.1
- liberusoftware/module-social-network-engagement-filament: ^0.1
- liberusoftware/module-social-network-engagement-livewire: ^0.1
- liberusoftware/module-social-network-events: ^0.1
- liberusoftware/module-social-network-events-api: ^0.1
- liberusoftware/module-social-network-events-filament: ^0.1
- liberusoftware/module-social-network-events-livewire: ^0.1
- liberusoftware/module-social-network-federation: ^0.1
- liberusoftware/module-social-network-federation-api: ^0.1
- liberusoftware/module-social-network-federation-filament: ^0.1
- liberusoftware/module-social-network-federation-livewire: ^0.1
- liberusoftware/module-social-network-feed: ^0.1
- liberusoftware/module-social-network-feed-api: ^0.1
- liberusoftware/module-social-network-feed-filament: ^0.1
- liberusoftware/module-social-network-feed-livewire: ^0.1
- liberusoftware/module-social-network-media: ^0.1
- liberusoftware/module-social-network-media-api: ^0.1
- liberusoftware/module-social-network-media-filament: ^0.1
- liberusoftware/module-social-network-media-livewire: ^0.1
- liberusoftware/module-social-network-messaging: ^0.1
- liberusoftware/module-social-network-messaging-api: ^0.1
- liberusoftware/module-social-network-messaging-filament: ^0.1
- liberusoftware/module-social-network-messaging-livewire: ^0.1
- liberusoftware/module-social-network-moderation: ^0.1
- liberusoftware/module-social-network-moderation-api: ^0.1
- liberusoftware/module-social-network-moderation-filament: ^0.1
- liberusoftware/module-social-network-moderation-livewire: ^0.1
- liberusoftware/module-social-network-notifications: ^0.1
- liberusoftware/module-social-network-notifications-api: ^0.1
- liberusoftware/module-social-network-notifications-filament: ^0.1
- liberusoftware/module-social-network-notifications-livewire: ^0.1
- liberusoftware/module-social-network-profiles: ^0.1
- liberusoftware/module-social-network-profiles-api: ^0.1
- liberusoftware/module-social-network-profiles-filament: ^0.1
- liberusoftware/module-social-network-profiles-livewire: ^0.1
- liberusoftware/module-social-network-publishing: ^0.1
- liberusoftware/module-social-network-publishing-api: ^0.1
- liberusoftware/module-social-network-publishing-filament: ^0.1
- liberusoftware/module-social-network-publishing-livewire: ^0.1
- liberusoftware/module-social-network-social-core: ^0.1
- liberusoftware/module-social-network-social-core-api: ^0.1
- liberusoftware/module-social-network-social-core-filament: ^0.1
- liberusoftware/module-social-network-social-core-livewire: ^0.1
- liberusoftware/module-social-network-social-graph: ^0.1
- liberusoftware/module-social-network-social-graph-api: ^0.1
- liberusoftware/module-social-network-social-graph-filament: ^0.1
- liberusoftware/module-social-network-social-graph-livewire: ^0.1
- liberusoftware/module-webhooks-api: ^0.1
- liberusoftware/notifications: ^1.0
- liberusoftware/observability: ^1.0
- liberusoftware/organizations-teams: ^1.0
- liberusoftware/organizations-teams-filament: ^1.0
- liberusoftware/profiles: ^1.0
- liberusoftware/roles-permissions: ^1.0
- liberusoftware/roles-permissions-filament: ^1.0
- liberusoftware/scheduler-queues: ^1.0
- liberusoftware/search: ^1.0
- liberusoftware/search-api: ^1.0
- liberusoftware/sessions-devices: ^1.0
- liberusoftware/sessions-devices-filament: ^1.1
- liberusoftware/settings: ^1.0
- liberusoftware/settings-filament: ^1.0
- liberusoftware/tenancy: ^1.0.1
- liberusoftware/theme-base: ^2.0
- liberusoftware/theme-clear-signal: ^1.0
- liberusoftware/theme-dark: ^1.0
- liberusoftware/theme-default: ^1.0
- liberusoftware/theme-support: ^1.0
- liberusoftware/theme-support-livewire: ^1.1
- liberusoftware/two-factor-authentication: ^1.0
- liberusoftware/users-roles: ^1.0
- liberusoftware/webhooks: ^1.0
- livewire/livewire: ^4.4.8
- spatie/laravel-activitylog: ^5.1.3
- spatie/laravel-backup: ^10.3.3
- spatie/laravel-passkeys: ^1.8.1
- spatie/laravel-permission: ^8.3.2
- spiral/roadrunner-cli: ^3.0.1
- spiral/roadrunner-http: ^4.2.1
Requires (Dev)
- fakerphp/faker: ^1.24.1
- filament/upgrade: ^5.11.0
- fruitcake/laravel-debugbar: ^4.4.4
- larastan/larastan: ^3.13.2
- laravel/boost: ^2.10.3
- laravel/mcp: ^1.1.2
- laravel/pint: ^1.32.1
- laravel/sail: ^1.69.0
- laravel/telescope: ^5.26.0
- liberusoftware/boilerplate-scripts: ^1.1
- mockery/mockery: ^1.6.15
- nunomaduro/collision: ^8.9.5
- pestphp/pest: ^5.3.3
- pestphp/pest-plugin-laravel: ^5.0.1
- phpunit/phpunit: ^13.4.3
- spatie/laravel-ignition: ^2.12.1
Suggests
None
Provides
None
Conflicts
None
Replaces
None
- dev-main
- v3.0.6
- v3.0.5
- v3.0.4
- v3.0.3
- v3.0.2
- v3.0.1
- v3.0.0
- v2.0.0
- v1.1.3
- v1.1.2
- v1.1.1
- v1.1.0
- v1.0.0
- dev-coverage/verified-progress-20261114-pause
- dev-chore/filament-5-11-3-2026-11-13
- dev-chore/dependency-security-refresh-2026-11-13
- dev-feat/shared-module-manager
- dev-fix/publisher-fail-safe
- dev-fix/deterministic-search-test-20261025
- dev-fix/tests-install-workflows-20261025
- dev-module-migration
- dev-development
- dev-codex/modular-parity-v1.1.1
- dev-codex/release-v1.1.0
- dev-codex/wayfinder-modules
- dev-old-pre-promotion
- dev-old
- dev-copilot/fix-mysql-install-workflow-actions
- dev-copilot/fix-workflows-syntax-errors
- dev-copilot/fix-failing-and-broken-tests
- dev-copilot/fix-phpunit-test-failures
- dev-copilot/replace-docker-setup-and-install-octane
- dev-copilot/fix-phpunit-tests-and-docker-build
- dev-copilot/update-whatsapp-number-and-badges
- dev-copilot/enhance-real-time-notifications
- dev-copilot/add-analytics-dashboard
- dev-copilot/optimize-search-performance
- dev-copilot/fix-post-scheduling-issues
- dev-copilot/fix-mobile-responsiveness-issues
- dev-copilot/implement-content-moderation-tools
- dev-copilot/add-advanced-search-functionality
- dev-copilot/add-event-management-features
- dev-copilot/add-media-upload-functionality
- dev-copilot/add-user-profile-page
- dev-copilot/sweep-database-schema
- dev-copilot/enable-post-creation-interaction
- dev-copilot/create-private-messaging-system
- dev-copilot/enable-post-creation-and-interactions
- dev-copilot/implement-friend-follow-system
- dev-copilot/add-user-activity-feed-component
- dev-copilot/refactor-admin-panel-user-management
- dev-copilot/improve-user-privacy-settings
This package is auto-updated.
Last update: 2026-11-14 19:44:51 UTC
README
An open, modular Laravel platform for building communities and social products you control.
Software · Hosting · Services · Liberu Group
What it is
Liberu Social Network is a self-hostable social platform and reference application. It gives teams a working foundation for launching a public community, private network, creator product, membership service, or specialised social experience without rebuilding the core social primitives from scratch.
The application is built from independently versioned Composer modules. Product capabilities, APIs, Livewire interactions, Filament administration, and themes can evolve independently while the host application supplies configuration and integration.
Product capabilities
The current product modules cover:
- Profiles with handles, bios, avatars, verification, visibility, and blocking
- Follows, friendship requests, lists, suggestions, and relationship visibility
- Home and following timelines with cursors, ranking, and visibility filters
- Posts, articles, drafts, audiences, mentions, hashtags, polls, links, and scheduling
- Reactions, comments, replies, sharing, bookmarks, counters, and abuse limits
- Private conversations with membership, delivery/read state, attachments, safety, and retention controls
- Events with invitations, attendance, capacity, locations, schedules, reminders, and updates
- Images, video, audio, files, processing, accessibility metadata, rights, delivery, and private albums
- Communities with groups, memberships, roles, rules, feeds, questions, files, and moderation boundaries
- Privacy-aware search, hashtags, trends, recommendations, and directories
- Reports, evidence, moderation decisions, appeals, sanctions, and transparency records
- In-app, email, and push notification preferences, grouping, digests, quiet hours, and read state
- ActivityPub-compatible identity, inbox, outbox, and delivery primitives
- Privacy-governed analytics for growth, engagement, retention, health, delivery, and moderation
The platform also includes authentication, two-factor authentication, roles and permissions, organisations, audit trails, API access, feature flags, settings, localisation, files, webhooks, queues, scheduling, observability, and theme support.
Stack
| Dependency | Version |
|---|---|
| PHP | 8.5 |
| Laravel | 13.x |
| Filament | 5.x |
| Livewire | 4.x |
| Composer | 2.x |
| Node.js | Current supported release |
| Database | A Laravel-supported SQL database |
Quick start
git clone https://github.com/liberusoftware/project-social-network-laravel-filament.git
cd social-network-laravel
composer install
cp .env.example .env
php artisan key:generate
npm install
npm run build
php artisan migrate
php artisan serve
Configure the database, mail, application URL, and external integrations in .env before running migrations. Use php artisan migrate --seed when you want available example data.
For interactive setup, run:
bash install.sh
How the modules fit together
The host application composes three kinds of package:
modules/
├── social-network-* # social product domains and API/UI adapters
├── * # shared foundation capabilities
themes/ # replaceable visual themes
app/ # host-specific composition and integration
config/ # application and module policy
tests/ # cross-module application tests
Each social domain is separated from its presentation adapters. For example, the publishing domain can be used through its API, Livewire composer, or Filament administration package. This keeps domain rules reusable across web, mobile, and partner integrations.
Modules are enabled from their manifests and can be adjusted for a deployment through MODULES_ENABLED and MODULES_DISABLED. Inspect the installed capability catalog with:
php artisan module:features php artisan module:features health php artisan module:status search
Installed module and theme directories are tracked so deployments and reviews contain the exact package contents used by the application. Composer remains the source of package versions and dependency resolution. Generic module changes belong in the module repository; host-specific composition belongs here.
APIs and administration
Versioned API adapters are provided for the social product domains and use Laravel Sanctum authentication. API routes live in the relevant social-network-*-api modules, keeping HTTP concerns out of domain packages.
Filament 5 provides administration surfaces for profiles, relationships, publishing, communities, events, media, messaging, moderation, analytics, and network settings. Livewire 4 provides interactive web surfaces such as timelines, composers, conversations, profiles, notifications, and relationship controls.
Themes
Themes are replaceable packages under themes/. The base theme defines shared contracts and fallback behaviour; the default, dark, and clear-signal themes provide application presentations. See theme architecture and theme system for extension guidance.
Testing and quality
composer validate --strict vendor/bin/pest vendor/bin/pint --test npm run build
The test suite covers cross-domain behaviour, module providers, API boundaries, presentation integration, and architecture rules. See module development before adding or changing a package.
Documentation
- Module development
- Foundation module matrix
- Messaging
- Messaging architecture
- Search functionality
- Search architecture
- Notifications
- Localisation
- Theme architecture
- Theme system
Publishing component repositories
The publishing helper derives component repository names from directories under modules/ and themes/:
scripts/publish-components scripts/publish-components --create scripts/publish-components --push
Push mode requires a clean, committed worktree and authenticated GitHub access. It publishes component repositories as subtree splits and never force-updates an existing non-fast-forward history.
Contributing
Bug reports, focused improvements, documentation, translations, tests, and new social capabilities are welcome. Keep changes scoped, follow existing module boundaries, and include tests for user-visible behaviour. Search existing issues before opening a new one.
Do not report security vulnerabilities in public issues. Email security@liberusoftware.com with reproduction details and the affected version.
License
Liberu Social Network is open-source software released under the MIT License.
Automatic module and theme publishing
.github/workflows/sync-packages.yml publishes packages changed under modules/
or themes/ on pushes to main. A manual run reconciles all tracked packages.
Each package needs a composer.json with a liberusoftware/* name. Files are
copied from Git into the root of liberusoftware/module-<directory> or
liberusoftware/theme-<directory>. Where .liberu-meta.json defines a
repositoryPrefix, that design is authoritative (for example,
modules/module-manager becomes module-module-manager). Without a configured
prefix, an existing module- or theme- directory prefix is kept. Destination
history is preserved, deleted files are removed, and unchanged packages do not
receive another commit or release. Removing an entire package leaves its public
repository intact. This workflow makes tracked package edits publishable; install
checks still require the project's Composer dependencies to resolve to those
published package contents.
Configure these secrets in the packagist GitHub environment (or as repository
or organization secrets available to this repository):
MODULE_SYNC_TOKEN: organization-authorized GitHub token able to create public repositories and read/write package contents and releases across the target repositories. Because package snapshots include.github/workflows, allow workflow writes too. A classic PAT needsrepoandworkflowscopes and an organization role permitted to create repositories. The defaultGITHUB_TOKENcannot publish across these repositories.PACKAGIST_USERNAME: Packagist account that owns or maintains these packages.PACKAGIST_API_TOKEN: that account's main API token, required to submit new packages as well as update existing packages.
New packages start at their declared stable Composer version, or v1.0.0.
Existing packages use the highest stable repository tag: a higher declared
Composer version wins, BREAKING CHANGE: or type!: commits bump major,
feat: commits bump minor, and other changes bump patch. Only commits touching
the package since the last successful sync affect this decision. The first
automated run and manual runs reconcile all packages, so canceled or failed
runs cannot silently drop package changes. Tags and commits are
pushed atomically, then a GitHub release is created and the package is submitted
to or refreshed on Packagist. Rerunning a failed job completes publication
without issuing another release for the same contents. Concurrent pushes from
other projects are rejected instead of force-pushed; rerun the failed job.
The source project and its lockfile are not rewritten by publication. Different
projects publishing the same directory name share a destination repository;
coordinate their package contents. Run the publisher's local tests with
python3 -m unittest discover -s .github/scripts -p 'test_sync_packages.py'.
Project family and presentation options
This repository hosts Social Network with Laravel and Filament. Profiles, feeds, communities and moderation. Its existing installation instructions and manifests govern this application. The other presentations are independent skeletons derived from their matching Boilerplate foundation; repository availability does not establish product feature parity.
Other Laravel and Filament projects
| Project | Scope |
|---|---|
| Boilerplate | Shared application foundation and module composition |
| Accounting ERP | Ledgers, tax, reporting and finance workflows |
| Automation | AI gateways, approvals, rules and integrations |
| Billing | Subscriptions, pricing, payments and provisioning |
| Browser Game | Game worlds, players and community workflows |
| CMS | Content authoring, publishing and delivery |
| Control Panel | Infrastructure and hosting operations |
| CRM | Relationships, sales pipelines and customer service |
| Ecommerce | Catalogs, checkout, orders and fulfillment |
| Enterprise SAP | Enterprise workspace and cross-product orchestration |
| Genealogy | Family trees, research, evidence and collaboration |
| Liberu Platform | Official sites, staff applications and platform composition |
| Maintenance | Assets, work orders, schedules and field operations |
| Music DAW | Composition, recording, sequencing and audio production |
| Real Estate | Listings, sales, lettings and agency operations |
Other presentations for Social Network
- Laravel · Inertia · Vue: Laravel routes and sessions with Vue pages over the Inertia protocol.
- Laravel · Inertia · React: Laravel routes and sessions with React pages over the Inertia protocol.
- Nuxt · Vue: Independent Vue application with Nuxt server rendering and reviewed API integration.
- Next.js · React: Independent React application with explicit Next.js server/client boundaries.
- React Native · Expo: Native iOS/Android application using React Native and Expo.
- Flutter · Mobile: Flutter iOS/Android application using Dart and mobile widgets.
- Dart · Desktop: Dedicated Dart desktop application with a Flutter host for Linux, macOS and Windows.
- Dart · Mobile: Separate Dart mobile application with a Flutter host for iOS and Android.
Use the presentation implementation guides and product documentation to select compatible modules, reviewed contracts and the correct deployment boundary. Laravel remains authoritative for domain rules and tenant authorization across all clients.