Skip to main content

A minimal, opinionated static site generator

Project description

Midas

A minimal static site generator. Put markdown in site/, run midas serve, get a website.

Quick start

midas init my-blog
cd my-blog
midas serve

Or manually:

mkdir site
echo -e '---\ntitle: Hello\n---\n\nWelcome' > site/index.md
midas serve

Open http://localhost:8000.

How it works

Your content lives in site/. Every .md file becomes a page. Everything else (images, CSS, fonts) is copied to _dist/ as-is — the folder structure is your site structure.

site/
├── index.md       →  /
├── about.md       →  /about/
├── p/
│   └── post.md    →  /p/post/
├── style.css      →  /style.css
└── img/
    └── photo.jpg  →  /img/photo.jpg

Blog posts

Files in p/ (or your configured postPrefix) are treated as blog posts, sorted by date (set in frontmatter), and included in RSS feeds.

Styles

Midas ships with a base stylesheet (/midas.css). Add overrides in site/style.css — it's loaded after the base.

Commands

Command Description
midas init [dir] Scaffold a project into an empty directory
midas build Build the site to _dist/
midas serve Build and start a dev server on http://localhost:8000
midas clean Delete _dist/

Configuration

midas.yaml is optional. Without it, Midas uses sensible defaults. Set site.url for RSS feeds and site.name for the site header.

site:
  url: "https://example.com"
  name: "My Site"

languages:
  default: en
  additional: [fi]

See the configuration reference for all available options.

Deploying

Push to GitHub and connect to a static host:

  • GitHub Pages — deploy via GitHub Actions
  • Cloudflare Pages — set build command to pip install midas-ssg && midas build, output directory to _dist

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

midas_ssg-0.1.31.tar.gz (61.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

midas_ssg-0.1.31-py3-none-any.whl (66.6 kB view details)

Uploaded Python 3

File details

Details for the file midas_ssg-0.1.31.tar.gz.

File metadata

  • Download URL: midas_ssg-0.1.31.tar.gz
  • Upload date:
  • Size: 61.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for midas_ssg-0.1.31.tar.gz
Algorithm Hash digest
SHA256 b39841ed34d97f1f6ab7f66190b0fded9f7a65ec0ca8f05dd62e546a69f657be
MD5 8cdfd9956cdd24666c86b2a6e677c539
BLAKE2b-256 c74cd3a69024d00fef4d6932953899bc488365dbd705fb58d4f55511cede4a9c

See more details on using hashes here.

Provenance

The following attestation bundles were made for midas_ssg-0.1.31.tar.gz:

Publisher: publish.yml on vike256/Midas

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file midas_ssg-0.1.31-py3-none-any.whl.

File metadata

  • Download URL: midas_ssg-0.1.31-py3-none-any.whl
  • Upload date:
  • Size: 66.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for midas_ssg-0.1.31-py3-none-any.whl
Algorithm Hash digest
SHA256 91fca1a9bfa26584a7e50b4e592be31c46f0f6d541e03d6ac47876b59ccb76c6
MD5 499a42eccccbabb488d67982eec379ec
BLAKE2b-256 b65217a7a539b9116c0f4a5f8970f39b6d262d6d6a82e46a96bb371795fa6056

See more details on using hashes here.

Provenance

The following attestation bundles were made for midas_ssg-0.1.31-py3-none-any.whl:

Publisher: publish.yml on vike256/Midas

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page