diff --git a/README.md b/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..fb56b84183b65c47aaa403d37257a4f7f3b3658d
--- /dev/null
+++ b/README.md
@@ -0,0 +1,118 @@
+# Ripperdoc Shop - Backend
+---
+## Instruções de instalação
+
+-   Instale node e npm. Recomenda-se fortemente utilizar [nvm](https://github.com/nvm-sh/nvm).
+-   Habilite pnpm com `corepack enable pnpm`.
+-   Instale [docker engine](https://docs.docker.com/engine/install/debian/) -- lembre-se de fazer os passos pós-instalação para não precisar digitar `sudo` toda hora.
+
+## Estrutura de Pastas e Documentos
+
+```plaintext
+|-- docker-compose.yml
+|-- drizzle.config.ts
+|-- package.json
+|-- pnpm-lock.yaml
+|-- README.md
+|-- src
+|     |-- db
+|     |     |-- migrations
+|     |     |     |-- 0001_flat_captain_america.sql
+|     |     |     |-- 0001_happy_tomas.sql
+|     |     |     |-- 0002_serious_arclight.sql
+|     |     |     |-- 0003_goofy_zodiak.sql
+|     |     |     |-- meta
+|     |     |           |-- 0001_snapshot.json
+|     |     |           |-- 0002_snapshot.json
+|     |     |           |-- 0003_snapshot.json
+|     |     |           |-- _journal.json
+|     |     |-- index.ts
+|     |     |-- schema.ts
+|     |-- env.ts
+|     |-- handlers
+|     |     |-- implants.ts
+|     |     |-- user.ts
+|     |-- index.ts
+|     |-- middleware
+|     |     |-- auth.ts
+|     |-- validators
+|           |-- implantsValidator.ts
+|           |-- userValidator.ts
+|-- tsconfig.json
+```
+### Explicação da Estrutura
+
+#### Arquivos da Raiz
+
+-   **docker-compose.yml**: Configuração do Docker Compose para gerenciar containers.
+    
+-   **drizzle.config.ts**: Arquivo de configuração do Drizzle (ferramenta de migração ou ORM).
+    
+-   **package.json**: Contém metadados do projeto e a lista de dependências.
+    
+-   **pnpm-lock.yaml**: Lockfile do pnpm para garantir consistência nas versões das dependências.
+    
+-   **README.md**: Documentação principal do projeto.
+    
+-   **tsconfig.json**: Configuração do TypeScript para o projeto.
+    
+
+#### Diretório  `src`
+
+-   **db**: Contém arquivos relacionados ao banco de dados.
+    
+    -   **migrations**: Armazena scripts de migração do banco de dados.
+        
+        -   **0001_flat_captain_america.sql**: Script de migração.
+            
+        -   **0001_happy_tomas.sql**: Script de migração.
+            
+        -   **0002_serious_arclight.sql**: Script de migração.
+            
+        -   **0003_goofy_zodiak.sql**: Script de migração.
+            
+        -   **meta**: Contém snapshots e metadados das migrações.
+            
+            -   **0001_snapshot.json**: Snapshot da migração 0001.
+                
+            -   **0002_snapshot.json**: Snapshot da migração 0002.
+                
+            -   **0003_snapshot.json**: Snapshot da migração 0003.
+                
+            -   **_journal.json**: Registro das migrações.
+                
+    -   **index.ts**: Arquivo principal de configuração do banco de dados.
+        
+    -   **schema.ts**: Define o esquema do banco de dados.
+        
+-   **env.ts**: Configurações de ambiente.
+    
+-   **handlers**: Contém os manipuladores de requisições.
+    
+    -   **implants.ts**: Lida com requisições relacionadas a implantes.
+        
+    -   **user.ts**: Lida com requisições relacionadas a usuários.
+        
+-   **index.ts**: Arquivo principal da aplicação.
+    
+-   **middleware**: Contém middlewares da aplicação.
+    
+    -   **auth.ts**: Middleware de autenticação.
+        
+-   **validators**: Contém validadores de dados.
+    
+    -   **implantsValidator.ts**: Valida dados de implantes.
+        
+    -   **userValidator.ts**: Valida dados de usuários.
+
+
+---
+
+## Executar
+Essa estrutura é típica para projetos Node.js com TypeScript, utilizando Docker para containerização e Drizzle para migrações de banco de dados. O diretório `src` organiza o código-fonte em módulos, como banco de dados, handlers, middlewares e validators, seguindo boas práticas de desenvolvimento.
+
+Para executar o projeto:
+1. Instale as dependências com `pnpm install`.
+2. Suba o banco com `docker compose up --build -d`.
+3. Execute as migrações do banco de dados com `npx drizzle-kit generate && npx drizzle-kit migrate` na raiz do projeto.
+4. Inicie o servidor com `pnpm run dev`
\ No newline at end of file