dotcomboom AutoSite

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

Features:

  • A user interface that's adjustable to suit your workflow, with a 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
    • The Attribute Map lets you see your attributes at a glance and drag them into your open files
    • Quick Insert right in the editor (Ctrl+Space) to add attributes and perform actions even faster
  • CommonMark Markdown support
  • Optional command line version, for console or IDE usage

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

  • Many other great features!

Requirements:

  • Bare minimum: Pentium-class processor, 32MB RAM (Pentium III or later, 128MB recommended minimum)
  • .NET Framework 2.0
  • Windows 98 to Windows 10

AutoSite interface

The AutoSite interface, with editor in tow.

More screenshots:

AutoSite interface, with Editor and Preview hidden

AutoSite, with the Editor and Preview panels closed. Use any IDE or editor you fancy.

AutoSite Core, building from the command line

AutoSite Core lets you build from cmd, a batch file or your preferred IDE.

What's new in RC5?

Please visit the new site for future updates!

+ Localization support added
    + Polish translations by matfloor.net
    + Welsh translations by caby.somnolescent.net
+ Added Open file location to Explorer context menu
+ Handling of renamed, open files has been vastly improved
+ Opening an inexistent recent site now handled
+ When a new file is added to a folder, the folder's node is now expanded if it isn't already
+ Start page no recents text now wraps based on window size
+ Version number can now be shown/hid
+ .NET Framework 4.0 to 4.8 added to targeted versions
+ Quick Insert now captures focus when opening, and the Tab key can now be used to make selections
- Panel sizing behavior adjusted with some default settings tweaked
- System icon cache now cleared when a site is opened
- Using View Output when the output file doesn't exist is now handled
- Default new HTML template adjusted to be more standards-compliant

Thanks for using AutoSite! If you have any feedback for upcoming releases, let me know, either by email or an issue on the GitHub repository.

Devlogs and posts

These are informal updates I put up on my blog occasionally while working on (or with) AutoSite.

RSS RSS Feed

Even earlier:

Specs Sheet

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 allows you to use these two concepts to make your 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, 8/12/2021.
      • [#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: ... -->

This page was last modified 8/12/2021.

XXIIVV Webring