Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
49 changes: 49 additions & 0 deletions .github/workflows/pages.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
name: Deploy GitHub Pages

on:
push:
branches:
- main
- worktree-github-pages
workflow_dispatch:

permissions:
contents: read
pages: write
id-token: write

concurrency:
group: pages
cancel-in-progress: false

jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: ruby/setup-ruby@v1
with:
ruby-version: "3.2"
bundler-cache: true
working-directory: docs
- uses: actions/configure-pages@v5
with:
enablement: true
- name: Build
working-directory: docs
run: bundle exec jekyll build
env:
JEKYLL_ENV: production
- uses: actions/upload-pages-artifact@v3
with:
path: docs/_site

deploy:
needs: build
runs-on: ubuntu-latest
environment:
name: github-pages
url: ${{ steps.deploy.outputs.page_url }}
steps:
- id: deploy
uses: actions/deploy-pages@v4
6 changes: 6 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -36,3 +36,9 @@ recording.jfr

# OS X
.DS_Store

# Jekyll / GitHub Pages
docs/_site/
docs/.jekyll-cache/
docs/.jekyll-metadata
docs/vendor/
7 changes: 7 additions & 0 deletions docs/Gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
source "https://rubygems.org"

gem "jekyll", "~> 4.3"
gem "jekyll-remote-theme"
gem "jekyll-optional-front-matter"
gem "jekyll-relative-links"
gem "jekyll-include-cache"
105 changes: 105 additions & 0 deletions docs/Gemfile.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1,105 @@
GEM
remote: https://rubygems.org/
specs:
addressable (2.9.0)
public_suffix (>= 2.0.2, < 8.0)
base64 (0.3.0)
bigdecimal (4.1.2)
colorator (1.1.0)
concurrent-ruby (1.3.6)
csv (3.3.5)
em-websocket (0.5.3)
eventmachine (>= 0.12.9)
http_parser.rb (~> 0)
eventmachine (1.2.7)
ffi (1.17.4-arm64-darwin)
ffi (1.17.4-x86_64-linux-gnu)
forwardable-extended (2.6.0)
google-protobuf (4.34.1-arm64-darwin)
bigdecimal
rake (~> 13.3)
google-protobuf (4.34.1-x86_64-linux-gnu)
bigdecimal
rake (~> 13.3)
http_parser.rb (0.8.1)
i18n (1.14.8)
concurrent-ruby (~> 1.0)
jekyll (4.4.1)
addressable (~> 2.4)
base64 (~> 0.2)
colorator (~> 1.0)
csv (~> 3.0)
em-websocket (~> 0.5)
i18n (~> 1.0)
jekyll-sass-converter (>= 2.0, < 4.0)
jekyll-watch (~> 2.0)
json (~> 2.6)
kramdown (~> 2.3, >= 2.3.1)
kramdown-parser-gfm (~> 1.0)
liquid (~> 4.0)
mercenary (~> 0.3, >= 0.3.6)
pathutil (~> 0.9)
rouge (>= 3.0, < 5.0)
safe_yaml (~> 1.0)
terminal-table (>= 1.8, < 4.0)
webrick (~> 1.7)
jekyll-include-cache (0.2.1)
jekyll (>= 3.7, < 5.0)
jekyll-optional-front-matter (0.3.2)
jekyll (>= 3.0, < 5.0)
jekyll-relative-links (0.7.0)
jekyll (>= 3.3, < 5.0)
jekyll-remote-theme (0.4.3)
addressable (~> 2.0)
jekyll (>= 3.5, < 5.0)
jekyll-sass-converter (>= 1.0, <= 3.0.0, != 2.0.0)
rubyzip (>= 1.3.0, < 3.0)
jekyll-sass-converter (3.0.0)
sass-embedded (~> 1.54)
jekyll-watch (2.2.1)
listen (~> 3.0)
json (2.19.4)
kramdown (2.5.2)
rexml (>= 3.4.4)
kramdown-parser-gfm (1.1.0)
kramdown (~> 2.0)
liquid (4.0.4)
listen (3.10.0)
logger
rb-fsevent (~> 0.10, >= 0.10.3)
rb-inotify (~> 0.9, >= 0.9.10)
logger (1.7.0)
mercenary (0.4.0)
pathutil (0.16.2)
forwardable-extended (~> 2.6)
public_suffix (7.0.5)
rake (13.4.2)
rb-fsevent (0.11.2)
rb-inotify (0.11.1)
ffi (~> 1.0)
rexml (3.4.4)
rouge (4.7.0)
rubyzip (2.4.1)
safe_yaml (1.0.5)
sass-embedded (1.99.0-arm64-darwin)
google-protobuf (~> 4.31)
sass-embedded (1.99.0-x86_64-linux-gnu)
google-protobuf (~> 4.31)
terminal-table (3.0.2)
unicode-display_width (>= 1.1.1, < 3)
unicode-display_width (2.6.0)
webrick (1.9.2)

PLATFORMS
arm64-darwin-23
x86_64-linux

DEPENDENCIES
jekyll (~> 4.3)
jekyll-include-cache
jekyll-optional-front-matter
jekyll-relative-links
jekyll-remote-theme

BUNDLED WITH
2.4.22
1 change: 1 addition & 0 deletions docs/GettingStartedWithSpec-DrivenDev.md
58 changes: 58 additions & 0 deletions docs/_config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
title: Spec-Driven Development Workshop
description: A workshop on spec-driven development and lightweight formal methods.
url: "https://adzerk.github.io"
baseurl: "/spec-driven-workshop"
remote_theme: mmistakes/minimal-mistakes@4.26.2
minimal_mistakes_skin: default

atom_feed:
hide: true

plugins:
- jekyll-optional-front-matter
- jekyll-relative-links
- jekyll-include-cache
- jekyll-remote-theme

optional_front_matter:
remove_originals: true

relative_links:
enabled: true
collections: false

kramdown:
input: GFM
auto_ids: true

defaults:
- scope:
path: "GettingStartedWithSpec-DrivenDev.md"
values:
layout: single
title: "Getting Started with Spec-Driven Development"
hide_page_title: true
toc: true
toc_sticky: true
toc_label: "On this page"
permalink: /guide.html
- scope:
path: "reference.md"
values:
layout: single
title: "Reference"
toc: true
toc_sticky: true
toc_label: "On this page"
permalink: /reference.html
- scope:
path: "index.md"
values:
layout: single
title: "Home"

exclude:
- Gemfile
- Gemfile.lock
- vendor/
- _site/
7 changes: 7 additions & 0 deletions docs/_data/navigation.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
main:
- title: "Getting Started"
url: /guide.html
- title: "Reference"
url: /reference.html
- title: "GitHub"
url: https://github.com/adzerk/spec-driven-workshop
3 changes: 3 additions & 0 deletions docs/_includes/head/custom.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
{% if page.hide_page_title %}
<style>.page__title { display: none; }</style>
{% endif %}
1 change: 1 addition & 0 deletions docs/assets
12 changes: 12 additions & 0 deletions docs/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
---
layout: single
title: "Home"
permalink: /
---

This is a workshop repo designed to help engineers learn about spec-driven development (and lightweight formal methods) through a series of exercises.

- **[Getting Started with Spec-Driven Development](guide.html)** — the full workshop guide, with exercises.
- **[Reference](reference.html)** — quick summary of the main points, desired outcome, and the tooling support needed for success.

The source lives at [adzerk/spec-driven-workshop](https://github.com/adzerk/spec-driven-workshop). See the `main-more` branch for additional material.
1 change: 1 addition & 0 deletions docs/reference.md
2 changes: 1 addition & 1 deletion reference.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,4 +32,4 @@ We need to have high confidence and assurance in the artifacts produced by our c
* Extended checking with code verifiers and similar tools
* Subagents for code-review, testing, and code optimization passes (we’ll cover these in the workshop)

Regardless of the language and runtime of your project, you should have support for each of these critical areas. You also need a [strong sandbox](?tab=t.0#heading=h.1fgtjot5p1vd).
Regardless of the language and runtime of your project, you should have support for each of these critical areas. You also need a [strong sandbox](GettingStartedWithSpec-DrivenDev.md#safety-first-sandboxing).
Loading