TypeScript e produção
Tenho duvidas em TS de como colocar meu projeto em produção, sei que após eu fazer toda parte do desenvolvimento por exemplo usando tsx, eu devo buildar usando tsc, mas após ele criar a pasta dist como esperado pelo OutDir, eu nao sei mais o que fazer, tipo quais arquivos subir para uma hospedagem, se é pra subir o ts ou só a pasta dist, o que configurar, como saber o que enviar e outras duvidas sobre produção que nao entendo
Depende muito da forma que você quer fazer. Mas acredito que uma forma simple de entender no início é fazer da seguinte forma:
- Pegue uma VM no GCP ou AWS (gratuita mesmo)
- Instale Apache ou Nginx
- Pegue algum tutorial de como configurar um proxy reverso
- Clone o seu repositório na pasta var/www
- Rode seu comando de build
- Instale PM2 para rodar o seu index.js
- Aponte o proxy reverso para o processo do PM2
- Você agora vai conseguir acessar sua API ou Front pelo seu domínio!
Claro que existem várias dificuldades e configurações no meio (além da alta chance de ter alguns erros aqui e ali), mas essencialmente você consegue fazer o deploy de uma aplicação dessa forma.
Esse modo fica fácil para entender cada etapa do processo, mas não recomendo fazer isso em ambiente de produção.
Depende do que você está falando. É um backend ou um frontend? Está usando algum framework específico?
Pois se for apenas um frontend, você pode usar um AWS S3 para hospedar os arquivos por exemplo e servir em um domínio específico.
Depois que vc builda é tudo javascript. Então nao precisa se preocupar com TS a nivel de produção.
Quanto ao nao sei o que fazer, depende do projeto, se for front qualquer servidor web básico vc consegue. Se for back você precia de um servidor node
Dá uma olhada no site render.com, é a melhor forma de você começar a entender! De um modo geral, o render.com (existem outros) irá se conectar no seu projeto pelo github, então cada vez que você fizer um push, o próprio render.com irá buildar o projeto. Ou seja, nao é você que builda o projeto e sobe os arquivos, é o servidor.
Quando você cria o projeto no render.com, tem uma parte que você seleciona qual o comando para buildar o projeto e qual o comando para iniciar:
A partir dali, seu projeto estará configurado