- What is relaticle/ink and what does it actually include?
- Ink is a Laravel and Filament package that turns an existing Filament panel into a content publishing system for blogs, docs and AI-citable articles. It ships Eloquent models for posts and categories, a full admin with markdown editing and scheduling, SEO meta tags, JSON-LD schema, publishable Blade components, MCP tools for AI agents, and an optional public-routes mode. It is headless by default, so you can keep your own controllers and routes if you prefer.
- How do I install relaticle/ink in a Laravel application?
- Run composer require relaticle/ink, register InkPlugin::make() in your Filament panel provider, then run php artisan migrate. You can optionally publish the config and views with vendor:publish to customise behaviour and markup. No second CMS or auth system is needed because the admin lives inside your existing Filament panel.
- Which Laravel, PHP and Filament versions does Ink require?
- The current release requires PHP 8.4, Laravel 12 or 13, and Filament 5.x, so this is a hard gate rather than a preference. If your application is on PHP 8.3, an older Laravel, or Filament 3 or 4, the evaluation ends there until you upgrade. Check the composer constraints and CI badges before comparing Ink with alternatives.
- Can I use Ink headless without enabling the public blog routes?
- Yes, headless is the default install mode. You define your own routes and controllers and render posts with the publishable Blade components such as x-ink::post-header, x-ink::meta-tags and x-ink::structured-data. Flipping features.public_routes registers an opinionated /blog route group with listings, category and tag pages, RSS and signed previews, so you can adopt the routing later once you trust it.
- Can I use my own Post model or add custom fields to Ink?
- There is no post_model config key in the current release, and the documentation explicitly defers model configurability to a later phase. Ink owns the blog_posts table, so host-specific requirements such as multi-tenant scoping, custom fields, editorial workflow states or localization have to be expressed as migrations against that table or as a fork. Treat that as an architectural commitment and evaluate it before anything else.
- Will Ink's public /blog routes collide with my existing routes?
- The opt-in routes for /blog, /blog/{slug}, /blog/category/{slug}, /blog/tag/{slug}, /blog/feed and /blog/preview/{post} register globally at the service provider level rather than inside the panel. Any existing marketing site, legacy redirect or customer-owned /blog path will conflict, so establish who owns that namespace first. If you need a different prefix, plan for a route-prefix config change or a host-side guard before flipping the flag.
- How do the MCP tools work and is it safe to enable them in production?
- Ink ships a ready-to-register BlogServer exposing 14 MCP tools for full CRUD on posts and categories plus image uploads, authorised through your app's Gate and Sanctum token abilities and requiring laravel/mcp. Markdown is HTML-stripped and unsafe links are blocked, which is a sensible baseline. It is still token-based write access to public-facing content, so run a security review and put an approval gate in front of it before enabling it in production.
- How does Ink handle SEO meta tags, JSON-LD and FAQPage or HowTo schema?
- Post pages emit BlogPosting and BreadcrumbList schema, listings emit Blog and CollectionPage, and the package generates meta tags, Open Graph, Twitter Cards, an RSS feed and per-page canonicals on paginated listings. FAQPage and HowTo markup can be auto-detected from your content behind an opt-in flag. Leave that inference off unless your content templates guarantee the emitted schema matches the visible page, since mismatches are a documented cause of rich-result manual actions.
- Is relaticle/ink production-ready and how is it maintained?
- Ink is early stage: roughly 16 GitHub stars, no dependents and a single maintainer shipping first-line releases with a documented phase 3 backlog. That means you would be among the earliest production users and effectively part of the QA function, so approve a fork-and-maintain budget before committing. If that risk is unacceptable, a separate CMS or hand-rolled Filament resources remain the fallback.
- Does Ink integrate with Spatie Media Library for featured images?
- Yes, but only on the form side. When Media Library is enabled, new uploads are written to Spatie's media table while legacy posts keep their featured_image string path, and the shipped views render whichever one exists. That split-brain data model is survivable but is migration debt you inherit, and the promised backfill command does not exist yet.