{"id":13804495,"url":"https://github.com/kambrium/dssg","last_synced_at":"2025-04-23T20:47:55.711Z","repository":{"id":53790130,"uuid":"91019544","full_name":"kambrium/dssg","owner":"kambrium","description":"A static site generator with a different approach","archived":false,"fork":false,"pushed_at":"2023-03-12T06:12:15.000Z","size":69,"stargazers_count":20,"open_issues_count":0,"forks_count":5,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-18T05:53:43.747Z","etag":null,"topics":["d","dlang","dssg","markdown","mustache","static-site-generator","toml"],"latest_commit_sha":null,"homepage":"","language":"D","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kambrium.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2017-05-11T20:14:55.000Z","updated_at":"2024-09-02T17:47:59.000Z","dependencies_parsed_at":"2024-01-03T01:30:19.993Z","dependency_job_id":null,"html_url":"https://github.com/kambrium/dssg","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kambrium%2Fdssg","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kambrium%2Fdssg/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kambrium%2Fdssg/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kambrium%2Fdssg/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kambrium","download_url":"https://codeload.github.com/kambrium/dssg/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250513648,"owners_count":21443203,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["d","dlang","dssg","markdown","mustache","static-site-generator","toml"],"created_at":"2024-08-04T01:00:48.855Z","updated_at":"2025-04-23T20:47:55.680Z","avatar_url":"https://github.com/kambrium.png","language":"D","funding_links":[],"categories":["Web Frameworks"],"sub_categories":["Bare metal / kernel development"],"readme":"DSSG - A static site generator with a different approach\n========================================================\n\n![DSSG logo](dssg-logo.jpg)\n\n[![Build Status](https://travis-ci.org/kambrium/dssg.svg?branch=master)](https://travis-ci.org/kambrium/dssg)\n\nAdvantages\n----------\nUnlike 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.\n\nFor maximum flexibility, each project can be based on multiple templates.\n\nContent may be written in both [Markdown](https://en.wikipedia.org/wiki/Markdown \"Markdown\") or pure HTML.\n\nHow does it work?\n-----------------\nDSSG creates HTML pages out of [TOML](https://github.com/toml-lang/toml \"TOML\") files. Each TOML file represents one HTML page and consists of as many key-value pairs as you want.\n\nThe 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.\n\nTemplates are written in the [Mustache template language](https://mustache.github.io/ \"Mustache template language\"). DSSG substitues each variable in the template with its equivalent from the TOML file. \n\nWhy is it called DSSG?\n-----------------------\nDSSG is written in the [D programming language](https://dlang.org/ \"D programming language\"). DSSG stands for **D** **S**tatic **S**ite **G**enerator.\n\nDownload\n--------\nThe latest binaries are available on [https://github.com/kambrium/dssg/releases](https://github.com/kambrium/dssg/releases \"https://github.com/kambrium/dssg/releases\"). Currently, there are Ubuntu 16.04 and Windows 10 binaries.\n\nInstallation (Linux)\n--------------------\n1. After you have downloaded the software (see above), open a terminal and unzip the archive.\n\n    ```bash\n    $ unzip dssg_X.Y.Z_ubuntu0000_x64.zip -d /this/is/your/dssg/path/\n    ```\n\n2. Change to the directory that contains the DSSG binary and set the permissions so that you can execute the program.\n\n    ```bash\n    $ cd /this/is/your/dssg/path/\n    $ chmod u+x dssg\n    ```\n\n3. 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**.\n\n    ```bash\n    $ echo 'export PATH=$PATH:/this/is/your/dssg/path/' \u003e\u003e ~/.bashrc\n    $ source ~/.bashrc\n    ```\n\nInstallation (Windows)\n----------------------\n1. After you have downloaded the software (see above), open the PowerShell and unzip the archive.\n\n    ```powershell\n    PS\u003e Expand-Archive -Path dssg_X.Y.Z_win_x64.zip -DestinationPath C:\\this\\is\\your\\dssg\\path\n    ```\n\n2. Add the directory that contains the DSSG binary to your Path.\n\n    ```powershell\n    PS\u003e [System.Environment]::SetEnvironmentVariable(\"Path\", [System.Environment]::GetEnvironmentVariable(\"Path\", [EnvironmentVariableTarget]::User) + \";C:\\this\\is\\your\\dssg\\path\", [EnvironmentVariableTarget]::User)\n    ```\n\n3. Restart the PowerShell.\n\nTry the example\n---------------\n\n```bash\n$ git clone https://github.com/kambrium/dssg-example.git\n$ cd dssg-example\n$ dssg build\n$ dssg serve\n```\n\nBegin from scratch\n------------------\n\n```bash\n$ dssg new myproject\n$ cd myproject\n// Create Mustache templates in 'contents/_templates'\n// Create TOML files, CSS, JavaScript, images etc. in 'contents'\n$ dssg build\n$ dssg serve\n```\n\nMade with DSSG\n--------------\n- [1572.li](http://1572.li \"http://1572.li\")\n\nLicense\n-------\nMIT","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkambrium%2Fdssg","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkambrium%2Fdssg","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkambrium%2Fdssg/lists"}