- Issues labeled "good first issue"
- Issues labeled "help wanted"
- Improve the documentation
- Add a new example
- Add a new guide
- Propose a new feature by opening an issue
This project follows the Conventional Commits specification.
Commit messages should be structured as follows:
<type>[optional scope]: <description>
docs: add user story
The Esmbly project uses a monorepo approach. This makes it easier to make (and test) changes across packages. All packages are located in the packages
directory.
|-- packages
|-- cli .................... Command line interface
|-- core ................... Core functionality (Generate AST, Run transformers)
|-- printer ................ Responsible for printing to the console
|-- transformer-v8 ......... V8 transformer
|-- transformer-flow ....... Flow transformer
|-- transformer-jsdoc ...... JSDoc transformer
|-- transformer-wasm ....... WebAssembly transformer
|-- types .................. Shared type definitions
|-- utils .................. Shared utilities
- Fork this project.
- Installing your local dev environment
- Create a feature branch.
- Make your changes.
- Run the tests.
- Push your changes to your fork/branch.
- Open a pull request.
- Click the fork button up top.
- Clone your fork locally (Notice that git's
origin
reference will point to your forked repository). - It is useful to have the upstream repository registered as well using:
git remote add upstream https://github.com/esmbly/esmbly.git
and periodically fetch it usinggit fetch upstream
.
- Node.js >= v.10
- Yarn
yarn install
Create and switch to a new feature branch: git checkout -b {branch_name} upstream/master
(replace {branch_name}
with a meaningful name that describes your feature or change).
Now that you have a new branch you can edit/create/delete files.
- Run tests:
yarn test
. - Run lint:
yarn lint
. - Run e2e tests:
yarn test-e2e
.
After lint and all tests pass, push the changes to your fork/branch on GitHub: git push origin {branch_name}
.
Create a pull request on GitHub for your feature branch.