Requirements
If you wish to contribute to Skeleton, please ensure you have read and understand our requirements below.
Contribution Workflow
- Select an issue or roadmap task you wish to contribute to.
- Leave a comment, join the roadmap discussion, or reach out on Discord.
- Review with core contributors to define all requirements before you write your first line of code.
- Follow our branch naming conventions described below.
- Don't be afraid to submit a draft pull request early on to ensure you're meeting our guidelines.
- Run automated tests to confirm no regressions were introduced from your changes.
- Document your new feature or update per our documentation guidelines.
- When ready, set your pull request to the "ready to review" state. Then be patient, we'll review asap.
- If your PR meets all requirements it will be merged, otherwise feedback will be provided.
Branches
Branch | Description | Pull Requests |
---|---|---|
master
|
Represents the production branch. Pull requests sent to this branch will be rejected. | 🚫 No |
dev
|
The active development branch containing bleeding edge changes. Target this branch for PRs | ✅ Yes |
Feature Branch Conventions
Prefix | Description |
---|---|
docs/*
|
Updates to the documentation pages or text copy. |
feat/*
|
New features, components, or far-reaching updates. |
chore/*
|
Simple and localized updates. |
bugfix/*
|
Commits that address or fix issues. |
The wildcards (*) should be replaced with short and semantic descriptions that are lowercase and separated by dashes.
feat/my-new-component-name
Third Party Dependencies
Avoid adding additional dependencies without prior consent from a core team member. Pull Requests that do not follow this recommendation will be rejected outright.
Code Linting & Formatting
All Skeleton projects utilize Prettier. To check for linting issues, run:
npm run lint
To automatically apply formatting, run:
npm run format
Automated Tests
Tests are handled via Vitest, which is similar to Jest. Ensure tests are current and passing before submitting a pull request.
npm run test
Spell Checking
Skeleton uses Cspell to check for spelling errors. We reccomend
installing the
Code Spell Checker
extension for VS Code. You can add words to the dictionary using this extension, or by editing cspell.json
at the root of
the repository.
npm exec cspell "**" --no-progress
Project Structure
Path | Description |
---|---|
/src/docs
|
Documentation-specific components and features, such as the theme generator. |
/src/lib
|
Features and assets distributed within the core library's and NPM package. |
/src/routes
|
Documentation pages for the public-facing documentation website, including this page. |