Template ExpressJS
Criação de pastas base que normalmente uso em todos os projetos em ExpressJS.
🧩 Introdução | 🚀 Resultados | 🧪 Dependências | 💡 Possíveis Melhorias | 🏆 Créditos
⠀⠀⠀⠀O objetivo da criação desse projeto é ter uma arquitetura de software simples, eficiente e padrão para se usar no Back-end. Geralmente os projetos de Back-end sempre têm as mesmas pastas e estrutura, sendo assim criei uma pasta para agilizar o processo inicial de criação, padronizando as pastas e importando as principais tecnologias no Back-end, como TypeScript, Jest e alguma conexão com banco de dados.
Todos os resultados foram alcançados com sucesso. De modo geral são esses os resultados de cada requisição.
| vscode |
|---|
![]() |
-
- src : Pasta principal onde fica toda esturutura.
-
- business: As regras de negocios de todo cistema aqui fica a estrutura logica do back-end.
-
- controller: Controle de tudo que entra e sai do back-end aqui é onde chega os dados e sai os dados.
-
- database: Controle dos bancos de dados aqui é onde fica a conecção direta de algum banco de dado.
-
- errors: Retorno de uma mensagem com o error, funções pre programada de erros comuns.
-
- models: Todos Types de todo o projeto.
-
- router: Controle de rota da url.
-
- services: Serviçõs esterno que esta sendo importado e usado.
-
- tests: Pasta principal onde fica toda esturutura.
-
- mocks: Testes com dados constantes pre programados
Requisitos para rotar o codigo...
Caso tenha Git basta da git clone, caso não tenha baixe o projeto completo em dowlon
git clone https://github.com/MayconCoutinho/Express-TemplateCaso já tenha o Node em sua maquina basta instalar o projeto com npm i
npm i OBS - Muito importante, caso não tenha um banco de dados MySQL disponivel, não vai da para rodar o projeto, pois o projeto conecta diretamente com o banco de dados sendo assim crie um arquivo ".env" para por os dados do MySQL.
DB_HOST = Dados MySQL
DB_USER = Dados MySQL
DB_PASSWORD = Dados MySQL
DB_SCHEMA = Dados MySQL
"scripts": {
"start": "node ./build/src/index.js",
"build": "tsc",
"dev": "ts-node-dev ./src/index.ts",
"migrations": "tsc && node ./build/src/database/migrations/Migrations.js",
"test": "jest"
}
"dependencies": {
"@types/bcryptjs": "^2.4.2",
"@types/cors": "^2.8.12",
"@types/express": "^4.17.14",
"@types/jest": "^29.0.3",
"@types/jsonwebtoken": "^8.5.9",
"@types/knex": "^0.16.1",
"@types/node": "^18.7.23",
"@types/uuid": "^8.3.4",
"jest": "^29.1.1",
"ts-jest": "^29.0.2",
"ts-node-dev": "^2.0.0",
"typescript": "^4.8.4"
}
"devDependencies": {
"@types/bcryptjs": "^2.4.2",
"@types/cors": "^2.8.12",
"@types/express": "^4.17.14",
"@types/jest": "^29.0.3",
"@types/jsonwebtoken": "^8.5.9",
"@types/knex": "^0.16.1",
"@types/node": "^18.7.23",
"@types/uuid": "^8.3.4",
"jest": "^29.1.1",
"ts-jest": "^29.0.2",
"ts-node-dev": "^2.0.0",
"typescript": "^4.8.4"
}
Possíveis melhorias no código e no projeto, caso queira voltar e melhorá lo.
- ***- ***
- ***- ***
Todo o projeto foi feito por...
![]() Maycon Coutinho |
Hello 😃 Se você chegou até aqui, acredito que gostou do meu projeto, nesse caso temos algo em comum, sendo assim que tal conversamos um pouco? Meu chama no linkedin 😁 |
|---|



