yet-another-static-site-generator / yass

Licence: GPL-3.0 license
Yet Another Static Site (Generator)

Programming Languages

Ada
118 projects
tcl
693 projects
CSS
56736 projects

Projects that are alternatives of or similar to yass

Loconotion
📄 Python tool to turn Notion.so pages into lightweight, customizable static websites
Stars: ✭ 237 (+1216.67%)
Mutual labels:  static-site-generator
Next.js
The React Framework
Stars: ✭ 78,384 (+435366.67%)
Mutual labels:  static-site-generator
coltrane
A simple content site framework that harnesses the power of Django without the hassle.
Stars: ✭ 57 (+216.67%)
Mutual labels:  static-site-generator
Junglejs
The Jamstack static site framework for Svelte
Stars: ✭ 246 (+1266.67%)
Mutual labels:  static-site-generator
Gatsby
Build blazing fast, modern apps and websites with React
Stars: ✭ 51,925 (+288372.22%)
Mutual labels:  static-site-generator
presta
Minimalist serverless framework for SSR, SSG, serverless APIs and more.
Stars: ✭ 89 (+394.44%)
Mutual labels:  static-site-generator
Docfx
Tools for building and publishing API documentation for .NET projects
Stars: ✭ 2,873 (+15861.11%)
Mutual labels:  static-site-generator
phenomic
DEPRECATED. Please use Next.js instead.
Stars: ✭ 3,246 (+17933.33%)
Mutual labels:  static-site-generator
Hugo
The world’s fastest framework for building websites.
Stars: ✭ 55,899 (+310450%)
Mutual labels:  static-site-generator
wowchemy-hugo-themes
🔥 Hugo website builder, Hugo themes & Hugo CMS. No code, easily build with blocks! 创建在线课程,学术简历或初创网站。#OpenScience
Stars: ✭ 6,891 (+38183.33%)
Mutual labels:  static-site-generator
Statik
Multi-purpose static web site generator aimed at developers.
Stars: ✭ 249 (+1283.33%)
Mutual labels:  static-site-generator
Statiq.framework
A flexible and extensible static content generation framework for .NET.
Stars: ✭ 251 (+1294.44%)
Mutual labels:  static-site-generator
sitio
imperative static site generator powered by React and browserify
Stars: ✭ 49 (+172.22%)
Mutual labels:  static-site-generator
Serum
A simple static website generator written in Elixir
Stars: ✭ 246 (+1266.67%)
Mutual labels:  static-site-generator
tinyjam
A radically simple, zero-configuration static site generator in JavaScript
Stars: ✭ 137 (+661.11%)
Mutual labels:  static-site-generator
Elegant
Best theme for Pelican Static Blog Generator
Stars: ✭ 241 (+1238.89%)
Mutual labels:  static-site-generator
vscode-front-matter
Front Matter is a CMS running straight in Visual Studio Code. Can be used with static site generators like Hugo, Jekyll, Hexo, NextJs, Gatsby, and many more...
Stars: ✭ 962 (+5244.44%)
Mutual labels:  static-site-generator
readme-in-static-site
💎 Transform and insert your GitHub readme in your static site.
Stars: ✭ 24 (+33.33%)
Mutual labels:  static-site-generator
roadbike
小书匠官网博客源码
Stars: ✭ 46 (+155.56%)
Mutual labels:  static-site-generator
grammer-blog
My personal blog about programming or random stuff. Made using Vue JS 2 and Gridsome as a jamstack framework for Vue JS. Hosted on vercel
Stars: ✭ 14 (-22.22%)
Mutual labels:  static-site-generator

YASS: Yet Another Static Site (Generator)

As name says, it is static site generator written in Ada. It is headless application (no user interface). The program documentation is included in distribution.

INFO: This project is no longer maintained. Feel free to clone it and take care about it.

Features

  • Support almost infinite amount of custom tags in HTML templates (depends on available RAM)
  • Separated tags for whole site and each page
  • Fast
  • Can be extended with modules written in any script/programming language
  • Generating sitemaps
  • Generating Atom feeds
  • Auto reconfigure server when configuration file was changed

Build from sources

To build you need:

Navigate to the main directory(where this file is) to compile:

  • The easiest way to compile program is use Gnat Studio included in GNAT. Just run GPS, select yass.gpr as a project file and select option Build All.

  • If you prefer using console: in main source code directory type gprbuild for debug mode build or for release mode: gprbuild -XMode=release. If you have installed Bob you can type bob debug for build in debug mode or bob release to prepare release for the program.

If you want to be able to print content of README.md file to terminal (by readme program command), copy file README.md to bin directory.

Note: If you want to move the program around, compile it in release mode. In debug mode the program may have problems with finding all dependencies.

Build unit tests

Navigate to tests/driver directory from the main directory (where this file is):

  • From console: type gprbuild -P test_driver.gpr

Or if you have Bob installed, type bob tests.

Running the program

Linux

To see all available options, type in console ./yass help in directory where binary file is. It works that same way for downloaded AppImage version of program. More information about using AppImage files you can find here:

https://docs.appimage.org/user-guide/run-appimages.html

If you want to run the program from other directory, you should set the environment variable YASSDIR to your current directory. Example: export YASSDIR=$(pwd). You don't need to set it manually when you use AppImage version of the program.

Windows

To see all available options, type in console yass.exe help in the directory where binary file is. If you want to run the program from other directory, you should set the environment variable YASSDIR to your current directory. Example: set YASSDIR="C:\yass"

Running unit tests

From the main directory (where this file is) go to test/driver directory and type in console ./test_runner. If you have Bob installed, you can type bob runtests.

Testing versions

Here are available testing versions of the program. You can find them in GitHub Actions. Just select option from the list of results to see Artifacts list. To use them, first you must download normal release. Then, for Linux: inside directory where the program is, type ./yass-x86_64.AppImage --appimage-extract to extract whole program to directory squashfs-root. And then move files from the archive to the proper location. To run that version, enter squashfs-root directory and type in console ./AppRun. For Windows: unzip files (replace existing) to the proper location where the program is installed.

  • yass-development-windows.tar contains Windows 64-bit version of the program.

  • yass-development-linux.tar contains Linux 64-bit version of the program.

Size is a file's size after unpacking. You will download it compressed with Zip.

Generating code documentation

To generate (or regenerate) code documentation, you need ROBODoc and Tcl scripting language. If you have them, in main program directory (where this file is) enter terminal command: others/generatedocs.tcl. For more information about this script, please look here. This version of script have set all default settings for the YASS code. If you have Bob installed, you can type bob docs.

Contributing to the project

For detailed information about contributing to the project (bugs reporting, ideas propositions, code conduct, etc), see CONTRIBUTING.md

Licenses

  • Yass is released under GNU GPL v3 license.

  • Libcmark library distributed with the program is released under a few Open Sources licenses

https://github.com/commonmark/cmark

TODO (someday or if someone wants to contribute)

  • More unit tests
  • Formally verify the project with SPARK
  • Your propositions?

As usual, I probably forgot about something important here :)

Bartek thindil Jasicki & A.J. Ianozi

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].