Initial Release: React Template CI/CD π
This release includes the initial version of the CI/CD pipeline for the React Template project. It comes pre-configured with essential tools and libraries to streamline the development process.
Features:
- TypeScript: Provides type safety and enhances code quality.
- ESLint: Lints the code to maintain a consistent code style.
- Prettier: Formats the code for readability.
- Jest: Runs tests and provides coverage reports.
- Husky: Manages Git hooks to enforce pre-commit checks.
- TailwindCSS: Integrates utility-first CSS for rapid UI development.
GitHub Actions Workflows:
- CI Pipeline: Automatically builds, tests, and lint your code on every push and pull request.
- Remove Merged Branches: Automatically deletes branches after they have been merged.
- Remove Stale Unmerged Branches: Deletes branches that have not been updated in a specified period.
- Welcome Messages: Posts welcome messages on new issues and pull requests.
- Label New Pull Requests: Automatically adds labels to new pull requests.
- Close Stale Issues and PRs: Closes issues and pull requests that have been inactive.
How to Use:
- Clone the repository.
- Install dependencies with
npm ci
. - Use
npm run build
to build the project. - Run
npm run test
to execute tests and generate coverage reports. - Format code using
npm run format
. - Lint code with
npm run lint
.
Example Usage:
name: CI
on: [push, pull_request]
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
node-version: [21.x]
steps:
- uses: actions/checkout@v2
- name: π οΈ Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v2
with:
node-version: ${{ matrix.node-version }}
- name: π¦ Install dependencies
run: npm ci
- name: ποΈ Format code
run: npm run format
- name: π§Ή Lint code
run: npm run lint
- name: π¨ Build
run: npm run build
- name: π§ͺ Test with coverage
run: npm run test
### π Purchase a License
This project is licensed under the terms of the Commercial License Agreement. To purchase a commercial license, please contact me via GitHub or through the [sponsorship page](https://github.com/sponsors/Jagoda11).
### π Support
If you like this hassle-free and easy setup, and if it saved you some time, please consider obtaining a commercial license and sponsoring me on [GitHub Sponsors](https://github.com/sponsors/Jagoda11). Your support is greatly appreciated and helps me continue my contributions to open source and volunteer work.