Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/juliocesarscheidt/stock-trader


https://github.com/juliocesarscheidt/stock-trader

aws-alb aws-ecs aws-xray crawler flask github-actions mongodb python rabbitmq terraform

Last synced: 2 months ago
JSON representation

Awesome Lists containing this project

README

        

# Stocks Project

This is a project used to retrieve stocks information, from a third party website called statusinvest , through crawling.

It is possible to search by american and brazilian stocks, and the default currency used will be US$.

It is split into small services, each one with some purpose.

## Application architecture
![Architecture](./images/stocks-project-application.drawio.png)

## Up and Running

### Locally

This will start all services locally, then access the UI on

```bash
# infrastructure
docker-compose up -d --build mongo rabbitmq xray-daemon
docker-compose logs -f --tail 50 mongo rabbitmq xray-daemon

# services
docker-compose up -d --build stock-crawler stock-api stock-ui
docker-compose logs -f --tail 50 stock-crawler stock-api stock-ui
```

### Cloud

> Some notes:

For the MongoDB we are going to use Cloud MongoDB , then it will not be provisioned here, we will just pass the URI connection string as environment variable to the services.
The RabbitMQ will be the AWS MQ with interface for RabbitMQ.

## Cloud architecture

![Architecture](./images/stocks-project-cloud.drawio.png)

Instructions for deploy here: [Instructions](./infrastructure/README.md)