Skip to content
View tallcms's full-sized avatar

Block or report tallcms

Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
tallcms/README.md

TallCMS

Packagist Version Packagist Downloads License

A modern Content Management System built on the TALL stack (Tailwind CSS, Alpine.js, Laravel, Livewire) with a Filament admin panel and a daisyUI-powered block system.

Two Ways to Use TallCMS

1. Standalone Application (Full CMS)

Get a complete CMS with themes, plugins, web installer, and auto-updates:

composer create-project tallcms/tallcms my-site
cd my-site
npm install && npm run build
php artisan serve

Visit http://localhost:8000/install to complete the web installer.

2. Filament Plugin (Add to Existing App)

Add CMS features to your existing Filament application:

composer require tallcms/cms

Add the HasRoles trait to your User model:

use Spatie\Permission\Traits\HasRoles;

class User extends Authenticatable
{
    use HasFactory, HasRoles, Notifiable;
}

Register the plugin in your panel provider:

use TallCms\Cms\TallCmsPlugin;

->plugin(TallCmsPlugin::make())

Run the installer:

php artisan tallcms:install

See the Installation Guide for full setup instructions.


Features

  • Web Installer — Setup wizard with no command line required (standalone)
  • One-Click Updates — Secure system updates with Ed25519 signature verification (standalone)
  • Block-Based Editor — 16 built-in content blocks with animations and responsive design
  • Pages & Posts — Static pages and blog posts with categories and templates
  • Publishing Workflow — Draft, Pending Review, Scheduled, and Published states
  • Revision History — Track changes with diff comparison and rollback
  • Preview System — Preview unpublished content with shareable tokens
  • Media Library — Organize uploads with collections and metadata
  • Menu Builder — Drag-and-drop navigation menus with mega menu support
  • Comments — Built-in comment system with moderation
  • Full-Text Search — Laravel Scout-powered search across content
  • SEO — Sitemaps, meta tags, Open Graph, and structured data
  • Internationalization — Multi-language support via Spatie Translatable
  • Site Settings — Centralized configuration for site name, contact info, social links, SPA mode
  • Role-Based Permissions — Super Admin, Administrator, Editor, Author
  • Plugin System — Extend functionality with installable plugins (standalone)
  • Theme System — daisyUI presets or custom themes with template overrides (standalone)
  • REST API — Optional Sanctum-authenticated API for headless usage
  • Cloud Storage — S3-compatible storage (AWS, DigitalOcean, Cloudflare R2)
  • Maintenance Mode — Built-in site maintenance with custom messaging

System Requirements

  • PHP: 8.2+
  • Laravel: 12.x
  • Filament: 5.x
  • Database: MySQL 8.0+, MariaDB 10.3+, or SQLite

Documentation

Full documentation lives in the docs/ folder. Start with the Documentation Index.

Getting Started

Guide Description
Installation System requirements, standalone & plugin setup
Create Your First Page Build a page with content blocks
Publish Your First Post Write and publish a blog post
Set Up Navigation Create site menus

Site Management

Guide Description
Pages & Posts Organize and manage content
Content Blocks Use Hero, Pricing, Gallery, and 13 more blocks
Block Animations Add entrance and scroll animations
Media Library Upload and manage images and files
Menus Full navigation management guide
Mega Menu Advanced navigation with badges, CTAs, templates
Comments Comment system and moderation
SEO Sitemaps, meta tags, structured data
Site Settings Logo, contact info, SPA mode
Page Templates Page templates and sidebar widgets

Block Reference

Each built-in block has its own guide:

Block Block
Hero Landing page headers Call to Action Conversion sections
Content Rich text content Features Feature grids
Pricing Pricing tables FAQ Accordion Q&A
Testimonials Customer reviews Team Team member profiles
Stats Metrics display Media Gallery Image galleries
Logos Partner/client logos Timeline Chronological events
Contact Form Forms with notifications Posts Recent blog posts
Parallax Parallax scrolling Divider Section separators
Document List Downloadable files

Pro Blocks

Upgrade to TallCMS Pro for 9 additional blocks:

Block Block
Accordion Collapsible sections Tabs Tabbed content
Counter Animated counters Table Data tables
Comparison Side-by-side compare Video Video embeds
Before/After Image slider Code Snippet Syntax-highlighted code
Map Interactive maps

See the Pro Plugin Changelog for release history.

Learn more at tallcms.com/pro.

Developer Guides

Guide Description
Block Development Build custom content blocks
Block Styling daisyUI styling patterns for blocks
Theme Development Create custom themes
Theme Switcher Enable runtime theme switching
Plugin Development Extend TallCMS with plugins
Template & Widget Development Custom templates and sidebar widgets
REST API Build integrations with the TallCMS API
CLI Commands Artisan command reference

Reference

Guide Description
Architecture Internal architecture and model patterns
Publishing Workflow Draft, review, schedule, publish lifecycle
Page Settings All page configuration options
Roles & Authorization Permissions and role definitions
API Permissions API token scopes and access control
Rich Editor Block categories, search, and editor features
Full-Text Search Search configuration and indexing
Internationalization Multi-language support setup
Testing Checklist QA testing procedures

Architecture

TallCMS is a monorepo. The core CMS package lives at packages/tallcms/cms/ and is published separately as tallcms/cms.

tallcms/tallcms (Standalone skeleton)    tallcms/cms (Package)
├── app/                                 ├── src/
│   ├── Models/ (wrappers)               │   ├── Models/
│   ├── Services/                        │   ├── Services/
│   └── Filament/                        │   ├── Filament/
├── themes/                              │   │   ├── Blocks/
├── plugins/                             │   │   ├── Resources/
├── .tallcms-standalone                  │   │   └── Widgets/
└── ...                                  │   ├── Http/
                                         │   └── Console/Commands/
                                         └── database/migrations/
  • Standalone mode — Full skeleton with themes, plugins, web installer, and auto-updates. Detected by the .tallcms-standalone marker file.
  • Plugin mode — Just the CMS package added to your existing Filament app via composer require tallcms/cms.

See the Architecture Reference for details.

Troubleshooting

Common issues and solutions are documented in the Installation Guide.

Quick fixes:

  • "Page not showing changes"php artisan cache:clear && php artisan view:clear
  • "Styles look broken"npm run build
  • "Installation already complete" — Delete storage/installer.lock or set INSTALLER_ENABLED=true
  • "Permission denied"chmod -R 775 storage bootstrap/cache
  • "CMS resources not appearing" — Ensure the plugin is registered and run php artisan migrate
  • "Call to undefined method assignRole()" — Add the HasRoles trait to your User model

Credits

Built with AI

TallCMS is co-developed with Claude AI (Anthropic) and code-reviewed by Codex (OpenAI).

Core Technologies

License

TallCMS is open-source software licensed under the MIT License.

Links

Popular repositories Loading

  1. tallcms tallcms Public

    PHP 15 1

  2. cms cms Public

    PHP 2