krompaco / record-collector

A .NET 8.0 Blazor SSR static site generator
https://record-collector.net/
MIT License
45 stars 10 forks source link
blazor dotnet-core hotwire-stimulus hugo mit-license netlify static-site-generation static-site-generator tailwind-css

Record Collector

Record Collector's offical web site is being filled with content and will have all the information on what the project is and does. Easiest starting point is to set up the repository locally and run the web project, see the getting started page for instructions.

Inspiration

This project is inspired by Hugo and I try to be somewhat compatible with the same content structure and support parsing of TOML, YAML and JSON front matter.

Bright ideas

The content file layer is converted to C# lists and objects and then used in a regular ASP.NET project which is also where you can work live on both content preview and templating. This means you now can use your existing ASP.NET Blazor SSR and C# skills creating static site templates!

In this setup the generation process work using the WebApplicationFactory from the Microsoft.AspNetCore.Mvc.Testing package so I don't have to fall back to a console application or custom web servers for crunching the files and templates which seems to be the norm for static site generation. Feels good to me and generation times are still fast.

Open source references

Built using .NET 8.0 (through 3.1, 5.0 and 6.0) and with these packages and projects. Thank you!

Project License
YamlDotNet MIT
Tomlyn BSD-Clause 2
Markdig BSD-Clause 2
Tailwind CSS MIT
Hotwire MIT
Simple.css MIT
Html Agility Pack MIT

Other things such as Webpack can be involved too but these are the ones I reference directly.

Quality control tools

Official web site

Netlify Status

The official web site is generated and deployed with Netlify using their build-image.

It has the default frontend.

Demo web site with Simple.css frontend

Netlify Status

The Simple.css demo web site is generated and deployed with Netlify using their build-image.

It has the simplecss frontend configuration.

Demo web site with default frontend

Build and deploy to Netlify

This site is generated on push and deployed to Netlify using a GitHub Action.

It has the default frontend.

License

This project is licensed under the MIT license. See the LICENSE file for more info.

The name

The name is a tribute to the brightest and most sophisticated humans on the planet; the record collectors.