🎉 Thanks for considering contributing to this project! 🎉
When contributing to this repository, please first discuss the change you wish to make via an issue. Please use the issue templates. They are there to help you and to help the maintainers gather information.
Before working on an issue, ask to be assigned to it. This makes it clear to other potential contributors that someone is working on the issue.
When creating a PR, please use the template. The information in the template helps maintainers review your pull request.```
This project was made with ❤️. The simplest way to give back is by starring and sharing it online.
Everyone is welcome regardless of personal background. We enforce a Code of conduct in order to promote a positive and inclusive environment.
First fork and clone the repository. If you're not sure how to do this, please watch these videos.
corepack enable
pnpm installThis installs all the dependencies for all the packages and builds the @netlify/remix-runtime,
@netlify/remix-adapter, @netlify/remix-edge-adapter, and @netlify/vite-plugin-react-router packages.
To build the packages, run the build command.
pnpm run build:packagesRun the build watch command to have packages built when they are changed.
pnpm run build:packages:watchTo run unit tests:
pnpm run test:unitTo run all tests (including linting and typechecking):
pnpm run testThese tests are meant to be very terse, basic, happy-path "user journey" system tests. These should generally map to user-facing features and should rarely be added to.
Prerequisites:
- Netlify CLI installed globally
- Install Playwright browsers (it should prompt you automatically the first time):
pnpm exec playwright install --with-deps
To run end-to-end integration tests:
pnpm run test:e2eTo add a new fixture site called my-fixture:
- create a new directory
tests/e2e/fixtures/my-fixture - register it in
tests/e2e/support/fixturesasmyFixture - inject
myFixturedirectly into any test
We use Conventional Commit messages to automate version management.
Most common commit message prefixes are:
fix:which represents bug fixes, and generate a patch release.feat:which represents a new feature, and generate a minor release.feat!:,fix!:orrefactor!:and generate a major release.
Merge the release PR