# Basic setup for development ## Required tools/packages - [SSH](https://docs.gitlab.com/ee/ssh/README.html) - [Git](https://docs.gitlab.com/ee/gitlab-basics/start-using-git.html) - [Docker](https://docs.gitlab.com/ee/user/project/container_registry.html) & Docker-Compose - Node.js & NPM - be sure to install the "Fermium" (14.x) LTS version, might need a [PPA](https://github.com/nodesource/distributions/blob/master/README.md#installation-instructions) or use NVM - [NVM](https://github.com/creationix/nvm#installation) - if you want to use multiple different versions of node Example for Debian based distributions: ```shell apt install ssh git docker docker-compose nodejs ``` ## IDE - recommended choices - [VSCode](https://code.visualstudio.com/) - [Webstorm](https://www.jetbrains.com/webstorm/download/) - Educational or OpenSource License **cannot** be used ## Optional helpful tools - Curl - for executing HTTP requests on the command line - Postman or Insomnia - for executing HTTP requests with a GUI ## Before you start (Windows only) As we are working on LF line-endings only, make sure your editior or IDE does not introduce CRLF line-endings. Depending on your preferred settings you could consider applying `git config core.eol lf` and `git config core.autocrlf input` within our reposiories. ## Clone starter repositories - [Minimal deployment](https://gitlab.com/openstapps/minimal-deployment) - contains backend, database, minimal connector, copy (from api) and app - [Minimal connector](https://gitlab.com/openstapps/minimal-connector) - an example connector to learn the principles of connector development ```shell git clone git@gitlab.com:openstapps/minimal-deployment.git git clone git@gitlab.com:openstapps/minimal-connector.git ```