Skip to content

Latest commit

 

History

History
48 lines (33 loc) · 1.47 KB

File metadata and controls

48 lines (33 loc) · 1.47 KB

Contributing to native.js

Thanks for contributing to native.js.

Before You Start

  • Install dependencies with yarn install
  • Build the repo with yarn prepare
  • Run checks with yarn lint and yarn test

Project Areas

  • packages/nativejs-compiler - compiler core, type inference, code generation
  • packages/nativejs-preset-standard - base runtime helpers and standard plugins
  • packages/nativejs-preset-arduino - Arduino target support
  • packages/nativejs-preset-rp2040 - RP2040 target support and Pico SDK integration

Good Contributions

  • new language feature support in the compiler
  • bug fixes in emitted C or type inference
  • new target presets or peripheral plugins
  • improved examples and target documentation
  • test coverage for compiler and preset behavior

Development Flow

  1. Make focused changes
  2. Run yarn prepare
  3. Run yarn lint
  4. Run yarn test
  5. If you touch RP2040 support, also run the preset-specific build or smoke flow when possible

RP2040 Notes

Useful commands:

yarn --cwd packages/nativejs-preset-rp2040 generate -- examples/src/blink.ts
yarn --cwd packages/nativejs-preset-rp2040 validate -- examples/src/blink.ts
yarn --cwd packages/nativejs-preset-rp2040 smoke

validate and smoke require a local Pico SDK setup through PICO_SDK_PATH.

Pull Requests

Keep pull requests narrow in scope when possible. If a change affects code generation, include at least one test or example that demonstrates the intended output.