|
|
# Technologies
|
|
|
The following technologies are utilised:
|
|
|
* NodeJS: Javascript environment for backend (in docker)
|
|
|
* Typescript:
|
|
|
* React: for the client UI
|
|
|
* Recoil: for state management in the client
|
|
|
* Styled components: For CSS
|
|
|
* Jest: for automated testing
|
|
|
* Lerna: Monorepo management tool
|
|
|
* Yarn: NodeJS package manager
|
|
|
* Nginx: as the application gateway / reverse proxy
|
|
|
* TSED: A typescript service framework for writing REST APIs
|
|
|
* MongoDB: Database for storing user and node details etc.
|
|
|
* Redis: Inter-service messaging and in-memory database
|
|
|
* Docker: To containerise the services and client
|
|
|
* [NodeJS](https://nodejs.org/): Javascript environment for backend (in docker)
|
|
|
* [Typescript](https://www.typescriptlang.org/):
|
|
|
* [React](https://reactjs.org/): for the client UI
|
|
|
* [Recoil](https://recoiljs.org/): for state management in the client
|
|
|
* [Styled-components](https://www.npmjs.com/package/styled-components): For CSS
|
|
|
* [Jest](https://www.npmjs.com/package/jest): for automated testing
|
|
|
* [Lerna](https://www.npmjs.com/package/lerna): Monorepo management tool
|
|
|
* [Yarn](https://classic.yarnpkg.com/en/): NodeJS package manager
|
|
|
* [Nginx](https://www.nginx.com/): as the application gateway / reverse proxy
|
|
|
* [TSED](https://tsed.io/): A typescript service framework for writing REST APIs
|
|
|
* [MongoDB](https://www.mongodb.com/): Database for storing user and node details etc.
|
|
|
* [Redis](https://redis.com/): Inter-service messaging and in-memory database
|
|
|
* [Docker](https://www.docker.com/): To containerise the services and client
|
|
|
* Gitlab: For CI/CD
|
|
|
* Webhooks: For automated deployment on our Ubuntu server
|
|
|
* [Webhooks](https://github.com/adnanh/webhook): For automated deployment on our Ubuntu server
|
|
|
* Docker Registry: Our own registry instance
|
|
|
* Docker-compose: To orchestrate a collection of docker containers
|
|
|
|
|
|
# Development and Monitoring Tools
|
|
|
* OpenSearch: A logging and metrics solution
|
|
|
* OpenSearch Dashboard: Web interface to OpenSearch
|
|
|
* RedisInsight: Web interface to Redis
|
|
|
* [OpenSearch](https://opensearch.org/): A logging and metrics solution
|
|
|
* [OpenSearch Dashboard](https://opensearch.org/docs/latest/dashboards/index/): Web interface to OpenSearch
|
|
|
* [RedisInsight](https://redis.io/docs/stack/insight/): Web interface to Redis
|
|
|
* VS Code: Development containers
|
|
|
* Mongo Express: Web interface for MongoDB
|
|
|
* [Mongo Express](https://github.com/mongo-express/mongo-express): Web interface for MongoDB
|
|
|
* Docker Registry UI: Web interface to browse docker registry |
|
|
\ No newline at end of file |