Freedom251 › Static site generators
Franklin.jl

What Franklin.jl is
Franklin.jl is a free static site generator written in Julia for technical blogs and light, fast-loading pages. It uses Markdown extended with LaTeX-like commands and user-defined div blocks. Posts can include KaTeX-rendered mathematics, highlighted code, and Julia code blocks that are evaluated live. The serve() function starts a local server that renders edits in a browser for preview. Franklin can generate RSS feeds, sitemaps, and robots.txt files, with settings to configure or disable each. Its newsite function creates a site from a template, though templates may need adjustment. Generated files can be deployed to an existing web server, GitHub Pages, GitLab Pages, or Netlify. Documentation covers Literate.jl integration, Utterances comments, and Plotly. An optimize function can pre-render math and code and minify HTML and CSS, but minification may break a site. Installation requires Julia 1.3 or later; optional optimization uses Python 3 and Node.js. Franklin is MIT licensed.
Who it suits
Franklin.jl suits people building technical blogs with mathematics and code blocks. It may be less suitable for blogs mainly containing text and pictures.
What it does well
- Markdown with LaTeX-like extensions
- KaTeX math and highlighted code
- Live Julia code evaluation
- Local browser preview server
- Deploys to several hosting options
What to know first
- Requires Julia 1.3 or later
- Optional optimization needs Python and Node.js
- Minification can break a site
- Templates may need adjustments
Verdict
Franklin.jl combines Julia-based static generation with tools aimed at math- and code-heavy publishing. Its deployment choices and local preview support are useful, while its technical requirements and optimization caveat matter.
Facts from Franklin.jl's own pages
- Charts
- The docs include instructions for working with Plotly. · franklinjl.org, 9 Oct 2026
- Comments
- The docs provide instructions for adding Utterances comments to a site. · franklinjl.org, 9 Oct 2026
- Content
- It uses Markdown with extensions for LaTeX-like commands and user-defined div blocks. · franklinjl.org, 9 Oct 2026
- Content sources
- markdown · franklinjl.org, 20 Sept 2026
- Deployment
- Generated site files can be deployed to an existing web server, through GitHub or GitLab, or on services such as Netlify. · franklinjl.org, 9 Oct 2026
- Free plan
- Yes · franklinjl.org, 20 Sept 2026
- Integrations
- The project describes straightforward integration with Literate.jl. · franklinjl.org, 9 Oct 2026
- Intended audience
- The maintainer says Franklin may suit people building technical blogs with mathematics and code, and may not suit blogs mostly about text and pictures. · franklinjl.org, 9 Oct 2026
- Intended users
- The FAQ says Franklin may suit people creating technical blogs with math and code blocks, and may not suit blogs mostly containing text and pictures. · franklinjl.org, 9 Oct 2026
- License
- The official GitHub repository says Franklin is MIT licensed. · github.com, 9 Oct 2026
- Maker
- The official site credits Thibaut Lienart. · franklinjl.org, 9 Oct 2026
- Markdown
- It extends Markdown with LaTeX-like commands and user-defined div blocks. · franklinjl.org, 9 Oct 2026
- Math and code
- It supports KaTeX-rendered math, highlighted code, and live evaluation of Julia code blocks. · franklinjl.org, 9 Oct 2026
- Optimization
- Its optimize function can pre-render math and highlighted code and minify generated HTML and CSS; the docs note that minification can break a site. · franklinjl.org, 9 Oct 2026
- Optional dependencies
- Optional optimization uses Python 3 for minification and Node.js for pre-rendering KaTeX and highlighted code; these extras can be skipped. · franklinjl.org, 9 Oct 2026
- Preview
- The serve() function starts a local server that live-renders edits for browser preview. · franklinjl.org, 9 Oct 2026
- Local preview server
- Yes · franklinjl.org, 20 Sept 2026
- Product
- Franklin is a customizable static site generator written in Julia, oriented toward technical blogging and light, fast-loading pages. · franklinjl.org, 9 Oct 2026
- Publishing
- The docs describe deployment to an existing web server, GitHub Pages, GitLab Pages, and Netlify. · franklinjl.org, 9 Oct 2026
- Requirements
- Installation instructions require Julia 1.3 or later; optional compression and pre-rendering use Python 3 and Node.js. · franklinjl.org, 9 Oct 2026
- RSS and sitemap
- Franklin can generate RSS feeds, sitemaps, and robots.txt files, with settings to configure or disable each. · franklinjl.org, 9 Oct 2026
- Support
- The repository recommends the #franklin channel on Julia Slack for usage questions. · github.com, 9 Oct 2026
- Supported languages
- Julia · franklinjl.org, 20 Sept 2026
- Templates
- The newsite function can create a website from a template, and the documentation says templates are starting points that may need adjustments. · franklinjl.org, 9 Oct 2026
Where Franklin.jl stands on Freedom251
- Static site generators#22 of 35