Skip to content

Commit f883be3

Browse files
committed
Initial commit
0 parents  commit f883be3

240 files changed

Lines changed: 25207 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.

.editorconfig

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
[*]
2+
charset = utf-8
3+
end_of_line = lf
4+
indent_size = 2
5+
indent_style = space
6+
insert_final_newline = true
7+
trim_trailing_whitespace = true
8+
max_line_length = 120
9+
tab_width = 2

.github/workflows/ci.yml

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
pull_request:
8+
branches:
9+
- main
10+
jobs:
11+
lint:
12+
runs-on: ubuntu-latest
13+
steps:
14+
- name: Checkout code
15+
uses: actions/checkout@v3
16+
- name: Setup node
17+
uses: actions/setup-node@v6
18+
with:
19+
node-version: '24'
20+
registry-url: 'https://registry.npmjs.org'
21+
- name: Install dependencies
22+
run: npm ci
23+
- name: Run lint
24+
run: npm run lint:ci
25+
build:
26+
runs-on: ubuntu-latest
27+
steps:
28+
- name: Checkout code
29+
uses: actions/checkout@v3
30+
- name: Setup node
31+
uses: actions/setup-node@v6
32+
with:
33+
node-version: '24'
34+
registry-url: 'https://registry.npmjs.org'
35+
- name: Install dependencies
36+
run: npm ci
37+
- name: Build dist
38+
run: npm run dist
39+
test:
40+
runs-on: ubuntu-latest
41+
steps:
42+
- name: Checkout code
43+
uses: actions/checkout@v3
44+
- name: Setup node
45+
uses: actions/setup-node@v6
46+
with:
47+
node-version: '24'
48+
registry-url: 'https://registry.npmjs.org'
49+
- name: Install dependencies
50+
run: npm ci
51+
- name: Run tests
52+
run: npm test

.github/workflows/demo.yml

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
name: "Demo"
2+
3+
on:
4+
push:
5+
branches:
6+
- "main"
7+
8+
jobs:
9+
build:
10+
name: "Build"
11+
runs-on: "ubuntu-latest"
12+
steps:
13+
-
14+
id: "checkout"
15+
name: "Checkout"
16+
uses: "actions/checkout@v4"
17+
-
18+
id: "setup-node"
19+
name: "Setup node"
20+
uses: "actions/setup-node@v4"
21+
with:
22+
cache: "npm"
23+
node-version: 22
24+
-
25+
id: "install-dependencies"
26+
name: "Install dependencies"
27+
run: |
28+
npm ci
29+
-
30+
id: "build"
31+
name: "Build"
32+
env:
33+
BASE_PATH: "/${{ github.event.repository.name }}"
34+
run: |
35+
npm run build:demo
36+
-
37+
id: "upload-artifacts"
38+
name: "Upload artifacts"
39+
uses: "actions/upload-pages-artifact@v3"
40+
with:
41+
path: "demo/"
42+
43+
deploy:
44+
name: "Deploy"
45+
needs: "build"
46+
environment:
47+
name: "github-pages"
48+
url: "${{ steps.deploy.outputs.page_url }}"
49+
permissions:
50+
pages: "write"
51+
id-token: "write"
52+
runs-on: "ubuntu-latest"
53+
steps:
54+
-
55+
id: "deploy"
56+
name: "Deploy"
57+
uses: "actions/deploy-pages@v4"

.github/workflows/publish.yml

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
name: Publish
2+
3+
on:
4+
release:
5+
types: [created]
6+
permissions:
7+
id-token: write
8+
contents: read
9+
jobs:
10+
publish:
11+
runs-on: ubuntu-latest
12+
steps:
13+
- name: Checkout code
14+
uses: actions/checkout@v3
15+
- name: Setup node
16+
uses: actions/setup-node@v6
17+
with:
18+
node-version: '24'
19+
registry-url: 'https://registry.npmjs.org'
20+
- name: Install dependencies
21+
run: npm ci
22+
- name: Build dist
23+
run: npm run dist
24+
- name: Publish
25+
run: npm publish

.gitignore

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
# Logs
2+
logs
3+
*.log
4+
npm-debug.log*
5+
yarn-debug.log*
6+
yarn-error.log*
7+
pnpm-debug.log*
8+
lerna-debug.log*
9+
10+
node_modules
11+
dist
12+
dist-ssr
13+
demo
14+
*.local
15+
coverage/
16+
.vale/
17+
18+
# Editor directories and files
19+
.vscode/*
20+
!.vscode/extensions.json
21+
.idea
22+
.DS_Store
23+
*.suo
24+
*.ntvs*
25+
*.njsproj
26+
*.sln
27+
*.sw?

.prettierignore

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
# Package Managers
2+
package-lock.json
3+
pnpm-lock.yaml
4+
yarn.lock
5+
bun.lock
6+
bun.lockb
7+
8+
/.github

.prettierrc.mjs

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
export default {
2+
arrowParens: "always",
3+
bracketSpacing: true,
4+
endOfLine: "lf",
5+
htmlWhitespaceSensitivity: "css",
6+
insertPragma: false,
7+
overrides: [{ files: "*.svelte", options: { parser: "svelte" } }],
8+
plugins: ["prettier-plugin-svelte", "prettier-plugin-css-order"],
9+
printWidth: 100,
10+
proseWrap: "preserve",
11+
quoteProps: "as-needed",
12+
requirePragma: false,
13+
semi: false,
14+
singleQuote: false,
15+
tabWidth: 2,
16+
trailingComma: "all",
17+
useTabs: false,
18+
}

.vale.ini

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
StylesPath = .vale
2+
3+
MinAlertLevel = suggestion
4+
5+
Packages = Microsoft, proselint
6+
7+
[*]
8+
BasedOnStyles = Vale, Microsoft, proselint
9+
10+
# Disable due to too many false positives with coding terms
11+
[*]
12+
Vale.Spelling = NO
13+
14+
Microsoft.Adverbs = NO
15+
Microsoft.ComplexWords = NO
16+
Microsoft.Foreign = NO
17+
Microsoft.Quotes = NO
18+
Microsoft.Spacing = NO
19+
Microsoft.Units = NO
20+
Microsoft.Vocab = NO
21+
Microsoft.Acronyms = NO
22+
Microsoft.HeadingAcronyms = NO

LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2026 Chris Kant
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

0 commit comments

Comments
 (0)