All Projects β†’ tlienart β†’ Franklin.jl

tlienart / Franklin.jl

Licence: mit
(yet another) static site generator. Simple, customisable, fast, maths with KaTeX, code evaluation, optional pre-rendering, in Julia.

Programming Languages

julia
2034 projects

Projects that are alternatives of or similar to Franklin.jl

Laravel Smartmd
🎯 A simple markdown editor compatible most markdown parse,You can choose any parse methods on server or client,like Mathematical formula、flowchart、upload image...
Stars: ✭ 76 (-81.6%)
Mutual labels:  latex, markdown-parser
Jekyll Spaceship
πŸš€ A Jekyll plugin to provide powerful supports for table, mathjax, plantuml, mermaid, emoji, video, audio, youtube, vimeo, dailymotion, soundcloud, spotify, etc.
Stars: ✭ 196 (-52.54%)
Mutual labels:  latex, katex
Spmathkit
Render math exercises for your view. Contains the rendering of mathematical formulas and mathematical graphics, as well as the general text
Stars: ✭ 81 (-80.39%)
Mutual labels:  latex, katex
Mdmath
LaTeX Math for Markdown inside of Visual Studio Code.
Stars: ✭ 675 (+63.44%)
Mutual labels:  latex, katex
pseudocode.js
Beautiful pseudocode for the Web
Stars: ✭ 132 (-68.04%)
Mutual labels:  latex, katex
Jekyll Katex
Jekyll plugin for easy server-side math rendering via KaTeX
Stars: ✭ 73 (-82.32%)
Mutual labels:  latex, katex
Flutter tex
A Flutter Package to render Mathematics, Physics and Chemistry Equations based on LaTeX
Stars: ✭ 161 (-61.02%)
Mutual labels:  latex, katex
Markdown Latex
A markdown parser for converting markdown to LaTeX written in PHP.
Stars: ✭ 40 (-90.31%)
Mutual labels:  latex, markdown-parser
purple-pi
πŸ’œ LaTeX math wherever you want
Stars: ✭ 31 (-92.49%)
Mutual labels:  latex, katex
react-latex-next
Render LaTeX in React apps
Stars: ✭ 18 (-95.64%)
Mutual labels:  latex, katex
Yii2 Quill
Yii 2 implementation of Quill, modern WYSIWYG editor
Stars: ✭ 52 (-87.41%)
Mutual labels:  highlight, katex
Qilin App
Fully hackable text editor developed for exact sciences with built-in KaTeX and AsciiMath support. Extensible via plugins and themes. Exportable as HTML, PDF and GFM.
Stars: ✭ 336 (-18.64%)
Mutual labels:  latex, katex
Remark Math
remark and rehype plugins to support math
Stars: ✭ 129 (-68.77%)
Mutual labels:  latex, katex
Katex
Fast math typesetting for the web.
Stars: ✭ 14,623 (+3440.68%)
Mutual labels:  latex, katex
markdown
πŸ“” A package for converting and rendering markdown documents in TeX
Stars: ✭ 219 (-46.97%)
Mutual labels:  latex, markdown-parser
React Katex
Display math in TeX with KaTeX and ReactJS
Stars: ✭ 345 (-16.46%)
Mutual labels:  latex, katex
Latex.js
JavaScript LaTeX to HTML5 translator
Stars: ✭ 374 (-9.44%)
Mutual labels:  latex
Knitr Examples
A collection of knitr examples
Stars: ✭ 389 (-5.81%)
Mutual labels:  latex
Web Highlighter
✨ A no-runtime dependency lib for text highlighting & persistence on any website βœ¨πŸ–οΈ
Stars: ✭ 373 (-9.69%)
Mutual labels:  highlight
Limecv
A LaTeX CV Document Class
Stars: ✭ 376 (-8.96%)
Mutual labels:  latex

Franklin: a Static Site Generator in Julia.

Lifecycle Build Status Coverage

Franklin is a simple static site generator (SSG) oriented towards technical blogging (code, maths, ...), flexibility and extensibility. The base syntax is plain markdown with a few extensions such as the ability to define and use LaTeX-like commands in or outside of maths environments and the possibility to evaluate code blocks on the fly.

Franklin has a channel #franklin on the Julia slack, this is the best place to ask usage question.

Docs

Go to Franklin's main website. For users already familiar with Franklin you might also find these demos useful.

Some examples of websites using Franklin (if you're using Franklin with a public repo, consider adding the "franklin" tag to the repo to help others find examples, thanks!)

Adapted templates (i.e. starting from one of the available themes)

Custom templates (i.e. migrating an existing design)

Key features

  • Use standard markdown with the possibility to use LaTeX-style commands,
  • Simple way to introduce div blocks allowing easy styling on a page (e.g. "Theorem" boxes etc.),
  • Can execute and show the output of Julia code blocks,
  • Simple optimisation step to accelerate webpage loading speed:
    • compression of HTML and CSS of the generated pages,
    • optional pre-rendering of KaTeX and highlighted code blocks to remove javascript dependency,
  • Easy HTML templating to define or adapt a given layout.

See the docs for more information and examples.

Getting started

With Julia β‰₯ 1.3:

pkg> add Franklin

you can then get started with

julia> using Franklin

julia> newsite("MyNewSite")
βœ” Website folder generated at "MyNewSite" (now the current directory).
β†’ Use serve() from Franklin to see the website in your browser.

julia> serve()
β†’ Initial full pass...
β†’ Starting the server...
βœ” LiveServer listening on http://localhost:8000/ ...
  (use CTRL+C to shut down)

Modify the files in MyNewSite/src and see the changes being live-rendered in your browser. Head to the docs for more information.

You can also start from one of the templates by doing something like:

julia> newsite("MyNewSite", template="vela")

You might want to put the following command in your .bash_profile or .bashrc as a way to quickly launch the server from your terminal:

alias franklin=julia -O0 -e 'using Franklin; serve()'

Heads up!

While Franklin broadly supports standard Markdown there are a few things that may trip you which are either due to Franklin or due to Julia's Markdown library, here are key ones you should keep in mind:

  • when writing a list, the content of the list item must be on a single line (no line break)
  • you can write comments with <!-- comments --> the comment markers <!-- and --> must be separated by a character that is not a - to work properly so <!--A--> is ok but <!---A---> is not, best is to just systematically use a whitespace: <!-- A -->.
  • be careful writing double braces, {{...}} has a meaning (html functions) this can cause issues in latex commands, if you have double braces in a latex command, make sure to add whitespaces for instance write \dfrac{1}{ {101}_{2} } instead of \dfrac{1}{{101}_{2}}. In general use whitespaces liberally to help the parser in math and latex commands.
  • (as of v0.7) code blocks should be delimited with backticks ` you can also use indented blocks to delimit code blocks but you now have to opt in explicitly on pages that would use them by using @def indented_code = true, if you want to use that everywhere, write that in the config.md. Note that indented blocks are ambiguous with some of the other things that Franklin provides (div blocks, latex commands) and so if you use them, you are responsible for avoiding ambiguities (effectively that means not using indentation for anything else than code)

Associated repositories

Licenses

Core:

  • Franklin, FranklinTemplates and LiveServer are all MIT licensed.

External:

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].