express-ts-emacuello
v1.0.2
Published
Plantilla para express con typescript by Emacuello
Downloads
5
Readme
Plantilla de Express con TypeScript
Esta es una plantilla básica de Express configurada para usar TypeScript, con algunas dependencias. La idea es que sea algo simple, como un punto de partida. ¿Por qué lo hice? Porque estar configurando siempre lo mismo en cada proyecto de Express me resultaba ineficiente. Como suelo usar NestJS, que con su CLI me facilita todo, cuando creo algo en Express necesitaba algo similar. La verdad, no sé si existe algo así, pero decidí hacerlo como práctica. ¡Espero que les guste!
Lo que incluye
- Cors
- Eslint
- Morgan
- Nodemon
- Ts-node
- Typescript
- Dotenv
- Express
- Joi
Instalaciones
Como instalarlo? Hay dos formas para hacerlo, la primera y mas sencilla es con un comando de NPX y luego la otra forma es clonando el repositorio.
Instalación 1:
npx express-ts-emacuello
- Seguir los pasos que te indica la terminal.
Instalación 2:
Clona el repositorio:
git clone https://github.com/emacuello/express-ts-template-emacuello
Navega al directorio del proyecto:
cd express-ts-template-emacuello
Instala las dependencias segun corresponda:
npm install
pnpm install
yarn install
Elimina la carpeta .git del directorio
rm -rf .git
Inicia un nuevo repositorio
git init
Scripts Disponibles
En el directorio del proyecto, puedes ejecutar:
npm start
Inicia el servidor con Nodemon. Utiliza ts-node
para la compilación y ejecución en caliente.
npm run build
Compila el proyecto TypeScript a JavaScript con TSC. Los archivos compilados se guardan en la carpeta dist
.
npm run lint
Inicia el linter de Eslint en busca de fallas en el codigo segun la configuracion establecida.
A tener en cuenta:
Las variables de entorno por defecto deberían ir en un archivo .env
. Si quieres usar otro nombre, deberías configurarlo en src/config/env.ts
.
Las variables se declaran en ese archivo y se usa Joi
para la validación de su existencia. Todas las variables que pasen por Joi
son imprescindibles en el proyecto y el servidor no se levantará si no las encuentra. Si no quieres esta opción, puedes hacer que no pasen por Joi
y exportarlas directamente.
import 'dotenv/config';
import * as joi from 'joi';
const PORT = process.env.PORT;