Your assistant in making a static site!
A minimalist static site generator written in Rust, inspired by Hugo. The site's html template and file layout is based off of HTML5 Boilerplate.
You can see an example of a site generated with md_puppy at https://softannalee.neocities.org
To install, first install Rust and Cargo. Then and use one the following commands;
cargo install md_puppy
or
cargo install --git https://github.com/SoftAnnaLee/md_puppy
First clone this repo and then use cargo build
or cargo install
like the following code exerpt;
git clone https://github.com/SoftAnnaLee/md_puppy
cd md_puppy
cargo install --path "$(pwd)"
Use md_puppy help
to display the following information;
``` md_puppy 1.0.0 AnnaLee <@SoftAnnaLee> A minimal static site generator
USAGE: md_puppy [OPTIONS] [SUBCOMMAND]
OPTIONS:
-c, --completions
SUBCOMMANDS: build Process all files in the 'content/' folder and parse into a website help Print this message or the help of the given subcommand(s) init Download and initalize directories needed for website new Create a new file within the 'content/' folder with default frontmatter ```
md_puppy init
is used to initalize a directory with the necessary files needed to begin creating a website.md_puppy new <FILEPATH>
is used to create blank files with pre-configured frontmatter. All pages will be created in the content/
directory, and any subdirectories you add to the filepath.md_puppy build
is used to compile the markdown in the content/
directory, and places a fully formed site in the site/
directory.md_puppy --completions <SHELL>
is used to generate shell completions, and outputs to stdout. I reccommend looking up how to add shell completions to your personal shell to utilize this.The site generator only has a single theme, which I used in my personal site. I give free usage to copy and reuse it; but I heavily encourage you to personalize it yourself. It is only HTML and CSS, so it should be pretty easy to modify to your own personal taste.
There is also a config.toml which has a default configuration of the following; ```
sitename: mdpuppy site
staticurl: https://github.com/SoftAnnaLee/mdpuppy/releases/download/static/static.zip
boilerplateurl: https://raw.githubusercontent.com/SoftAnnaLee/mdpuppy/main/template/boilerplate.html
base_url: https://www.example.com/ ```
If you have a different HTML boilerplate you'd like to use, or a different theme to pull into static_url, then you can change those details there.
I am a beginner programmer who is trying to teach themselves Rust and finishing projects. So this is pretty minimal and designed around my personal use case (running a personal blog and website). If you want any features added, I may do so on request, but sadly no guarantees. Feel free to fork or add pull requests as well!