Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kristoff-it/zine
Fast, Scalable, Flexible Static Site Generator (SSG)
https://github.com/kristoff-it/zine
ssg static-site-generator zig-package
Last synced: 6 days ago
JSON representation
Fast, Scalable, Flexible Static Site Generator (SSG)
- Host: GitHub
- URL: https://github.com/kristoff-it/zine
- Owner: kristoff-it
- License: mit
- Created: 2023-11-30T15:11:26.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-12-02T16:07:44.000Z (10 days ago)
- Last Synced: 2024-12-06T17:03:20.421Z (6 days ago)
- Topics: ssg, static-site-generator, zig-package
- Language: Zig
- Homepage: https://zine-ssg.io
- Size: 22.8 MB
- Stars: 670
- Watchers: 12
- Forks: 40
- Open Issues: 18
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- my-awesome-github-stars - kristoff-it/zine - Fast, Scalable, Flexible Static Site Generator (SSG) (Zig)
README
Zine
Fast, Scalable, Flexible Static Site Generator (SSG)
Zine is pronounced like in fanzine.
## Development Status
Alpha stage, it's strongly recommended to first try Zine out on a small project to get a feeling of the limits of the current implementation.## Getting Started
Go to https://zine-ssg.io to get started.
## Development
It is recommended to develop Zine against a site project (eg [kristoff-it/zine-ssg.io](https://github.com/kristoff-it/zine-ssg.io) by running `zig build` on the project and setting the Zine dependency to a local checkout in `build.zig.zon`:
`zine-ssg.io/build.zig.zon`
```zig
.{
.name = "Zine Sample Site",
.version = "0.0.0",
.dependencies = .{
.zine = .{
.path = "../zine",
},
},
.paths = .{"."},
}
```Two flags that are going to help you develop Zine:
### `-Ddebug`
Builds Zine in debug mode, which means faster rebuilds and enabling debug logging.### `-Dlog=foo`
Enables logging only for the specified scope. Can be passed multiple times to enable more than one scope.See at the top of each component what is the scope name in a declaration that looks like this:
`zine/server/main.zig`
```zig
const log = std.log.scoped(.server);
````super/src/sitter.zig`
```zig
const log = std.log.scoped(.sitter);
```