Getting started
Every package here is independent. Add the one you want to a Nacara site — there is no umbrella package to install first.
| Package | What it does |
|---|---|
Partas.Nacara.Plugins.Directives | Your own ::: blocks, as typed F# functions |
Partas.Nacara.Plugins.Tailwind | Tailwind over the built site |
Partas.Nacara.Plugins.DaisyUI | DaisyUI, through the Tailwind plugin |
Partas.Nacara.Plugins.OgImage | Link preview images, from front matter with fallbacks |
Partas.Nacara.Plugins.AgentFriendly | llms.txt and markdown copies of every page, for agents |
Partas.Nacara.Theme | The documentation theme, in replaceable cascade layers |
Partas.Nacara.Theme.Contracts | What a theme and a styling plugin agree on |
dotnet add package Partas.Nacara.Plugins.Directives
A Nacara site is an F# program, so a plugin is a function in the pipeline that builds it:
open Nacara.Core
open Nacara.Plugins
open Partas.Nacara.Theme
let site =
Site.create "My site"
|> Site.baseUrl "/"
|> Site.output "output"
|> Markdown.register
|> Directives.register [ note ]
|> Theme.register theme
|> Site.collection (Theme.docs theme "content")
[<EntryPoint>]
let main argv = Nacara.run site argv
Order matters in one direction only: the theme reads what plugins offered it, so register it last.
Where to next
- Directives — the plugin most of this documentation is about
- Theme — typed design tokens, and restyling without out-specifying anything
- Tailwind and DaisyUI — if you would rather bring your own CSS framework
- Link preview images and agent-friendly sites — how the site looks when it is shared, and when an agent reads it