Skip to content

feat: initial T-Ruby WASM npm package setup#1

Merged
yhk1038 merged 6 commits intomainfrom
feat/initial-wasm-package
Jan 21, 2026
Merged

feat: initial T-Ruby WASM npm package setup#1
yhk1038 merged 6 commits intomainfrom
feat/initial-wasm-package

Conversation

@yhk1038
Copy link
Copy Markdown
Contributor

@yhk1038 yhk1038 commented Jan 21, 2026

Summary

Initial setup for the T-Ruby WASM npm package.

  • @t-ruby/wasm package enables T-Ruby compilation in the browser
  • Full TypeScript API with complete type definitions
  • Ruby WASM integration (@ruby/3.4-wasm-wasi)
  • Virtual file system for multi-file projects
  • GitHub Actions CI/CD workflows
  • Synced with t-ruby gem version (0.0.46)

Changes

Package Configuration

  • package.json: @t-ruby/wasm v0.0.46
  • License: BSD-2-Clause (same as t-ruby gem)
  • Ruby WASM dependencies: @ruby/3.4-wasm-wasi, @ruby/wasm-wasi

CI/CD

  • .github/workflows/ci.yml: Build, test, lint on PR/push
  • .github/workflows/release.yml: npm publish on tag push or manual trigger

Versioning Scheme

  • First 3 digits match gem version (0.0.46)
  • Optional 4th digit for WASM-only patches (0.0.46.1, 0.0.46.2...)

Test Plan

  • npm install succeeds
  • npm run build succeeds
  • npm run typecheck succeeds
  • npm run test:run succeeds

- @t-ruby/wasm package for browser-based T-Ruby compilation
- TypeScript API with full type definitions
- Ruby WASM integration (@ruby/3.4-wasm-wasi)
- Virtual file system for multi-file projects
- GitHub Actions CI/CD workflows
- Version synced with t-ruby gem (0.0.46)
- Fix 'success' property duplication in compile() return
- Use @ruby/wasm-wasi/dist/browser for DefaultRubyVM import
- Add @ts-expect-error for untyped browser subpath
- Add eslint.config.js with flat config format
- Add @eslint/js and typescript-eslint dependencies
- Remove deprecated .eslintrc.cjs
- Update lint script (remove --ext flag)
- Add id-token permission for OIDC authentication
- Remove NPM_TOKEN secret dependency
- Enable --provenance for supply chain security
@yhk1038 yhk1038 merged commit 3e11dcb into main Jan 21, 2026
1 check passed
@yhk1038 yhk1038 deleted the feat/initial-wasm-package branch January 21, 2026 11:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant