Skip to content

Commit c0dee91

Browse files
committed
Initial commit
0 parents  commit c0dee91

54 files changed

Lines changed: 13519 additions & 0 deletions

Some content is hidden

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

.github/workflows/ci.yml

Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
name: CI
2+
3+
on:
4+
pull_request:
5+
branches: ["main"]
6+
release:
7+
types: ["published"]
8+
workflow_dispatch: {}
9+
10+
jobs:
11+
test:
12+
name: Run tests
13+
runs-on: ${{ matrix.os }}
14+
strategy:
15+
matrix:
16+
os: [ubuntu-latest, macos-latest]
17+
steps:
18+
- name: Checkout
19+
uses: actions/checkout@v4
20+
21+
- name: Setup Bun
22+
uses: oven-sh/setup-bun@v3
23+
with:
24+
bun-version: latest
25+
26+
- name: Install dependencies
27+
run: bun install
28+
29+
- name: Run tests (with coverage)
30+
run: bun run test
31+
32+
- name: Upload coverage (if generated)
33+
if: always()
34+
uses: actions/upload-artifact@v4
35+
with:
36+
name: coverage-report
37+
path: coverage
38+
39+
bench:
40+
name: Run benchmarks
41+
if: github.event_name == 'release' || github.event_name == 'workflow_dispatch'
42+
runs-on: ubuntu-latest
43+
steps:
44+
- name: Checkout
45+
uses: actions/checkout@v4
46+
47+
- name: Setup Bun
48+
uses: oven-sh/setup-bun@v3
49+
with:
50+
bun-version: latest
51+
52+
- name: Install dependencies
53+
run: bun install
54+
55+
- name: Run benchmarks
56+
run: |
57+
bun run bench | tee bench-output.txt
58+
59+
- name: Upload bench output
60+
uses: actions/upload-artifact@v4
61+
with:
62+
name: bench-output
63+
path: bench-output.txt
64+
65+
memory-check:
66+
name: Run memory check
67+
if: github.event_name == 'release' || github.event_name == 'workflow_dispatch'
68+
runs-on: ubuntu-latest
69+
steps:
70+
- name: Checkout
71+
uses: actions/checkout@v4
72+
73+
- name: Setup Bun
74+
uses: oven-sh/setup-bun@v3
75+
with:
76+
bun-version: latest
77+
78+
- name: Install dependencies
79+
run: bun install
80+
81+
- name: Run memory check
82+
run: |
83+
bun run memory-check | tee memory-check-output.txt
84+
85+
- name: Upload memory check output
86+
uses: actions/upload-artifact@v4
87+
with:
88+
name: memory-check-output
89+
path: memory-check-output.txt

.gitignore

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
# Dependencies
2+
node_modules/
3+
bun.lockb
4+
5+
# Build output
6+
dist/
7+
*.tsbuildinfo
8+
9+
# Coverage
10+
coverage/
11+
.coverage/
12+
13+
# Environment
14+
.env
15+
.env.local
16+
17+
# IDE
18+
.vscode/
19+
.idea/
20+
*.swp
21+
*.swo
22+
*~
23+
24+
# OS
25+
.DS_Store
26+
Thumbs.db
27+
28+
# Logs
29+
*.log
30+
npm-debug.log*
31+
32+
# Local and CI artifacts
33+
bench-output.txt
34+
memory-check-output.txt
35+
36+
# Test / coverage caches
37+
.nyc_output
38+
39+
# Tool caches
40+
.eslintcache
41+
.cache/
42+
.parcel-cache/
43+

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 21no.de
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)