Skip to content

Commit 636dccd

Browse files
committed
create empty branch
0 parents  commit 636dccd

328 files changed

Lines changed: 14884 additions & 0 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.git-blame-ignore-revs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# initial pre-commit formatting commit (black, isort, prettier)
2+
4c813f1cd663b7837cb2f5c41c33be5042a85c16

.github/workflows/hugo.yml

Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
# Sample workflow for building and deploying a Hugo site to GitHub Pages
2+
name: Deploy Hugo site to Pages
3+
4+
on:
5+
# Runs on pushes targeting the default branch
6+
push:
7+
branches: ["main"]
8+
9+
# Allows you to run this workflow manually from the Actions tab
10+
workflow_dispatch:
11+
12+
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
13+
permissions:
14+
contents: read
15+
pages: write
16+
id-token: write
17+
18+
# Allow one concurrent deployment
19+
concurrency:
20+
group: "pages"
21+
cancel-in-progress: true
22+
23+
# Default to bash
24+
defaults:
25+
run:
26+
shell: bash
27+
28+
jobs:
29+
# Build job
30+
build:
31+
runs-on: ubuntu-latest
32+
steps:
33+
- name: checkout repository
34+
uses: actions/checkout@v3
35+
36+
- name: Get Hugo version
37+
run: echo "HUGO_VERSION=$(cat .hugo_version)" >> $GITHUB_ENV
38+
39+
- name: setup hugo
40+
uses: peaceiris/actions-hugo@v2
41+
with:
42+
hugo-version: ${{ env.HUGO_VERSION }}
43+
extended: true
44+
45+
- name: Get node version from package.json
46+
run: echo "NODE_VERSION=$(cat package.json | jq -r '.volta.node')" >> $GITHUB_ENV
47+
48+
- name: setup node.js
49+
uses: actions/setup-node@v3
50+
with:
51+
node-version: ${{ env.NODE_VERSION }}
52+
53+
- name: fetch js dependencies from cache
54+
uses: actions/cache@v3
55+
with:
56+
path: ~/.npm
57+
key: npm-${{ hashFiles('package-lock.json') }}
58+
restore-keys: |
59+
npm-${{ hashFiles('package-lock.json') }}
60+
npm-
61+
62+
- name: install js dependencies
63+
run: npm ci
64+
65+
- name: Setup Pages
66+
id: pages
67+
uses: actions/configure-pages@v1
68+
69+
- name: Build with Hugo
70+
env:
71+
# For maximum backward compatibility with Hugo modules
72+
HUGO_ENVIRONMENT: production
73+
HUGO_ENV: production
74+
run: |
75+
hugo \
76+
--minify \
77+
--baseURL ${{ steps.pages.outputs.base_url }}
78+
- name: Upload artifact
79+
uses: actions/upload-pages-artifact@v1
80+
with:
81+
path: ./public
82+
83+
# Deployment job
84+
deploy:
85+
environment:
86+
name: github-pages
87+
url: ${{ steps.deployment.outputs.page_url }}
88+
runs-on: ubuntu-latest
89+
needs: build
90+
steps:
91+
- name: Deploy to GitHub Pages
92+
id: deployment
93+
uses: actions/deploy-pages@v1
Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
name: lighthouse ci
2+
3+
on:
4+
pull_request:
5+
branches:
6+
- main
7+
- develop
8+
9+
env:
10+
LHCI_GITHUB_APP_TOKEN: ${{ secrets.LHCI_GITHUB_APP_TOKEN }}
11+
12+
jobs:
13+
build-ci:
14+
name: build site and run lighthouse ci
15+
runs-on: ubuntu-latest
16+
17+
steps:
18+
- name: checkout repository
19+
uses: actions/checkout@v3
20+
21+
- name: Get Hugo version
22+
run: echo "HUGO_VERSION=$(cat .hugo_version)" >> $GITHUB_ENV
23+
24+
- name: setup hugo
25+
uses: peaceiris/actions-hugo@v2
26+
with:
27+
hugo-version: ${{ env.HUGO_VERSION }}
28+
extended: true
29+
30+
- name: Get node version from package.json
31+
run: echo "NODE_VERSION=$(cat package.json | jq -r '.volta.node')" >> $GITHUB_ENV
32+
33+
- name: setup node.js
34+
uses: actions/setup-node@v3
35+
with:
36+
node-version: ${{ env.NODE_VERSION }}
37+
38+
- name: fetch js dependencies from cache
39+
uses: actions/cache@v3
40+
with:
41+
path: ~/.npm
42+
key: npm-${{ hashFiles('package-lock.json') }}
43+
restore-keys: |
44+
npm-${{ hashFiles('package-lock.json') }}
45+
npm-
46+
47+
- name: install js dependencies
48+
run: npm ci
49+
50+
- name: build site
51+
env:
52+
# For maximum backward compatibility with Hugo modules
53+
HUGO_ENVIRONMENT: production
54+
HUGO_ENV: production
55+
run: hugo --minify
56+
57+
# this step makes the site's built html and css available for download
58+
# from github; see the run in github actions to access it as a zipfile.
59+
# we don't export image derivatives because it makes the build a lot
60+
# slower.
61+
- name: export built files for download
62+
uses: actions/upload-artifact@v3
63+
with:
64+
name: public
65+
path: |
66+
public/
67+
!public/issues/**/images/
68+
69+
# lighthouse is configured using the lighthouserc.js file in the project
70+
# root, see that file for more details. output from runs is uploaded to
71+
# free google cloud storage and accessible via the github action run
72+
- name: audit site using lighthouse ci
73+
uses: treosh/lighthouse-ci-action@v9
74+
with:
75+
configPath: "./lighthouserc.js"
76+
uploadArtifacts: true
77+
temporaryPublicStorage: true

.github/workflows/unit-tests.yml

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
name: unit-tests
2+
on:
3+
push:
4+
branches:
5+
- main
6+
- develop
7+
pull_request:
8+
9+
jobs:
10+
jest-unit-tests:
11+
name: unit tests
12+
runs-on: ubuntu-latest
13+
steps:
14+
- name: Checkout repository
15+
uses: actions/checkout@v3
16+
17+
- name: Setup Node.JS
18+
uses: actions/setup-node@v3
19+
with:
20+
node-version: "16"
21+
22+
- name: Cache node modules
23+
uses: actions/cache@v2
24+
with:
25+
path: ~/.npm
26+
key: npm-${{ hashFiles('package-lock.json') }}
27+
restore-keys: |
28+
npm-${{ hashFiles('package-lock.json') }}
29+
npm-
30+
31+
- name: Install JS dependencies
32+
run: npm install
33+
34+
- name: Run jest tests
35+
run: npm run test:coverage
36+
37+
- name: Upload test coverage to Codecov
38+
uses: codecov/codecov-action@v3

.gitignore

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
### Hugo ###
2+
# Generated files by hugo
3+
/public/
4+
/resources/_gen/
5+
.hugo_build.lock
6+
7+
## OS Files
8+
# Windows
9+
Thumbs.db
10+
ehthumbs.db
11+
Desktop.ini
12+
$RECYCLE.BIN/
13+
14+
# OSX
15+
.DS_Store
16+
17+
# JS dependencies
18+
node_modules/
19+
coverage
20+
21+
# Lighthouse CI run output
22+
.lighthouseci

.gitmodules

Whitespace-only changes.

.hugo_version

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
0.101.0

.percy.yml

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
version: 2
2+
snapshot:
3+
widths:
4+
- 320
5+
- 1440
6+
minHeight: 960
7+
percyCSS: ""
8+
discovery:
9+
allowedHostnames: []
10+
disallowedHostnames: []
11+
networkIdleTimeout: 100
12+
upload:
13+
files: "**/*.{png,jpg,jpeg}"
14+
ignore: ""
15+
stripExtensions: false

.pre-commit-config.yaml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
repos:
2+
- repo: https://github.com/psf/black
3+
rev: 22.3.0 # Replace by any tag/version: https://github.com/psf/black/tags
4+
hooks:
5+
- id: black
6+
# Assumes that your shell's `python` command is linked to python3.6+
7+
language_version: python
8+
- repo: https://github.com/pycqa/isort
9+
rev: 5.12.0
10+
hooks:
11+
- id: isort
12+
args: ["--profile", "black", "--filter-files"]
13+
- repo: https://github.com/pre-commit/mirrors-prettier
14+
rev: v2.4.1
15+
hooks:
16+
- id: prettier
17+
exclude: (\.html$|^content/|^layouts/.*.json)
18+
# exclude hugo templates, which prettier does not support by default
19+
# exclude content markdown files, to avoid introducing formatting conflicts with content editor changes

CHANGELOG.md

Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
# Change log
2+
3+
## 1.0.1
4+
5+
- Minor content edits and revisions.
6+
- bugfix to figure shortcode handling for attribution links
7+
8+
## 1.0
9+
10+
Soft launch, June 2023.
11+
12+
### timetree display & interaction
13+
14+
- As a user, I want timetree data points represented by leaf shapes so that the interface is more organic and I can more easily understand the visual as a tree.
15+
- As a user, I want to see labels for leaves in the tree so I'll have a sense of the content and reasons to select specific leaves.
16+
- As a user, I want to see tree branches as part of the timetree so I can more easily understand and read the visualization as a tree and see how the leaves connect.
17+
- As a user I want both leaf and label highlighted when I hover over either, so I can see the connected content as I browse the tree.
18+
- As a user, I want to see a legend for the branches in the intro panel so that I can understand the content is organized by themes and recognize the meaning of the leaf colors.
19+
- As a user, I want to see all the leaves in the timetree so I can be confident I'm seeing all the content.
20+
- As a user I want to see and interact with a the plaque on the trunk of the tree so I can read who the project is dedicated to.
21+
22+
### leaf details
23+
24+
- As a user, when I select a leaf in the timetree, I want to see details for that event so that I can read about it in detail.
25+
- As a user, when I select a leaf to read more details, I want the leaf and label highlighted in the tree view so that I can see and remember what I selected.
26+
- As a user, I want an indicator in the leaf details panel of what branch the leaf belongs to, so that the themes and organization will be more clear as I navigate the timetree.
27+
- As a user, I want the url to change when I select a leaf so that I can bookmark or share the timetree with a specific leaf selected.
28+
29+
### tags
30+
31+
- As a user, when I select a tag in the leaf detail view, I want other leaves with that tag to be highlighted so that I can explore related content.
32+
- As a user, when I select a tag I want to clearly see which tag is active so I can tell that I'm looking at a filtered view of the tree.
33+
- As a user, when I select a tag I want it to stay active until I close it, so that I can more easily browse the leaves with that tag.
34+
- As a user, I want the url to change when I select a tag so that I can bookmark or share the timetree with a specific tag selected.
35+
- As a user, I want to browse a list of tags so that I can see how the data in the timetree is categorized.
36+
- As a user, when I select a tag from the tag index page, I should be taken to the timetree with that tag active so that I can browse all leaves with that tag.
37+
38+
### mobile
39+
40+
- As a mobile user, I want a way to get back to the project introduction after I've closed it, so I can refer back to it after exploring the timetree.
41+
- As a mobile user, I should see some leaf labels when the tree is not zoomed, so I can more easily understand that I can interact with the tree.
42+
- As a user on a smaller screen, I want to zoom in on the timetree so that I can view and interact with the content more easily.
43+
44+
### accessibility
45+
46+
- As a user, I want the option of zooming in on the timetree on desktop and with buttons, so that the content and functionality is accessible in a variety of modes.
47+
- As a keyboard or screen user, I want to navigate the timetree without a mouse or touch device so that I can explore the content in multiple paths and access all the information in a manner that is equivalent to the experience of a sighted user.
48+
49+
### error handling
50+
51+
- As a user, I should see a message if the leaf details fail to load so that I understand something went wrong.
52+
- As a user I want to know when a page is not found so that I can understand what went wrong and navigate to other parts of the site.
53+
- As a user with javascript turned off, I want to see a message explaining why I can't see the timetree so I can turn it on if I want to view it.
54+
55+
### content pages
56+
57+
- As a user, I want to access site navigation in the footer so I can find and access content related to the project.
58+
- As a user, I want to read about the project so that I can understand who created it and find related resources.
59+
- As a user who finds a leaf detail page from search, I should be prompted to view that leaf in the context of the timetree so that I can experience the project as intended.
60+
- As a user, I want to see an indicator when a link takes me to another site or a PDF, so I know what to expect if I click on it.
61+
62+
### content editing
63+
64+
- Contributor documentation
65+
- As a content editor, I want to optionally include images in leaf content so that I can provide illustrations and visual engagement for the timetree information.
66+
- As a content editor, I want the option of a display title for use in the timetree so that I can use different titles in the leaf detail view and in the tree.
67+
- As a team member, I want a way to turn on a visual debug mode so that I can understand how the layout is being generated.
68+
- As a content editor, I want the option of marking a leaf as a draft so that I can unpublish content that isn't ready for inclusion in the timetree.
69+
- As a content admin, I want leaves automatically positioned in the tree based on their branch and century, so that the display follows the agreed upon logic.
70+
71+
### design
72+
73+
- sitemap and flow
74+
- home page / timetree layout and sizing; grid and flow for mobile/desktop
75+
- color scheme and color palette for the leaves
76+
- logic for interaction with leaves, tags
77+
- logic for zoom behaviors
78+
- typography and font for body content
79+
- background image on content pages for visual identity
80+
81+
## Earlier versions / preliminary work
82+
83+
- Set up initial Hugo site with proposed site and data structure
84+
- As a site editor, I want to run a script to import project data into the new Hugo page/data structure, so that existing content can be loaded in bulk.
85+
- As a site editor, I want to import project data from multiple files without overwriting hugo content, so that I can import or update multiple groups of data at the same time.
86+
- As a content editor, I want to see tags, sort date, and branch on leaf summary cards, so that I can review the imported data more easily.
87+
- As a content editor, I want the leaves and branches in the tree to be displayed in configured order so that the content is displayed more logically and consistently.
88+
89+
utils / infrastructure:
90+
91+
- pre-commit hooks for automated & consistent formatting

0 commit comments

Comments
 (0)