No description
Find a file
Paulo Castellano 039ed02b42 feat: rate limiting, cleanup duplicates, ApiKey app tests, bootstrap hardening
- Add API rate limiting (60/min per workspace) in AppServiceProvider
- Add throttle:api middleware to all API routes
- Add rate limit exception rendering for JSON responses
- Add middleware priority list (AuthenticateApiToken before ThrottleRequests)
- Add ApiKeyControllerTest (6 tests for App dashboard CRUD)
- Remove duplicate test files (Controllers/ dir duplicates)
- Remove old controllers and routes/settings.php
- Add routes/mcp.php placeholder
- Add API Keys nav item to settings layout
- Fix LazilyRefreshDatabase conflict in API tests
- 698 tests passing
2026-03-29 20:14:23 -03:00
.claude/skills upgrade: add Laravel 13 config changes and update Boost skills 2026-03-29 18:25:28 -03:00
.github feat: adding tests 2026-01-18 22:12:25 -03:00
app feat: rate limiting, cleanup duplicates, ApiKey app tests, bootstrap hardening 2026-03-29 20:14:23 -03:00
bootstrap feat: rate limiting, cleanup duplicates, ApiKey app tests, bootstrap hardening 2026-03-29 20:14:23 -03:00
config refactor: restructure to Actions, subdomain routes (app/api), API tokens 2026-03-29 19:24:28 -03:00
database feat: delete old controllers, add API tests, ApiKeys page, MCP route 2026-03-29 19:59:17 -03:00
lang fix: update frontend route/action imports for new subdomain structure 2026-03-29 19:43:15 -03:00
maizzle feat: add i18n support for workspace connections disconnected email 2026-01-25 17:23:16 -03:00
public feat: Introduce a self-hosted mode, refactor email notifications to use Mailable classes with new templates, and update the project README. 2026-01-18 17:48:12 -03:00
resources feat: delete old controllers, add API tests, ApiKeys page, MCP route 2026-03-29 19:59:17 -03:00
routes feat: rate limiting, cleanup duplicates, ApiKey app tests, bootstrap hardening 2026-03-29 20:14:23 -03:00
storage chore: first commit 2026-01-14 22:13:44 -03:00
tests feat: rate limiting, cleanup duplicates, ApiKey app tests, bootstrap hardening 2026-03-29 20:14:23 -03:00
.editorconfig chore: first commit 2026-01-14 22:13:44 -03:00
.env.ci feat: adding tests.. 2026-01-18 22:01:55 -03:00
.env.example feat: improvements on ui 2026-01-21 20:50:57 -03:00
.env.testing feat: improvements on ui 2026-01-21 20:50:57 -03:00
.gitattributes chore: first commit 2026-01-14 22:13:44 -03:00
.gitignore chore: first commit 2026-01-14 22:13:44 -03:00
.mcp.json upgrade: Laravel 13, Inertia v3, remove pion/chunk-upload 2026-03-29 18:10:10 -03:00
.prettierignore chore: first commit 2026-01-14 22:13:44 -03:00
.prettierrc chore: first commit 2026-01-14 22:13:44 -03:00
artisan chore: first commit 2026-01-14 22:13:44 -03:00
boost.json upgrade: Laravel 13, Inertia v3, remove pion/chunk-upload 2026-03-29 18:10:10 -03:00
CLAUDE.md upgrade: Laravel 13, Inertia v3, remove pion/chunk-upload 2026-03-29 18:10:10 -03:00
components.json chore: first commit 2026-01-14 22:13:44 -03:00
compose.yaml feat: add documentation for connecting social media platforms and getting started guide 2026-01-18 18:57:15 -03:00
composer.json Merge branch 'main' into upgrade/laravel-13-inertia-3 2026-03-29 18:28:54 -03:00
composer.lock upgrade: Laravel 13, Inertia v3, remove pion/chunk-upload 2026-03-29 18:10:10 -03:00
eslint.config.js chore: first commit 2026-01-14 22:13:44 -03:00
GEMINI.md chore: update config files and remove unused translation files 2026-01-26 12:02:24 -03:00
LICENSE.md feat: Introduce a self-hosted mode, refactor email notifications to use Mailable classes with new templates, and update the project README. 2026-01-18 17:48:12 -03:00
package-lock.json upgrade: Laravel 13, Inertia v3, remove pion/chunk-upload 2026-03-29 18:10:10 -03:00
package.json upgrade: Laravel 13, Inertia v3, remove pion/chunk-upload 2026-03-29 18:10:10 -03:00
phpunit.xml feat: adding tests 2026-01-18 22:04:34 -03:00
pint.json chore: first commit 2026-01-14 22:13:44 -03:00
README.md feat: adding tests.. 2026-01-18 20:33:45 -03:00
tsconfig.json chore: first commit 2026-01-14 22:13:44 -03:00
vite.config.ts feat: Implement soft deletes for workspace hashtags and labels, and integrate content_type into the initial post platforms table creation. 2026-01-17 14:44:37 -03:00

TryPost

The open-source social media scheduling platform

Schedule, manage, and publish content to all your social media accounts from one place.
Self-hosted. Privacy-focused. No limits.

Stars License Release

📚 Documentation🗺️ Roadmap💬 Community


🤔 Why TryPost?

Tired of paying expensive monthly fees for social media scheduling tools? Want full control over your data? TryPost is the solution.

🔓 100% Open Source Inspect the code, contribute, make it yours
🏠 Self-Hosted Your data stays on your servers
♾️ No Limits Schedule unlimited posts, connect unlimited accounts
🔒 Privacy First No tracking, no analytics, no data selling

Features

📅 Visual Calendar Drag and drop posts across your content calendar
✍️ Post Composer Create and preview posts for multiple platforms at once
🖼️ Media Library Upload images and videos with automatic optimization
👥 Team Collaboration Invite team members with role-based permissions
🏢 Workspaces Manage multiple brands or clients separately
👀 Multi-Platform Preview See exactly how your post will look on each platform

🌐 Supported Platforms


X (Twitter)

LinkedIn

Facebook

Instagram

TikTok

YouTube

Pinterest

Threads

Bluesky

Mastodon

🚀 Getting Started

Get TryPost running in minutes:

📖 Installation Guide Step-by-step setup
🐳 Docker Setup Run with Laravel Sail
⚙️ Configuration Environment setup
🔗 Platform Setup Connect your social accounts

🤝 Contributing

We love contributions! See our Contributing Guide to get started.

  • 💬 Discussions - Ask questions, share ideas
  • 🐛 Issues - Report bugs, request features

📄 License

TryPost is licensed under the Functional Source License (FSL).

You can: Use for personal or business use, self-host, modify and contribute.

You cannot: Offer as a competing SaaS, white-label and resell.


If TryPost helps you, please give us a