Skip to content

Template para projetos de API´s com NodeJS com estrutura de pastas e as principais bibliotecas configuradas.

Notifications You must be signed in to change notification settings

gok-dev/nodejs-template

Repository files navigation

GitHub issues GitHub last commit


Logo

NodeJS API Template

Tabela de Conteúdo

Sobre o Projeto

Este projeto visa a criação de um template que possa ser utilizado no momento de criação de projetos utilizando NodeJS, visto que o processo de instalação e configuração das libs no início de um projeto podem gerar certa complexidade e muitas vezes até erros que atrasam o processo, atrapalhando assim o fluxo de desenvolvimento.

Feito Com

Abaixo segue o que foi utilizado na criação deste template:

  • NodeJS - Node.js é um software de código aberto, multiplataforma, que executa códigos JavaScript no backend/servidor e frontend/interface, baseado no V8 interpretador de JavaScript em C++ do Google, mantido pela fundação Node.js em parceria com a Linux Foundation.
  • TypeScript - TypeScript é um superconjunto de JavaScript desenvolvido pela Microsoft que adiciona tipagem e alguns outros recursos a linguagem. Anders Hejlsberg, arquiteto da linguagem C# e criador das linguagens Delphi e Turbo Pascal, trabalhou no desenvolvimento do TypeScript.
  • ESLint - O ESLint é uma ferramenta de lint plugável para JavaScript e JSX;
  • Prettier - O Prettier atualiza seu código automaticamente seguindo os padrões que você quiser toda vez salva o arquivo;
  • EditorConfig - O EditorConfig é um formatador de arquivos e coleções em forma de Plugin para Editores de código/texto com o objetivo de manter um padrão de código consistente entre diferentes editores, IDE's ou ambientes;

Começando

Para conseguir utilizar o template, será através de uma cópia local dos arquivos, siga os passos abaixo.

Pré-requisitos

Antes de seguirmos para as configurações e uso do template, é ideal que você tenha o ambiente configurado para criar e testar aplicativos em NodeJS, para isso você pode seguir o guia do link abaixo:

Instalação do NodeJS

Estrutura de Arquivos

A estrutura de arquivos está da seguinte maneira:

nodejs-template
├── app/
│   ├── api/
│   │   └── controllers/
│   │   │   └── status/
│   │   │     └── api.ts
│   │   │     └── index.ts
│   │   └── routes/
│   │       └── status.routes.ts
│   ├── config/
│   │   └── express.ts
│   ├── database
│   │    └── connection.ts
│   │    └── mongodb.ts
│   │    └── tables.ts
│   └── index.ts
│   └── swagger-output.json
│   └── swagger.ts
├── .editorconfig
├── .env.example
├── .eslintignore
├── .eslintrc.json
├── .gitignore
├── .prettierignore
├── .prettierrc
├── knexfile.ts
├── babel.config.js
├── package.json
├── README.md
├── tsconfig.json
└── yarn.lock

Serão explicados os arquivos e diretórios na seção de Edição.

Instalação

  1. Para instalar e utilizar esse template o processo é bem simples, basta clonar o repositório e depois editar o nome do projeto no package.json:
git clone [email protected]:gok-dev/nodejs-template.git
  1. Execute o comando abaixo para instalar as dependencias do projeto.
yarn install

Com isso o projeto estará pronto para começar a ser editado para a criação da sua api com NodeJS


Contribuição

Contribuições são o que fazem a comunidade open source um lugar incrível para aprender, inspirar e criar. Qualquer contribuição que você fizer será muito apreciada.

  1. Faça um Fork do projeto
  2. Crie uma Branch para sua Feature (git checkout -b feature/FeatureIncrivel)
  3. Adicione suas mudanças (git add .)
  4. Comite suas mudanças (git commit -m 'Adicionando uma Feature incrível!)
  5. Faça o Push da Branch (git push origin feature/FeatureIncrivel)
  6. Abra um Pull Request

Licença

Distribuído sob a licença MIT. Veja LICENSE para mais informações.

Contato

Gok - One Step Ahead - Github - [email protected]

About

Template para projetos de API´s com NodeJS com estrutura de pastas e as principais bibliotecas configuradas.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •