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
40 changes: 40 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
---
name: Bug Report
about: Report something on the site or inspector that isn't working as expected
title: 'bug: '
labels: type:bug
---

## Describe the Bug

<!-- A clear description of what the bug is. -->

## Steps to Reproduce

1.
2.
3.

## Expected Behavior

<!-- What you expected to happen. -->

## Actual Behavior

<!-- What actually happened. -->

## Environment

- Page / URL:
- Browser + version:
- OS:

## Trace / Input (inspector bugs only)

<!-- If applicable, paste a minimal trace or input that triggers the bug.
Do NOT include real station IDs, transaction IDs, or sensitive data —
use anonymized/synthetic data. -->

```
(paste here)
```
24 changes: 24 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
---
name: Feature Request
about: Suggest a new page, doc, or improvement to the site
title: 'feat: '
labels: type:feature
---

## Feature Description

<!-- A clear description of the feature you'd like to see. -->

## Problem / Motivation

<!-- What problem does this solve? Why is it needed? -->

## Proposed Solution

<!-- How do you envision this working? -->

## Additional Context

<!-- Anything else relevant (screenshots, links, examples, etc.).
Note: feature requests for the library belong in the `toolkit` repo, and
for the native app in the `studio` repo. -->
31 changes: 31 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
## Summary

<!-- Brief description of what this PR does and why -->

## Related Issue

<!-- Link to the issue this PR addresses. Use "Closes #N" to auto-close on merge. -->

Closes #

## Changes

<!-- List the key changes in this PR -->

-

## Checklist

- [ ] Tests added or updated for the behavior this PR introduces
- [ ] Typecheck passes (`pnpm typecheck`)
- [ ] Lint passes (`pnpm lint`)
- [ ] Build passes (`pnpm build`)
- [ ] E2E passes (`pnpm test:e2e`)
- [ ] `CURRENT_STATE.md` updated (if applicable)
- [ ] `AGENTS.md` updated (if structure or build commands changed)
- [ ] No secrets or sensitive data in committed artifacts
- [ ] Untrusted-input handling reviewed (if touching the inspector)

## Notes for Reviewer

<!-- Anything the reviewer should pay attention to -->
52 changes: 52 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
name: CI

on:
push:
branches: [main]
pull_request:
branches: [main]

permissions:
contents: read

concurrency:
group: ci-${{ github.ref }}
cancel-in-progress: true

jobs:
ci:
name: Lint, Typecheck, Build, E2E
runs-on: ubuntu-latest
timeout-minutes: 20

steps:
- name: Checkout
uses: actions/checkout@v5

- name: Setup pnpm
uses: pnpm/action-setup@v4

- name: Setup Node.js
uses: actions/setup-node@v5
with:
node-version: 24
cache: pnpm

- name: Install dependencies
run: pnpm install --frozen-lockfile

# Build first so .next/types and next-env.d.ts exist before typecheck/lint.
- name: Build
run: pnpm build

- name: Typecheck
run: pnpm typecheck

- name: Lint
run: pnpm lint

- name: Install Playwright browsers
run: pnpm exec playwright install --with-deps chromium

- name: E2E tests
run: pnpm test:e2e
163 changes: 29 additions & 134 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,143 +1,38 @@
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
lerna-debug.log*

# Diagnostic reports (https://nodejs.org/api/report.html)
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json

# Runtime data
pids
*.pid
*.seed
*.pid.lock

# Directory for instrumented libs generated by jscoverage/JSCover
lib-cov

# Coverage directory used by tools like istanbul
coverage
*.lcov

# nyc test coverage
.nyc_output

# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
.grunt

# Bower dependency directory (https://bower.io/)
bower_components

# node-waf configuration
.lock-wscript

# Compiled binary addons (https://nodejs.org/api/addons.html)
build/Release

# Dependency directories
node_modules/
jspm_packages/

# Snowpack dependency directory (https://snowpack.dev/)
web_modules/

# TypeScript cache
*.tsbuildinfo

# Optional npm cache directory
.npm

# Optional eslint cache
.eslintcache
# dependencies
/node_modules
/.pnp
.pnp.*

# Optional stylelint cache
.stylelintcache
# next.js
/.next/
/out/

# Optional REPL history
.node_repl_history
# production build
/build

# Output of 'npm pack'
*.tgz
# misc
.DS_Store
*.pem

# Yarn Integrity file
.yarn-integrity
# debug logs
npm-debug.log*
yarn-debug.log*
yarn-error.log*
.pnpm-debug.log*

# dotenv environment variable files
.env
.env.*
# env files
.env*
!.env.example

# parcel-bundler cache (https://parceljs.org/)
.cache
.parcel-cache

# Next.js build output
.next
out

# Nuxt.js build / generate output
.nuxt
dist
.output

# Gatsby files
.cache/
# Comment in the public line in if your project uses Gatsby and not Next.js
# https://nextjs.org/blog/next-9-1#public-directory-support
# public

# vuepress build output
.vuepress/dist

# vuepress v2.x temp directory
.temp

# Sveltekit cache directory
.svelte-kit/

# vitepress build output
**/.vitepress/dist

# vitepress cache directory
**/.vitepress/cache

# Docusaurus cache and generated files
.docusaurus

# Serverless directories
.serverless/

# FuseBox cache
.fusebox/

# DynamoDB Local files
.dynamodb/

# Firebase cache directory
.firebase/

# TernJS port file
.tern-port

# Stores VSCode versions used for testing VSCode extensions
.vscode-test

# pnpm
.pnpm-store
# typescript
*.tsbuildinfo
next-env.d.ts

# yarn v3
.pnp.*
.yarn/*
!.yarn/patches
!.yarn/plugins
!.yarn/releases
!.yarn/sdks
!.yarn/versions
# testing / playwright
/test-results/
/playwright-report/
/blob-report/
/playwright/.cache/

# Vite files
vite.config.js.timestamp-*
vite.config.ts.timestamp-*
.vite/
# vercel
.vercel
Loading
Loading