LogoLogo
Development
Development
  • NGXS
    • Overview
  • INTRODUCTION
    • WHY
    • INSTALLATION
    • STARTER KIT
    • SCHEMATICS
  • CONCEPTS
    • STORE
      • Overview
      • Store Schematics
      • Store Options
      • Error Handling
      • Meta Reducers
    • ACTIONS
      • Overview
      • Action Schematics
      • Actions Life Cycle
      • Action Handlers
      • Cancellation
      • Monitoring Unhandled Actions
    • STATE
      • Overview
      • State Schematics
      • Life-cycle
      • Composition
      • Lazy Loading
      • State Operators
      • Custom State Operators
      • Shared State
      • State Token
      • Immutability Helpers
      • Error Handling
      • Sub States
    • SELECT
      • Overview
      • Mapped Sub States
      • Optimizing Selectors
      • Selector Utils
      • Error Handling
      • Signals
      • Select Decorator
  • STYLE GUIDE
  • PLUGINS
    • Overview
    • CLI
    • Logger
    • Devtools
    • Storage
    • Forms
    • Web Socket
    • Router
    • HMR
  • RECIPES
    • Authentication
    • Caching
    • Component Events from NGXS
    • Debouncing Actions
    • Dynamic Plugins
    • Module Federation
    • Unit Testing
    • RxAngular Integration
    • Zoneless Server-Side Rendering
  • COMMUNITY & LABS
    • COMMUNITY
      • FAQ
      • Resources
      • Developer Guide
      • Contributors
      • Contributing
      • Sponsors
    • NGXS LABS
      • Overview
  • DEPRECATIONS
    • Inject Container State Deprecation
    • Sub States Deprecation
    • Select Decorator Deprecation
  • CHANGELOG
Powered by GitBook
On this page
  • Prerequisites
  • Installation
  • Developing and Contributing
  • Modifying @ngxs/store
  • Adding a New Package: @ngxs/<my-super-plugin>
  1. COMMUNITY & LABS
  2. COMMUNITY

Developer Guide

PreviousResourcesNextContributors

Last updated 3 months ago

Welcome to the NGXS community! We're excited to have you here. This guide will help you set up your local development environment and contribute effectively.

Prerequisites

Before you begin, ensure you have met the following requirements:

  • You have installed

  • You have installed

Installation

Follow these steps to set up your local environment:

  1. Fork the repository if you haven't already. .

  2. Clone the forked repository to your local machine using git.

  3. Install project dependencies:

    # Install root dependencies
    yarn install
    
    # Install dependencies for the "create-app" tutorial
    yarn --cwd tutorials/create-app
  4. Build all packages:

    yarn build:packages

Developing and Contributing

If you want to contribute to the project by fixing bugs, adding new features, or creating new packages, follow the steps below.

Modifying @ngxs/store

  1. Run development mode:

    yarn build:packages --package store --watch
  2. Run serve integration examples:

    yarn start
  3. Make your changes...

  4. Run tests to ensure everything works correctly:

    yarn test
  5. Create a pull request with a detailed description of the changes.

Adding a New Package: @ngxs/<my-super-plugin>

  1. Create a new package directory packages/<my-super-plugin>.

  2. Create a template library with ngPackagr.

  3. Add the package to package.json at the root level.

  4. Run development mode:

    yarn build:packages --package <my-super-plugin> --watch
  5. Develop your plugin...

  6. Build the package:

    yarn build:packages --package <my-super-plugin>
  7. Run tests to ensure everything works correctly:

    yarn test
  8. Create a pull request with a detailed description of the changes.

Commit changes following the format.

Commit changes following the format.

🚀
Node.js
Yarn
Learn how
Conventional Commits
Conventional Commits