https://github.com/codeedu/typescript-node-starter
https://github.com/codeedu/typescript-node-starter
Last synced: 11 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/codeedu/typescript-node-starter
- Owner: codeedu
- Created: 2020-06-10T13:47:46.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2023-03-04T23:34:36.000Z (about 3 years ago)
- Last Synced: 2025-04-17T10:25:13.000Z (11 months ago)
- Language: JavaScript
- Size: 422 KB
- Stars: 7
- Watchers: 4
- Forks: 8
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## Descrição
Projeto Back-end para se começar com TypeScript de forma produtiva.
## Motivação
O entendimento do que é o TypeScript é simples, todos sabemos que é uma linguagem de programação com tipagem
para dar outra dinâmica a programação JavaScript.
Instalar o TypeScript e roda-lo em cima de scripts .ts também é simples.
Porém, na hora de criar aplicações com Node.js a história pode ser um pouco diferente.
Temos inicialmente dois problemas:
* Qual sistema de módulos utilizar para carregar os arquivos JavaScript?
* Como organizar o esqueleto do projeto para permitir separar a separação do TypeScript de desenvolvimento e JavaScript de produção?
* Como organizar o ambiente de desenvolvimento para usar diretamente o TypeScript?
Hoje com o Node.js fica bem mais simples trabalhar com módulos, já que ele suporta não só CommonJS, mas também ES6 Modules de forma nativa e isto é facilmente configurável no TypeScript, mas é necessário organizar as configurações no projeto.
Hoje também é possível trabalhar com TypeScript diretamente no desenvolvimento sem a necessidade de
compilar para JavaScript a cada modificação, então podemos executar a aplicação TypeScript com Node,
mas é necessário organizar as configurações no projeto.
Este pacote é uma forma produtiva de se começar com TypeScript com Node.js.
## Instalação
* Node.js
* Faça o clone do projeto
* Execute o comando ```npm install```
## Rodar o projeto
* ```npm start``` - Executa a aplicação com ts-node e roda um servidor em http://localhost:3000 para testar o projeto.
* ```npm run build``` - Compila o TypeScript em modo produção.
* ```npm run prod``` - Levanta a aplicação JavaScript com Node compilada pelo npm run build.
* ```npm run ts-node``` - Execute o ts-node. Ferramenta para executar o TypeScript com Node, é possível abrir um console e testar expressões como executar diretamente arquivos TypeScript
## Apêndice
No branch **using_webpack** há um exemplo de como desenvolver esta aplicação criando um front-end
também com TypeScript. A configuração do front-end foi baseada no repositório [https://github.com/codeedu/typescript-starter](https://github.com/codeedu/typescript-starter).
O frontend está embutido neste projeto, mas poderíamos também organizar o projeto em duas pastas:
```
- backend
- frontend
```
### Rodar o projeto
* ```npm run frontend-dev``` - Compila o TypeScript em modo desenvolvimento.
* ```npm run frontend-watch``` - Compila o TypeScript em modo desenvolvimento usando modo watch.
* ```npm run frontend-prod``` - Compila o TypeScript em modo produção.
