Skip to content

Commit c9a331c

Browse files
author
zoedsoupe
committed
inital commit
0 parents  commit c9a331c

21 files changed

Lines changed: 1649 additions & 0 deletions

.envrc

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
export GPG_TTY="$(tty)"
2+
3+
# Node.js and Bun configuration
4+
export BUN_INSTALL=$PWD/.bun
5+
export PATH=$BUN_INSTALL/bin:$PATH
6+
7+
export LANG=en_US.UTF-8
8+
9+
use flake
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
".": "0.1.0"
3+
}

.github/ISSUE_TEMPLATE/1_web.yml

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
---
2+
name: Tidewave JavaScript issue
3+
description: File a bug report related to Tidewave JavaScript CLI or MCP server
4+
5+
body:
6+
- type: markdown
7+
attributes:
8+
value: >
9+
Thanks for taking the time to fill out this bug report.
10+
11+
- type: input
12+
id: os
13+
attributes:
14+
label: What is your operating system?
15+
validations:
16+
required: true
17+
18+
- type: input
19+
id: node-version
20+
attributes:
21+
label: What is your Node.js version?
22+
validations:
23+
required: true
24+
25+
- type: input
26+
id: runtime
27+
attributes:
28+
label: What JavaScript runtime are you using?
29+
description: e.g., Node.js, Bun, Deno
30+
validations:
31+
required: true
32+
33+
- type: input
34+
id: tidewave-version
35+
attributes:
36+
label: What is your Tidewave version?
37+
validations:
38+
required: true
39+
40+
- type: input
41+
id: command
42+
attributes:
43+
label: Which Tidewave command are you using?
44+
description: e.g., "npx tidewave docs", "npx tidewave mcp --stdio", "bunx tidewave source"
45+
validations:
46+
required: true
47+
48+
- type: textarea
49+
id: current-behavior
50+
attributes:
51+
label: Current behavior
52+
description: >
53+
If reporting a bug, please include errors, stacktraces, and reproducing steps.
54+
For MCP issues, include your editor/client configuration.
55+
validations:
56+
required: true
57+
58+
- type: textarea
59+
id: expected-behavior
60+
attributes:
61+
label: Expected behavior
62+
description: A short description on how you expected it to behave.
63+
validations:
64+
required: true

.github/ISSUE_TEMPLATE/2_mcp.yml

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
---
2+
name: Tidewave MCP/editor integration issue
3+
description: File a bug report related to Tidewave and your editor/MCP client
4+
5+
body:
6+
- type: markdown
7+
attributes:
8+
value: >
9+
Thanks for taking the time to fill out this bug report.
10+
Before moving forward, check out
11+
[our MCP Troubleshooting guide](https://hexdocs.pm/tidewave/mcp_troubleshooting.html).
12+
13+
- type: input
14+
id: mcp-client
15+
attributes:
16+
label: Which editor/MCP client are you using?
17+
18+
- type: input
19+
id: mcp-proxy
20+
attributes:
21+
label: Are you using a MCP proxy?
22+
description: Which one and which version? Have you tried updating it? Have you tried another proxy?
23+
24+
- type: input
25+
id: mcp-server
26+
attributes:
27+
label: Is your Tidewave MCP server working correctly?
28+
description: >
29+
For HTTP transport: Paste the output of `curl -v http://localhost:PORT/tidewave/mcp` (default PORT is 4000)
30+
For STDIO transport: Describe any error messages when running `npx tidewave mcp --stdio`
31+
32+
- type: input
33+
id: os
34+
attributes:
35+
label: What is your operating system?
36+
validations:
37+
required: true
38+
39+
- type: input
40+
id: tidewave-version
41+
attributes:
42+
label: What is your Tidewave version?
43+
validations:
44+
required: true
45+
46+
- type: textarea
47+
id: current-behavior
48+
attributes:
49+
label: Current behavior
50+
description: >
51+
If reporting a bug, please errors, stacktraces, and reproducing steps.
52+
53+
If using an editor or MCP client, include your configuration.
54+
validations:
55+
required: true
56+
57+
- type: textarea
58+
id: expected-behavior
59+
attributes:
60+
label: Expected behavior
61+
description: A short description on how you expected it to behave.
62+
validations:
63+
required: true

.github/release-please-config.json

Lines changed: 85 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,85 @@
1+
{
2+
"bootstrap-sha": "fa1453f",
3+
"pull-request-header": "want to release this?",
4+
"pull-request-title-pattern": "chore: release ${version}",
5+
"changelog-sections": [
6+
{
7+
"type": "feat",
8+
"section": "Features"
9+
},
10+
{
11+
"type": "feature",
12+
"section": "Features"
13+
},
14+
{
15+
"type": "fix",
16+
"section": "Bug Fixes"
17+
},
18+
{
19+
"type": "perf",
20+
"section": "Performance Improvements"
21+
},
22+
{
23+
"type": "revert",
24+
"section": "Reverts"
25+
},
26+
{
27+
"type": "docs",
28+
"section": "Documentation",
29+
"hidden": false
30+
},
31+
{
32+
"type": "style",
33+
"section": "Styles",
34+
"hidden": false
35+
},
36+
{
37+
"type": "chore",
38+
"section": "Miscellaneous Chores",
39+
"hidden": false
40+
},
41+
{
42+
"type": "refactor",
43+
"section": "Code Refactoring",
44+
"hidden": false
45+
},
46+
{
47+
"type": "test",
48+
"section": "Tests",
49+
"hidden": false
50+
},
51+
{
52+
"type": "build",
53+
"section": "Build System",
54+
"hidden": false
55+
},
56+
{
57+
"type": "ci",
58+
"section": "Continuous Integration",
59+
"hidden": false
60+
}
61+
],
62+
"extra-files": [
63+
{
64+
"type": "generic",
65+
"path": "flake.nix",
66+
"glob": false
67+
},
68+
{
69+
"type": "generic",
70+
"path": "README.md",
71+
"glob": false
72+
},
73+
{
74+
"type": "generic",
75+
"path": "pages/installation.md",
76+
"glob": false
77+
}
78+
],
79+
"packages": {
80+
".": {
81+
"release-type": "node"
82+
}
83+
},
84+
"$schema": "https://raw.githubusercontent.com/googleapis/release-please/main/schemas/config.json"
85+
}

.github/workflows/ci.yml

Lines changed: 99 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,99 @@
1+
name: ci
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
pull_request:
8+
branches:
9+
- main
10+
11+
jobs:
12+
lint:
13+
runs-on: ubuntu-latest
14+
15+
strategy:
16+
matrix:
17+
node-version: [18, 20, 22]
18+
19+
steps:
20+
- name: Checkout code
21+
uses: actions/checkout@v4
22+
23+
- name: Set up Node.js
24+
uses: actions/setup-node@v4
25+
with:
26+
node-version: ${{ matrix.node-version }}
27+
cache: 'npm'
28+
29+
- name: Install dependencies
30+
run: npm ci
31+
32+
- name: Check code formatting
33+
run: npm run format:check
34+
35+
- name: Run ESLint
36+
run: npm run lint
37+
38+
- name: Type check
39+
run: npm run type-check
40+
41+
build:
42+
runs-on: ubuntu-latest
43+
44+
strategy:
45+
matrix:
46+
node-version: [18, 20, 22]
47+
48+
steps:
49+
- name: Checkout code
50+
uses: actions/checkout@v4
51+
52+
- name: Set up Node.js
53+
uses: actions/setup-node@v4
54+
with:
55+
node-version: ${{ matrix.node-version }}
56+
cache: 'npm'
57+
58+
- name: Install dependencies
59+
run: npm ci
60+
61+
- name: Build project
62+
run: npm run build
63+
64+
- name: Upload build artifacts
65+
if: matrix.node-version == 20
66+
uses: actions/upload-artifact@v4
67+
with:
68+
name: dist
69+
path: dist/
70+
71+
test:
72+
runs-on: ubuntu-latest
73+
74+
strategy:
75+
matrix:
76+
node-version: [18, 20, 22]
77+
78+
steps:
79+
- name: Checkout code
80+
uses: actions/checkout@v4
81+
82+
- name: Set up Node.js
83+
uses: actions/setup-node@v4
84+
with:
85+
node-version: ${{ matrix.node-version }}
86+
cache: 'npm'
87+
88+
- name: Install dependencies
89+
run: npm ci
90+
91+
- name: Run tests
92+
run: npm test
93+
94+
- name: Upload coverage reports
95+
if: matrix.node-version == 20
96+
uses: codecov/codecov-action@v4
97+
with:
98+
token: ${{ secrets.CODECOV_TOKEN }}
99+
files: ./coverage/lcov.info

.github/workflows/publish.yml

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
name: Publish to npm
2+
3+
on:
4+
push:
5+
tags:
6+
- 'v*'
7+
workflow_dispatch:
8+
9+
jobs:
10+
publish:
11+
runs-on: ubuntu-latest
12+
13+
steps:
14+
- name: Checkout code
15+
uses: actions/checkout@v4
16+
17+
- name: Set up Node.js
18+
uses: actions/setup-node@v4
19+
with:
20+
node-version: 20
21+
registry-url: 'https://registry.npmjs.org'
22+
cache: 'npm'
23+
24+
- name: Install dependencies
25+
run: npm ci
26+
27+
- name: Run tests
28+
run: npm test
29+
30+
- name: Check code formatting
31+
run: npm run format:check
32+
33+
- name: Run ESLint
34+
run: npm run lint
35+
36+
- name: Type check
37+
run: npm run type-check
38+
39+
- name: Build project
40+
run: npm run build
41+
42+
- name: Publish to npm
43+
env:
44+
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
45+
run: npm publish --access public

0 commit comments

Comments
 (0)