GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - lambda-discipline/lambda-discipline.github.io: The website for "Lambda Discipline."

BranchesTags
Open more actions menu

Latest commit

 

History

13 Commits
13 Commits

Folders and files

NameName
Last commit message
Last commit date
.github
.github
 
 
content
content
 
 
static
static
 
 
templates
templates
 
 
.editorconfig
.editorconfig
 
 
.gitattributes
.gitattributes
 
 
.gitignore
.gitignore
 
 
.pre-commit-config.yaml
.pre-commit-config.yaml
 
 
CODE_OF_CONDUCT.md
CODE_OF_CONDUCT.md
 
 
CONTRIBUTING.md
CONTRIBUTING.md
 
 
LICENSE.txt
LICENSE.txt
 
 
README.md
README.md
 
 
SECURITY.md
SECURITY.md
 
 
build.py
build.py
 
 
lbd_lexer.py
lbd_lexer.py
 
 
lychee.toml
lychee.toml
 
 
pyproject.toml
pyproject.toml
 
 
requirements-dev.txt
requirements-dev.txt
 
 
requirements.txt
requirements.txt
 
 
site.toml
site.toml
 
 

Repository files navigation

lambda-discipline.github.io

CI Deploy

The website for Lambda Discipline, served at https://lambda-discipline.github.io.

build.py turns the pages in content/ and the language repository into a static site in _site/:

  • the builtin reference comes from lbd docs --json;
  • every .lbd file under the repository's examples/, plus the golden test programs listed in site.toml, becomes an example page with the output the current lbd prints for it.

Building

You need Python 3.11+ and, unless you pass --lbd, Rust to build lbd.

python -m venv .venv
.venv/bin/pip install -r requirements.txt   # .venv\Scripts\pip on Windows; requirements-dev.txt for the checks
python build.py

clones the language repository into .cache/ (or fast-forwards it), builds lbd with cargo build --release, and writes _site/. Options:

Option What it does
--repo PATH Use an existing checkout as it is instead of .cache/.
--no-update Don't pull the cached clone.
--lbd PATH Use this lbd binary instead of building one.
--out PATH Write the site somewhere other than _site/.

Preview it with:

python -m http.server -d _site

Layout

Path What it holds
content/*.md Pages, with title, description and optional template front matter. index.md is the home page; every other file becomes /<name>/.
templates/ Jinja2 templates. builtins.html, examples.html and example.html render the generated pages.
static/ Copied to the site as is: the stylesheet and the λ logo.
site.toml Navigation, the upstream repository, and which examples to show in what order.
lbd_lexer.py The Pygments lexer used to highlight Lambda Discipline code.

In Markdown pages, fenced code blocks marked lbd are highlighted with that lexer, and [TOC] inserts a table of contents.

Deployment

.github/workflows/deploy.yml builds the site and publishes it with GitHub Pages (Settings → Pages → Source: GitHub Actions). It runs on every push to master, on demand, and once a day. The daily run compares the language repository's latest commit with the one recorded in the live site's /build.json, and only rebuilds when they differ.

Contributing

See CONTRIBUTING.md for the development setup and the checks CI runs (black, ruff, mypy, and lychee for links). Please follow the Code of Conduct, and report vulnerabilities as described in SECURITY.md.

License

MIT

About

The website for "Lambda Discipline."

lambda-discipline.github.io/

Resources

Readme
MIT license

Code of conduct

Code of conduct

Contributing

Contributing

Security policy

Security policy
Activity
Custom properties

Stars

0 stars

Watchers

0 watching

Forks

0 forks
Report repository

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.