Automatically generate a website on GitHub Pages using Markdown files.
Markdown in, GitHub Pages out!
Your own Markdown blog on GitHub.
- Fork SkunkHTML repository on GitHub.
- Enable GitHub Pages in the repository settings (choose GitHub Actions as the source).
- Done. Your blog is online. Example: https://mg0x7BE.github.io/skunk-html/
Upload Markdown (.md) files to publish new posts.
When a Markdown (.md) file is created and placed in the /markdown-blog/ folder, the rest happens automatically. GitHub Actions detects changes pushed to the repository, triggers the build process, and deploys the updated site.
-
Blog articles and other content are written in Markdown, allowing for easy content creation and management. These Markdown files are automatically converted to HTML during the build process using F# and the FSharp.Formatting library.
-
The deployment process is fully automated using GitHub Actions. Any changes to this repository are immediately reflected on the live site.
-
Giscus comment system is supported.
-
The repository is 100% ready to work directly on GitHub without the need to download it locally. Simply fork it to create your own website. Don't forget to enable GitHub Pages in repo! (Settings ➔ Pages ➔ Build and deployment: "GitHub Actions").
-
/: Root directory of the project..github/workflows/: GitHub Actions workflow file. Responsible for automatically generating final website on GitHub Pagesassets/: Files used across the entire site, such as the avatar, favicon, and other shared resources.css/: CSS files for the site.fonts/: Custom fonts go here.html/: HTML fragments used throughout the site, such as the title and footer.markdown-blog/: Directory containing the Markdown files for articles and other content. Blog articles are identified by file names that start with a digit.images/: Images used in the articles.
scripts/: Syntax highlighting script and optionally other custom scripts..skunk-html-output/: Directory that will be created during the build process, with the generated HTML files.
-
LICENSE: License file for the project. -
Program.fs: F# program that handles the generation of HTML from Markdown -
README.md: This file. -
skunk-html.fsproj: Project file
Detailed examples can be found at: https://mg0x7BE.github.io/skunk-html
Suggestions, bug reports, and pull requests welcome. Use discussions, issues, or PRs.
This project is licensed under the terms of the Unlicense.
- MVP.css for styling
- microlight.js for syntax highlighting
- FSharp.Formatting library for Markdown processing
To build locally:
- Download and install .NET on Linux / macOS / Windows
- Run the following commands
git clone https://github.com/mg0x7BE/skunk-html.git
cd skunk-html
dotnet restore
dotnet run
- Done. Your site is in the
skunk-html-outputfolder.
