dotcomboom AutoSite

AutoSite is a static site generator for the desktop. It slots pages (which can be written in HTML or Markdown) into your own templates. Its GUI makes it easy to jump in and start building your site without fiddling with the command line.

Features:

  • Adjustable user interface with code editor that runs on computers new and old
  • Start page with recently opened sites
  • Quickstart dialog helps get you started
  • Powerful attributes system with conditional support
    • Intuitive UI for viewing attributes
  • CommonMark Markdown support
  • Optional command line version, for console or IDE usage

    "AutoSite Core.exe" D:\Nextcloud\Programming\Web\dcb

  • Many other great features!

Requirements:

  • Pentium-class processor, bare minimum 32 MB (Pentium III or later, 128MB recommended)
  • .NET Framework 2.0
  • Windows 2000 or later for the full experience (Core supports 98)

AutoSite interface

Tech Specs

A site built with AutoSite is comprised of three folders:

  • A pages folder:
    • Pages make up the site's content. These can be HTML, Markdown, or PHP.
    • Markdown pages will be output as HTML.
  • A templates folder:
    • The Templates folder stores HTML-based templates for AutoSite to slot pages into.
    • Most sites only need default.html, but should you desire to, multiple templates is possible.
  • And an includes folder:
    • Site assets, such as css stylesheets, js scripts, images, sounds, etc. go here. These are not modified by AutoSite, and instead just copied over.
    • Both the includes folder and pages folder merge into the same file structure.

AutoSite makes use of two core concepts to make sitebuilding easier:

  • Attributes
    • In a page, you can define attributes with comment lines, like <!-- attrib title: AutoSite -->.
    • These can be referenced anywhere in templates or pages with the form [#title#].
    • There are multiple special attributes as well built-in.
      • [#content#], the page's content. Everything in this page is a part of it.
      • [#path#], the relative path of the page from root, or for example, software/autosite/index.md.
        • You may notice that for Markdown-based pages, the path is not of the outputted HTML page.
      • [#root#], the relative path to root, or for example, ../../. This is used to link stylesheets, images and files in templates and pages.
      • [#modified#], the date the file was last modified, in the computer's format. In this page's case, 7/5/2020.
      • [#template#], a definable attribute that determines the template being used by the page. For example, this page uses the template default.
  • Conditionals
    • Within templates and pages, conditionals can be used to compare an attribute to a specific value.
    • A conditional is written on a single-line, and is written like this:
      • [path=software/autosite/index.md]You are on the AutoSite page.[/path=]
      • [path!=software/autosite/index.md]You are not on the AutoSite page.[/path!=]
    • Having no value is equivalent to the attribute being empty or inexistent. This can be used for simple booleans.
      • [project!=]This page is a project page.[/project!=]
        • Where this would show, the page would have a line like <!-- attrib project: ... -->
        • It doesn't matter what ... is for this to work, just that there is something there. You can use true, yes, or in the case of this page AutoSite, as it is used in other conditionals as well.
      • [project=]This page is not a project page.[/project=]
        • Where this would show, the page would not have a line like <!-- attrib project: ... -->
XXIIVV Webring