====== Static Site Generators at SDF ====== [[wp>static site generator|Static Site Generators]] (SSGs) provide a content generation environment incorporating templates--that can be customized to give your website a uniform look (with sidebars, added search bar, menus, etc)--along with a program that takes content files that you create by writing text files using a markup language, that, with a push of a button, generates an updated website and pushes the updates to your web folder for you. They are called "static" because the content is created at push time, in contrast to [[web_content_management|content management systems]] that use a database or files along with code to generate each page on the fly as a browser requests it. Consequently, websites generated via SSGs tend to be very quick and responsive in comparison. The trade-off is that changes require a regeneration and push of the new site, however the SSG should make this process quick and rather painless. There are a few [[wp>static site generator]] packages installed at SDF. Their templating systems are rather robust: * [[blogging_with_jekyll|Jekyll]] (needs ARPA membership) * [[blogging_with_Hugo| Hugo]] (Hugo needs ''git'', so only META can run) * external instructions: https://gohugo.io/getting-started/quick-start/ You can also install these simple site generator progams in your user space to use: * [[a_simple_static_site_generator|SSG5]] (only needs USER membership level) * [[blogging_with_zen_static|Zen Static]] (only needs USER membership level) There are also all kinds of alternative tools people are making all the time, that can give you a simplified SSG-like functionality, but much simpler, and can be run with just USER membership. For example: * [[https://alamantus.codeberg.page/siteleteer/#About%20siteleteer | Siteleteer]] is a cool page you can just copy to your local machine, create multiple wiki-like pages in your local environment, save the results, and [[transferring_files|remote copy]] it to your SDF web space, and voila you have a "sitelet" (it's all in one file). Using the existing file to add more content and then pushing this to your web space replacing the existing version is basically the same as a simple (( Siteleteer relies on client-side javascript to do some of its magic, so it is not going to present right in lynx or noscript browsers)) SSG! * [[https://github.com/oscarmorrison/md-page/blob/review/README.md | oscarmorrison's md-page]] is a very simple bit of javascript that lets you just write a web page in markdown, and the javascript converts it live into HTML. It just lets you easily set up to author pages using Markdown instead of raw html, which is nice, though it does not really let you generate a static site at all...