Development
Aprenda como configurar e rodar o projeto localmente
Este guia explica como configurar e rodar o backend e o front-end do Crypto Arbitrage Service localmente.
🛠️ Backend
O backend foi desenvolvido em Golang (versão 1.20) e está localizado na pasta crypto-core
. Ele depende de serviços como MongoDB e RabbitMQ, que podem ser executados via Docker.
Passos para rodar o backend:
- Certifique-se de que você tem o Docker instalado na sua máquina.
- Navegue até a pasta do backend:
- Suba os serviços necessários com o Docker Compose:
- Execute o backend:
🔑 Variáveis de Ambiente do Backend
O backend utiliza diversas variáveis de ambiente para configurar integrações e serviços externos. Abaixo está uma descrição de cada uma delas:
-
API_KEY_BINANCE: Chave de API para acessar a API da Binance.
-
SECRET_KEY_BINANCE: Chave secreta correspondente à API da Binance.
-
API_KEY_OKX: Chave de API para acessar a API da OKX.
-
SECRET_KEY_OKX: Chave secreta correspondente à API da OKX.
-
PASSPHRASE_OKX: Frase de segurança necessária para autenticação na API da OKX.
-
MONGO_URI: URI de conexão com o banco de dados MongoDB. Exemplo:
mongodb://localhost:27017
. -
FREE_CURRENCY_API_KEY: Chave de API para acessar o serviço de conversão de moedas Free Currency API.
-
AMQP_URI: URI de conexão com o servidor RabbitMQ. Exemplo:
amqp://adm:123456@localhost:5672/virtualhost
. -
TWITTER_CONSUMER_KEY: Chave de consumidor para integração com a API do Twitter.
-
TWITTER_CONSUMER_SECRET: Chave secreta de consumidor para integração com a API do Twitter.
-
PANIC_RECOVERY: Faz a aplicacao se recuperar de panicos (erros inesperados).
-
REDIS_HOST: Endereço do servidor Redis. Exemplo:
localhost:6379
. recomendado caso voce va utilizar em alguma vm ou em um ambiente fora de containers
Certifique-se de configurar essas variáveis de ambiente corretamente antes de executar o backend. Você pode defini-las em um arquivo .env
na raiz do projeto ou diretamente no ambiente do sistema operacional.
🌐 Front-end
O front-end foi desenvolvido em React e está localizado na pasta front-arbitragem
. Ele utiliza o npm para gerenciar dependências e rodar o servidor local.
Passos para rodar o front-end:
- Certifique-se de que você tem o Node.js (versão 18.10.0 ou superior) instalado.
- Navegue até a pasta do front-end:
- Instale as dependências do projeto:
- Inicie o servidor local:
🐳 Dependências via Docker
As dependências do backend, como MongoDB e RabbitMQ, são gerenciadas via Docker. Para subir os serviços necessários, execute o seguinte comando na raiz do projeto: