All Projects → kambrium → dssg

kambrium / dssg

Licence: MIT license
A static site generator with a different approach

Programming Languages

d
599 projects

Projects that are alternatives of or similar to dssg

Toml To Go
Translates TOML into a Go type in your browser instantly
Stars: ✭ 134 (+793.33%)
Mutual labels:  toml
Python Benedict
dict subclass with keylist/keypath support, I/O shortcuts (base64, csv, json, pickle, plist, query-string, toml, xml, yaml) and many utilities. 📘
Stars: ✭ 204 (+1260%)
Mutual labels:  toml
Cli
A simple, fast, and fun package for building command line apps in Go
Stars: ✭ 16,995 (+113200%)
Mutual labels:  toml
Rq
Record Query - A tool for doing record analysis and transformation
Stars: ✭ 1,808 (+11953.33%)
Mutual labels:  toml
Simple Settings
A simple way to manage your project settings.
Stars: ✭ 165 (+1000%)
Mutual labels:  toml
Tomlc99
TOML C library
Stars: ✭ 216 (+1340%)
Mutual labels:  toml
Datafiles
A file-based ORM for Python dataclasses.
Stars: ✭ 113 (+653.33%)
Mutual labels:  toml
VueXcode
Syntax highlighting for .Vue components and .mustache templates in Xcode
Stars: ✭ 25 (+66.67%)
Mutual labels:  mustache
Protodep
Collect necessary .proto files (Protocol Buffers IDL) and manage dependencies
Stars: ✭ 167 (+1013.33%)
Mutual labels:  toml
Joshuto
ranger-like terminal file manager written in Rust
Stars: ✭ 224 (+1393.33%)
Mutual labels:  toml
Fig
A minimalist Go configuration library
Stars: ✭ 142 (+846.67%)
Mutual labels:  toml
Toml
A PHP parser for TOML
Stars: ✭ 152 (+913.33%)
Mutual labels:  toml
Config
📝 Go config manage(load,get,set). support JSON, YAML, TOML, INI, HCL, ENV and Flags. Multi file load, data override merge, parse ENV var. Go应用配置加载管理,支持多种格式,多文件加载,远程文件加载,支持数据合并,解析环境变量名
Stars: ✭ 225 (+1400%)
Mutual labels:  toml
Taplo
A TOML toolkit written in Rust
Stars: ✭ 136 (+806.67%)
Mutual labels:  toml
tomlcheck
A syntax checker for TOML files
Stars: ✭ 28 (+86.67%)
Mutual labels:  toml
Devshell
Per project developer environments
Stars: ✭ 129 (+760%)
Mutual labels:  toml
Awesome Cms
📚 A collection of open and closed source Content Management Systems (CMS) for your perusal.
Stars: ✭ 2,498 (+16553.33%)
Mutual labels:  toml
serdepp
c++ serialize and deserialize adaptor library like rust serde.rs
Stars: ✭ 70 (+366.67%)
Mutual labels:  toml
tomlrb
A Racc based TOML parser
Stars: ✭ 63 (+320%)
Mutual labels:  toml
Konf
A type-safe cascading configuration library for Kotlin/Java/Android, supporting most configuration formats
Stars: ✭ 225 (+1400%)
Mutual labels:  toml

DSSG - A static site generator with a different approach

DSSG logo

Build Status

Advantages

Unlike other static site generators, DSSG doesn't differentiate between front matter and a content section in its content files. This makes it very easy to create web pages based on templates with multiple content sections.

For maximum flexibility, each project can be based on multiple templates.

Content may be written in both Markdown or pure HTML.

How does it work?

DSSG creates HTML pages out of TOML files. Each TOML file represents one HTML page and consists of as many key-value pairs as you want.

The key-value pairs contain both metadata and the actual page content. There can be multiple key-value pairs with page content. If a key in your TOML file ends with _md, DSSG expects Markdown as value. DSSG will turn the Markdown into HTML.

Templates are written in the Mustache template language. DSSG substitues each variable in the template with its equivalent from the TOML file.

Why is it called DSSG?

DSSG is written in the D programming language. DSSG stands for D Static Site Generator.

Download

The latest binaries are available on https://github.com/kambrium/dssg/releases. Currently, there are Ubuntu 16.04 and Windows 10 binaries.

Installation (Linux)

  1. After you have downloaded the software (see above), open a terminal and unzip the archive.

    $ unzip dssg_X.Y.Z_ubuntu0000_x64.zip -d /this/is/your/dssg/path/
  2. Change to the directory that contains the DSSG binary and set the permissions so that you can execute the program.

    $ cd /this/is/your/dssg/path/
    $ chmod u+x dssg
  3. Add the directory that contains the DSSG binary to your PATH. Please refer to the documentation of your distribution for further details. Here is an example of how it works on Ubuntu with Bash.

    $ echo 'export PATH=$PATH:/this/is/your/dssg/path/' >> ~/.bashrc
    $ source ~/.bashrc

Installation (Windows)

  1. After you have downloaded the software (see above), open the PowerShell and unzip the archive.

    PS> Expand-Archive -Path dssg_X.Y.Z_win_x64.zip -DestinationPath C:\this\is\your\dssg\path
  2. Add the directory that contains the DSSG binary to your Path.

    PS> [System.Environment]::SetEnvironmentVariable("Path", [System.Environment]::GetEnvironmentVariable("Path", [EnvironmentVariableTarget]::User) + ";C:\this\is\your\dssg\path", [EnvironmentVariableTarget]::User)
  3. Restart the PowerShell.

Try the example

$ git clone https://github.com/kambrium/dssg-example.git
$ cd dssg-example
$ dssg build
$ dssg serve

Begin from scratch

$ dssg new myproject
$ cd myproject
// Create Mustache templates in 'contents/_templates'
// Create TOML files, CSS, JavaScript, images etc. in 'contents'
$ dssg build
$ dssg serve

Made with DSSG

License

MIT

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].