> For the complete documentation index, see [llms.txt](https://guydwilks.gitbook.io/avanced-animation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://guydwilks.gitbook.io/avanced-animation/untitled.md).

# The application code

First, on the host machine, I needed a few libraries. From the [node download page](https://nodejs.org/en/download/), I got npm which allowed me to install all subsequent libraries. The libraries I needed were: Express, Docker, and bcrypt, md5, and mongodb

To install docker, install the community edition on a computer running windows 1- pro, Linux, or MacOS. For the rest of the libraries run the following commands

```
$ npm install -g express
$ npm install -g md5
$ npm install -g mongo
$ npm install -g bcrypt
```

To initialize the project use

```
$ npm init
```

From here I started coding assuming that the application would be in the container. The code in the backend can be found [here](https://github.com/alexander-beaver/advanims1/blob/backend/)

{% hint style="info" %}
You may need to login to docker through the api
{% endhint %}

In the folder I then ran the docker commands

```
# This specifies the tag that will be used for the docker container and the location to look for
$ sudo docker build -t guydw/eggchatbackend .
```

And then I pushed it up to the cloud using the docker push command

```
$ sudo docker push guydw/eggchatbackend
```

After this I could redeploy the code on the server
