Note: Pliny is currently in alpha. Expect breaking changes.
Pliny makes creating, editing and publishing markdown content easy and simple. It is based on Next.js, Tailwind CSS and Contentlayer.
npm i -g @pliny/cli
Here are some examples of common commands:
pliny new --template=starter-blog my-blog
Currently, there are 2 main types of recipes - scaffolding a content type e.g. the pages associated with a blog or adding templates to the layouts
folder. As a convention, recipes to scaffold are in the form of add-[content type]
while layouts are in the form of [content type]-[theme]
.
Adding a blog page to an existing Next.js application:
pliny install add-blog ContentDir=data ContentName=blog
Add the blog-classic templates to the layouts
folder:
pliny install blog-classic
- Best in class developer experience for building a markdown website, courtesy of contentlayer, including:
- Live reload on content changes
- Fast and incremental builds
- Simple but powerful schema DSL to design your content model (validates your content and generates types)
- Auto-generated TypeScript types based on your content model (e.g. frontmatter or CMS schema)
- Out of the box templates based on Next.js and Tailwindcss
- Full suite of markdown plugins including
- Server-side syntax highlighting with line numbers and line highlighting via rehype-prism-plus
- Math display supported via KaTeX
- Citation and bibliography support via rehype-citation
- React components for common services
- Newsletter (Buttondown, Convertkit, Email Octopus, Klaviyo, Mailchimp, Revue)
- Analytics (Google Analytics, Plausible Analytics, Simple Analytics, Umami Analytics)
- Comment system (Disqus, Giscus, Utterances)