# NGXS

<div align="left"><figure><picture><source srcset="https://2789922418-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-L9CoGJCq3UCfKJ7RCUg-347405460%2Fuploads%2Fgit-blob-bfaa9d6b89282fe07ce1abbbe1d77faa9ccd7533%2Fngxs-logo_dark_theme.png?alt=media" media="(prefers-color-scheme: dark)"><img src="https://2789922418-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-L9CoGJCq3UCfKJ7RCUg-347405460%2Fuploads%2Fgit-blob-615d2359a69db9a9473dd096e34d66d5c9ae35bd%2Fngxs-logo_light_theme.png?alt=media" alt="" width="250"></picture><figcaption></figcaption></figure></div>

[![Discord](https://img.shields.io/discord/1008573955587702894?style=flat-square\&logo=discord\&label=discord\&link=https%3A%2F%2Fdiscord.com%2Fchannels%2F1008573955587702894)](https://discord.com/channels/1008573955587702894) [![](https://badge.fury.io/js/%40ngxs%2Fstore.svg)](https://badge.fury.io/js/%40ngxs%2Fstore) [![](https://api.codeclimate.com/v1/badges/5b43106a1ddff7d76a04/maintainability)](https://codeclimate.com/github/ngxs/store/maintainability) [![](https://api.codeclimate.com/v1/badges/5b43106a1ddff7d76a04/test_coverage)](https://codeclimate.com/github/ngxs/store/test_coverage) [![](https://circleci.com/gh/ngxs/store/tree/master.svg?style=svg)](https://circleci.com/gh/ngxs/store)

### ❓ What is NGXS?

NGXS is a state management pattern + library for Angular. It acts as a single source of truth for your application's state, providing simple rules for predictable state mutations.

NGXS is modeled after the CQRS pattern popularly implemented in libraries like Redux and NgRx but reduces boilerplate by using modern TypeScript features such as classes and decorators.

### 👋 New to NGXS?

If you're just getting started with NGXS, I recommend you head over to the [concepts](https://www.ngxs.io/readme/intro) and then explore the rich ecosystem of examples in the [community resources](https://www.ngxs.io/community-and-labs/community/projects) page.

### ❓ Need Help?

For questions, please ask them on Stack Overflow with the `ngxs` tag: <https://stackoverflow.com/questions/ask?tags=ngxs>

To chat with other users and contributors join us on Discord: <https://discord.gg/yT3Q8cXTnz> (PS. we are migrating from our [Slack](https://join.slack.com/t/ngxs/shared_invite/zt-by26i24h-2CC5~vqwNCiZa~RRibh60Q) server)

If you think there is a bug in this library, you can open an issue on GitHub (<https://github.com/ngxs/store/issues/new>). If possible a link to a [http://stackblitz.com](https://stackblitz.com/edit/ngxs-repro) (or github) repo with a repro or a failing test would be great.

### ❤️ Giving Back

Become a [Contributor](https://www.ngxs.io/community-and-labs/community/contributors) or a [Sponsor](https://www.ngxs.io/community-and-labs/community/sponsors).

## Sponsors

Thank you to the organisations sponsoring us and to the individuals that financially back our work and the running of our open source community. Become [a sponsor](https://opencollective.com/ngxs#sponsor) or [a backer](https://opencollective.com/ngxs#backer) today. Every bit helps!

### Organisations

[![Organisations](https://opencollective.com/ngxs/sponsors.svg?width=890\&avatarHeight=100)](https://opencollective.com/ngxs#sponsors)

### Individuals

[![Backers](https://opencollective.com/ngxs/backers.svg?width=890)](https://opencollective.com/ngxs#backers)

## Contributors

Thanks to all our [contributors](https://github.com/ngxs/store/graphs/contributors)! Open source does not work without you!

![](https://opencollective.com/ngxs/contributors.svg?width=890)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://www.ngxs.io/readme.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
