Download the PHP package prateekbhujel/larapost without Composer
On this page you can find all versions of the php package prateekbhujel/larapost. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download prateekbhujel/larapost
More information about prateekbhujel/larapost
Files in prateekbhujel/larapost
Package larapost
Short Description Laravel-native social publishing infrastructure for Facebook, X, LinkedIn, TikTok, queues, scheduling, and optional MCP clients
License MIT
Homepage https://github.com/prateekbhujel/larapost
Informations about the package larapost
LaraPost
LaraPost is Laravel-native social publishing for Facebook Pages, Twitter / X, LinkedIn, and TikTok. It provides OAuth account connections, immediate, queued, and scheduled publishing, retries, multi-account targeting, and optional authenticated MCP integration inside your Laravel application.
It is not a separate social-media SaaS. It lives inside your Laravel application, so your app owns the database records, business rules, connected accounts, publishing history, and provider credentials.
What ships in 2.x
- Facebook Pages
- Twitter / X with OAuth 2.0 plus the optional Xquik backend
- LinkedIn member profiles
- TikTok Content Posting API with safe upload-to-inbox by default and explicit Direct Post opt-in
- Immediate, scheduled, and queued publishing
- Multi-account targeting
- Retry and backoff for scheduled work
- Token-expiry tracking and refresh where the provider supports it
- Authenticated operator dashboard
- Custom driver registration
- Optional remote MCP server for AI clients
- A diagnostic command with
php artisan larapost:doctor
Requirements
LaraPost 2.x targets:
- PHP 8.3+
- Laravel 12 or 13
Laravel 11 is no longer in its security support window, so LaraPost 2.x does not carry that compatibility burden. Old maintenance branches are created from release tags only when a real backport is needed.
Installation
The installer asks which platforms you want. You can enable one provider, several, or all of them.
Non-interactive examples:
Enabled platforms are controlled by:
Disabled drivers do not appear in the manager, dashboard, or MCP capability list.
Publish
Target exact connected accounts:
Schedule for later:
Queue immediate work:
TikTok
LaraPost defaults to TikTok's upload flow:
In upload mode, LaraPost sends the photo or video to the creator's TikTok inbox and the creator reviews and completes the post in TikTok. This is the safe default for the built-in dashboard, automation, and MCP clients.
Media uses PULL_FROM_URL, so it must be available over HTTPS from a domain or URL prefix verified for the TikTok developer app.
Direct Post is available only as an explicit application-level opt-in with TIKTOK_PUBLISH_MODE=direct. In that mode LaraPost requires current creator info, an explicit creator-selected privacy level, explicit interaction settings, and metadata.tiktok.consent=true. The built-in MCP tool intentionally refuses TikTok Direct Post. A host application using Direct Post must implement TikTok's required creator-facing sharing UX and pass those choices to LaraPost.
Changing TikTok publish mode changes the OAuth scope, so reconnect existing TikTok accounts after changing between upload and direct.
Optional MCP for ChatGPT, Claude, Codex, and other clients
MCP is not required for normal LaraPost installations.
Install it only when you want an AI client to interact with LaraPost:
Then configure:
The MCP server exposes read-only business/account/history tools plus explicit write tools for publishing and cancelling pending posts. Provider tokens and account credentials are never returned by read tools.
Use the remote server URL:
Authentication uses:
For MCP clients that require OAuth rather than a static bearer token, integrate LaraPost with your application's Laravel MCP OAuth/authorization layer instead of exposing the endpoint anonymously.
Dashboard security
The dashboard is an operator surface, not a demo route. It can publish content and change provider credentials.
LaraPost 2.x protects operator routes with:
by default. If your application uses another guard, tenant middleware, or admin authorization layer, override operator_middleware in the published config.
OAuth callbacks use a separate callback middleware stack so provider redirects do not inherit an application-specific operator policy accidentally.
Scheduler and queues
LaraPost registers its scheduled runner with Laravel's scheduler automatically.
Your application still needs Laravel's scheduler process:
or the normal schedule:run cron entry.
Enable queued scheduled publishing with:
Due posts are claimed before publishing, and queued publishing uses a unique job per scheduled post.
Custom drivers
Register another implementation without editing package internals:
Custom drivers implement SocialSync\Contracts\SocialDriverInterface.
Diagnostics
Before production rollout:
The command checks database tables, enabled platforms, scheduler status, queue mode, dashboard access middleware, and MCP configuration.
Documentation
Full documentation:
https://prateekbhujel.github.io/larapost/
Start here:
Repository docs:
- UPGRADE.md
- BACKPORTING.md
- CONTRIBUTING.md
- SECURITY.md
- RELEASE.md
- CHANGELOG.md
License
LaraPost is released under the MIT license.
All versions of larapost with dependencies
guzzlehttp/guzzle Version ^7.0
illuminate/bus Version ^12.41.1|^13.0
illuminate/console Version ^12.41.1|^13.0
illuminate/contracts Version ^12.41.1|^13.0
illuminate/database Version ^12.41.1|^13.0
illuminate/http Version ^12.41.1|^13.0
illuminate/queue Version ^12.41.1|^13.0
illuminate/routing Version ^12.41.1|^13.0
illuminate/support Version ^12.41.1|^13.0
nesbot/carbon Version ^2.0|^3.0