Static site generators are tools to create documentation, blogs and landing pages.
This repo contains Github data (stars, forks, issues, create and last modified dates) for 40+ popular open source static site generators (SSG) and the code to create the dataset. There is also a Streamlit app and a Google Colab notebook to explore the dataset.
Why is this data interesting? It help to find answers to the following:
I also share ideas on picking the right SSG tool for your own project based on SSGs I tried myself.
Streamlit app lays out a data story about SSGs with several visualisations.
There is also a post in Streamlit Showcase forum about v.0.4.3 release.
Colab is a notebook with data downloaded and some code for charts.
The stable URL for dataset is https://raw.githubusercontent.com/epogrebnyak/ssg-dataset/main/data/ssg.csv
To download:
import pandas as pd
url = ("https://raw.githubusercontent.com/"
"epogrebnyak/ssg-dataset/main/data/ssg.csv")
df = pd.read_csv(url, parse_dates=["created", "modified"])
You will need a Github token to retrieve stats for many repos. Write out .config.env
at a directory where you run your Python code:
# Your Github username
GH_USER="epogrebnyak"
# Your personal Github token
GH_TOKEN="ghp_AzWYbshEUQ6sQhgxgQ7QyYFJX7g9Tn2uR4sG"
Your personal Github token is here and token documentation is here.
The CSV file is generated from a list of Github repos grouped by programming language. This repo list is stored in a YAML file in the following format:
Go:
- gohugoio/hugo
JavaScript:
- gatsbyjs/gatsby
- hexojs/hexo
- vuejs/vuepress
Python:
- mkdocs/mkdocs
- getpelican/pelican
- sphinx-doc/sphinx
Use ssg.yaml_to_csv()
to update CSV file:
from ssg import yaml_to_csv
yaml_to_csv("data/ssg.yaml", "data/ssg.csv")
You can also run example/update.py
to make new data/ssg.csv
:
poetry run python example/update.py
The update.py
script will also writes metadata.json
file.
You can make a PR to update SSG list, just add a new line to YAML file.
Static Site Generators Build Performance Testing:
Evgeny Pogrebnyak. (2021). Github data for static site generators (SSG) popularity (Version 0.1.2) [Data set]. Zenodo. http://doi.org/10.5281/zenodo.4429834