Publishing
v0.16.0Database-backed CMS for blogs and docs, multi-language and versioned
Requires AI
Install PublishingPublishing is PhoenixKit’s CMS: blogs, news, documentation and FAQs, stored in your own PostgreSQL database and written in a collaborative editor.
Each group is either dated (news, changelogs: /news/2026-11-07) or slug-based (docs: /docs/getting-started), with versions, translations per language, categories, RSS feeds and a sitemap entry for every public page. Posts can embed components — images, galleries, calls to action, video — and AI can translate them in the background.
This page’s text is itself a Publishing post: the module-texts group, post slug publishing. Edit it in the admin and the page changes, with no deploy.
Use it when
- You need a blog, news section or documentation pages inside your Phoenix app
- Your content must exist in several languages with version history
What it gives you
- Timestamp or slug URL modes per group
- Per-language content with language switcher and fallbacks
- Version history with publish/archive
- Collaborative editing with presence and locking
- AI translation in background Oban jobs
- Markdown plus PHK components (Image, Hero, CTA, Video, Headline, EntityForm)
- Admin under /admin/publishing; listing and render caches
Publishing news
Nothing posted about Publishing yet. Read its changelog or see all PhoenixKit news.
Install
1
Add to mix.exs
{:phoenix_kit_publishing, "~> 0.16"}
2 Fetch it and run its migrations
$ mix deps.get && mix phoenix_kit.update
3
Switch it on in /admin/modules
- Package
- phoenix_kit_publishing
- Releases
-
- 0.16.0
- 0.15.0
- 0.14.0
- Admin
-
/admin/publishing - Used by
- Legal
- Links
- HexDocs ↗ GitHub ↗ Changelog ↗
Related modules
What it needs, what builds on it, and its neighbours in Content & community.
AI
AI endpoints, prompt templates, completions and usage tracking
No other modules needed
Legal
Generated legal pages, cookie consent banner and consent logging
Needs Publishing
Boards
Collaborative infinite-canvas boards with live cursors, stored in the database
No other modules needed
Comments
Threaded comments for any resource, with reactions and moderation
No other modules needed
Document Creator
Document templates in Google Docs, filled with variables and exported to PDF
No other modules needed
Entities
Define custom content types with field schemas, no migrations per type
No other modules needed