ihub is a reference project for modern full-stack web application built using TypeScript, React.js, Redux, Node.js, Express, and MongoDB.
- Build highly decoupled web application components UI, API and Database/Persistence
- Each components should be scaled and released independently
- Introduce productive software development tools and techniques
- Introduce modern application deployment tools i.e. Kubernetes and Docker
- API RESTful API built with
Node.js,Express,MongoDB, andTypeScript. - UI Single Page Application built with
React.js,ReduxandTypeScript.
The recommended way to run the app is using docker compose.
-
Install docker: Docker
-
Run docker compose
docker compose up --build
docker compose up --build // to run all apps together based on docker-compose.yml file
docker remove 02136a267daa // remove a container
docker images // list images
docker rmi image_name -f // remove an image
// sync local working directory with container working directory
docker run -v $(pwd):/container-workdir -p host-port:container-port --name container-name image-name
// Check image vulnerabilities
docker scout quickview
docker scout cves image_name:versionInstructions to deploy this app with Kubernetes and test it locally can be found here