Minimal Framework For Building Static Websites
HTML, Markdown, Front Matter + Custom .tsx and .jsx
Components.
Installation
Full installation instructions can be found at fusionssg.com.
The Name
fusion plays on the idea of fusing together various elements (HTML, Markdown, Components, JSON data, YAML front matter, etc.).
Features
- No initial project configuration is required.
- DOMless and serverless results in very quick build times.
- HTML document composition from markdown, HTML, tokens, .jsx and .tsx components, JSON data sources and meta data.
- .tsx and .jsx sand-boxed exaction.
- .ts browser scripts.
- Portfolio (multiple pages) generation via collections.
- Generated projects provide package.json scripts for development and release builds.
- CLI for one-off development and one-off release builds.
- Base URL support for sites hosted in sub folders.
- Works in progress for HTML documents that should be ignored during release builds.
- Blogging support, including multiple categories and tags.
- Optional cache busting during release builds for your project's assets (v1.2.0).
- Conditional composition of includes based on build strategy (v1.2.0).
- The reporting of works in progress during release builds (v1.2.0).
- Additional post metadata exposed as simple tokens (v1.2.0).
- Beautified HTML documents.
Project Development
The project is written in TypeScript
(no excuses, it just works beautifully) and runs on Node
.
Project Scope
The project's scope is limited to generating robust and resilient HTML documents and websites and requires no knowledge of other front-end frameworks. This keeps the scope of the project focused and preventing feature creep.
Versioning
Current version: v1.2.0. We use Semantic Versioning.
What Still Remains To Be Done
- fusion.ssg deserves an awesome logo. If you are a graphic artist 🎨, we would love ❤️ your contribution to this project and we we'd be thrilled to give you well-deserved, prominent attribution! Please reply via issues.
Long Term Goals
- Seek RFC.
- Accept pull requests when procedures and policies are in place to govern the process.
Community
For help, discussion about best practices, or any other conversation that would benefit from being searchable:
Discuss _fusion.ssg _on Github
For casual conversation with others about using fusion.ssg:
Discuss _fusion.ssg on Twitter and other social media..
And If You Wouldn't Mind
Please consider 👀watching and 🌟starring this repo as these will provide the motivation to keep moving forward.