When developping websites or backend applications, we use Node js. You can download Node js on their [official website](https://nodejs.org/en).
### Package Manager
Node js dependencies are managed using a package manager (npm, yarn, pnpm...). The default package manager is `npm`.
It comes bundled with Node js.
### Why use (or not) typescript ?
TypeScript is a strongly typed superset of JavaScript. It is recommended to ALWAYS use TypeScript for medium to large projects, especially if multiple developers will be working on it.
However, for small html-css websites, using small JavaScript files may be the better option.
### How to initialize projects
This repo contains an example setup for a node js application. However, if you want to create a website or a node js application using specific frameworks, you may instead initialize your project using one of the following commands :
#### Websites
```bash
npm create vite@latest my-react-website ----template react-ts # Create a vanilla React app using Typescript
npx create-next-app@latest # Create a Next js website. Be sure to use Typescript and ESLint in the given options !
npm create svelte@latest my-app # Create a Svelte app. Be sure to use Typescript, ESLint and Prettier in the given options !
```
#### Node js applications
```bash
npm i -g @nestjs/cli && nest new my-backend-app # Create a Nest js backend application