# Technologies

### <img src="https://emojis.slackmojis.com/emojis/images/1473950148/1161/react.png?1473950148" alt="react logo" data-size="line">[<img src="https://emojis.slackmojis.com/emojis/images/1533426774/4425/nodejs.png?1533426774" alt="nodejs logo" data-size="line">](https://slackmojis.com/emojis/4425-nodejs/download)[<img src="https://emojis.slackmojis.com/emojis/images/1462128189/390/redux.png?1462128189" alt="redux logo" data-size="line">](https://slackmojis.com/emojis/390-redux/download)[<img src="https://emojis.slackmojis.com/emojis/images/1479745458/1383/typescript.png?1479745458" alt="typescript logo" data-size="line">](https://slackmojis.com/emojis/1383-typescript/download)[<img src="https://emojis.slackmojis.com/emojis/images/1483053688/1539/express.png?1483053688" alt="express logo" data-size="line">](https://slackmojis.com/emojis/1539-express/download)<img src="https://emojis.slackmojis.com/emojis/images/1462891199/406/travisci.png?1462891199" alt="travisci logo" data-size="line"><img src="https://emojis.slackmojis.com/emojis/images/1503640659/2833/netlify.png?1503640659" alt="netlify random" data-size="line"><img src="https://emojis.slackmojis.com/emojis/images/1465929657/511/heroku.png?1465929657" alt="heroku logo" data-size="line"> [<img src="https://emojis.slackmojis.com/emojis/images/1462400762/397/docker.png?1462400762" alt="docker logo" data-size="line">](https://slackmojis.com/emojis/397-docker/download)[<img src="https://emojis.slackmojis.com/emojis/images/1532540801/4295/jest.png?1532540801" alt="jest random" data-size="line">](https://slackmojis.com/emojis/4295-jest/download)[<img src="https://emojis.slackmojis.com/emojis/images/1532555621/4296/mongodb.png?1532555621" alt="mongodb logo" data-size="line">](https://slackmojis.com/emojis/4296-mongodb/download)[<img src="https://emojis.slackmojis.com/emojis/images/1473972964/1163/redis.gif?1473972964" alt="redis logo" data-size="line">](https://slackmojis.com/emojis/1163-redis/download)&#x20;

#### **Frameworks.**

* [React](https://reactjs.org/) - A JavaScript library for building user interfaces.&#x20;
* [Node](https://nodejs.org/en/)- Executes JavaScript code outside of a browser.
* [TypeScript](https://www.typescriptlang.org/) - Superset of JavaScript that compiles to plain JavaScript.
* [Redux](https://redux.js.org/) - A Predictable State Container for JS Apps.
* [Redux-Sagas](https://redux-saga.js.org/) - An alternative side effect model for Redux apps.
* [Reselect](https://github.com/reduxjs/reselect) - Selector library for Redux.
* [Emotion](https://emotion.sh/docs/styled) - Emotion is a library designed for writing css styles with JavaScript.
* [Express](https://expressjs.com/) - Node.js web application framework.

#### **CI/CD.**&#x20;

* [Travis](https://travis-ci.org/) - Test and Deploy with Confidence.
* [Hound](https://github.com/houndci/hound) - Automated code review for GitHub pull requests.
* [CodeCov](https://codecov.io/) - Improves your code review workflow and quality.
* [Netlify](https://www.netlify.com/) - Netlify builds, deploys and hosts your front-end.
* [Husky](https://github.com/typicode/husky) - Git hooks made easy woof!
* [Heroku](https://www.heroku.com/) - A cloud platform as a service supporting several programming languages.
* [Docker](https://www.docker.com/) - Empowering App Development for Developers.
* [Istanbul](https://istanbul.js.org/) - JavaScript test coverage tool.

#### Testing.

* [Jest](https://jestjs.io/) - Jest is a delightful JavaScript Testing Framework.
* [Enzyme](https://enzymejs.github.io/enzyme/) - JavaScript Testing utilities for React.

#### Database.&#x20;

* [MongoDB](https://www.mongodb.com/) - The database for modern applications.
* [Redis](https://redislabs.com/) - Redis is an open source (BSD licensed), in-memory data structure store.

#### Dependencies.

* [Sentry](https://sentry.io/welcome/) - Application Monitoring and Error Tracking Software.
* [Axios](https://www.npmjs.com/package/axios) - Promise based HTTP client for the browser and node.js.
* [React Loadable](https://github.com/jamiebuilds/react-loadable) - A HOC for loading components with promises.
* [IDB](https://www.npmjs.com/package/idb) - IndexedDB with usability.
* [Font Awesome](https://fontawesome.com/) - Font Awesome is a font and icon toolkit based on CSS and LESS.
* [React Router](https://www.npmjs.com/package/react-router) - Router for react applications.

#### Additional tools.

* [Prettier](https://prettier.io/) - Prettier is an opinionated code formatter.
* [ESlint](https://enzymejs.github.io/enzyme/) - Find and fix problems in your JavaScript code.

#### Deprecated Stack 🧨 (We are migrating from this stack => TS, Emotion).

* [SAAS](https://sass-lang.com/) - Syntactically Awesome Style Sheets.
* [BootStrap 4](https://getbootstrap.com/docs/4.0/getting-started/introduction/) - JS UI Framework.
* [Material UI](https://material-ui.com/) - React components for faster and easier web development.
* [Prop-Types](https://www.npmjs.com/package/prop-types) - Runtime type checking for React props and similar objects.
* [Lodash](https://lodash.com/) - A JavaScript utility library delivering consistency, modularity.

#### Migration  Ideas. 💭

We also plan to introduce some new technologies in the near future.

* [GraphQ](https://graphql.org/)L - A query language for your API.
* [Relay](https://relay.dev/) - The production-ready GraphQL client for React.
* Microservices in [Golang](https://golang.org/) - Go is a statically typed, compiled programming language


---

# 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://ignitus-docs.gitbook.io/ignitus/technical-stack/technologies.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.
