feat(ebitemp-api): init project + migration from nx (2)

This commit is contained in:
Francesco Spilla 2025-03-20 17:46:09 +01:00
parent f41c18c130
commit 193e643196
11 changed files with 14 additions and 47 deletions

0
.npmrc
View File

View File

@ -10,20 +10,6 @@ Run the following command:
npx create-turbo@latest npx create-turbo@latest
``` ```
## What's inside?
This Turborepo includes the following packages/apps:
### Apps and Packages
- `docs`: a [Next.js](https://nextjs.org/) app
- `web`: another [Next.js](https://nextjs.org/) app
- `@repo/ui`: a stub React component library shared by both `web` and `docs` applications
- `@repo/eslint-config`: `eslint` configurations (includes `eslint-config-next` and `eslint-config-prettier`)
- `@repo/typescript-config`: `tsconfig.json`s used throughout the monorepo
Each package/app is 100% [TypeScript](https://www.typescriptlang.org/).
### Utilities ### Utilities
This Turborepo has some additional tools already setup for you: This Turborepo has some additional tools already setup for you:

View File

@ -1,17 +1,14 @@
// @ts-check import baseConfig from '@repo/eslint-config/base';
import eslint from '@eslint/js';
import eslintPluginPrettierRecommended from 'eslint-plugin-prettier/recommended';
import globals from 'globals'; import globals from 'globals';
import tseslint from 'typescript-eslint'; import tseslint from 'typescript-eslint';
export default tseslint.config( export default tseslint.config(
...baseConfig,
{ {
ignores: ['eslint.config.mjs'], ignores: ['eslint.config.mjs'],
}, },
eslint.configs.recommended,
...tseslint.configs.recommendedTypeChecked,
eslintPluginPrettierRecommended,
{ {
extends: [tseslint.configs.recommendedTypeCheckedOnly],
languageOptions: { languageOptions: {
globals: { globals: {
...globals.node, ...globals.node,

View File

@ -3,7 +3,6 @@
"private": true, "private": true,
"scripts": { "scripts": {
"build": "nest build", "build": "nest build",
"format": "prettier --list-different --write \"src/**/*.ts\" \"test/**/*.ts\"",
"dev": "nest start --debug --watch", "dev": "nest start --debug --watch",
"start:prod": "node dist/main", "start:prod": "node dist/main",
"lint": "eslint \"{src,apps,libs,test}/**/*.ts\" --fix", "lint": "eslint \"{src,apps,libs,test}/**/*.ts\" --fix",
@ -78,7 +77,6 @@
"globals": "^16.0.0", "globals": "^16.0.0",
"jest": "^29.7.0", "jest": "^29.7.0",
"mssql": "^11.0.1", "mssql": "^11.0.1",
"prettier": "^3.4.2",
"source-map-support": "^0.5.21", "source-map-support": "^0.5.21",
"supertest": "^7.0.0", "supertest": "^7.0.0",
"ts-jest": "^29.2.5", "ts-jest": "^29.2.5",

View File

@ -1,21 +1,13 @@
{ {
"extends": "@repo/typescript-config/base.json", "extends": "@repo/typescript-config/base.json",
"compilerOptions": { "compilerOptions": {
"declaration": true,
"removeComments": true, "removeComments": true,
"emitDecoratorMetadata": true, "emitDecoratorMetadata": true,
"experimentalDecorators": true, "experimentalDecorators": true,
"allowSyntheticDefaultImports": true, "allowSyntheticDefaultImports": true,
"target": "ES2023",
"sourceMap": true, "sourceMap": true,
"outDir": "./dist", "outDir": "./dist",
"baseUrl": "./", "baseUrl": "./",
"incremental": true, "incremental": true
"skipLibCheck": true,
"strictNullChecks": true,
"forceConsistentCasingInFileNames": true,
"noImplicitAny": false,
"strictBindCallApply": false,
"noFallthroughCasesInSwitch": false
} }
} }

View File

@ -5,7 +5,7 @@
"build": "turbo run build", "build": "turbo run build",
"dev": "turbo run dev", "dev": "turbo run dev",
"lint": "turbo run lint", "lint": "turbo run lint",
"format": "prettier --write \"**/*.{ts,tsx,md}\"", "format": "prettier --list-different --write \"**/*.{ts,tsx,md}\"",
"check-types": "turbo run check-types" "check-types": "turbo run check-types"
}, },
"devDependencies": { "devDependencies": {

View File

@ -1,18 +1,15 @@
import js from "@eslint/js"; import js from "@eslint/js";
import eslintConfigPrettier from "eslint-config-prettier"; import eslintConfigPrettier from "eslint-config-prettier";
import eslintPluginPrettierRecommended from 'eslint-plugin-prettier/recommended';
import onlyWarn from "eslint-plugin-only-warn";
import turboPlugin from "eslint-plugin-turbo"; import turboPlugin from "eslint-plugin-turbo";
import tseslint from "typescript-eslint"; import tseslint from "typescript-eslint";
import onlyWarn from "eslint-plugin-only-warn";
/** export default tseslint.config(
* A shared ESLint configuration for the repository.
*
* @type {import("eslint").Linter.Config[]}
* */
export const config = [
js.configs.recommended, js.configs.recommended,
eslintConfigPrettier,
...tseslint.configs.recommended, ...tseslint.configs.recommended,
eslintConfigPrettier,
eslintPluginPrettierRecommended,
{ {
plugins: { plugins: {
turbo: turboPlugin, turbo: turboPlugin,
@ -28,5 +25,5 @@ export const config = [
}, },
{ {
ignores: ["dist/**"], ignores: ["dist/**"],
}, }
]; );

View File

@ -4,7 +4,7 @@
"type": "module", "type": "module",
"private": true, "private": true,
"exports": { "exports": {
"./base": "./base.js" "./base": "./base.mjs"
}, },
"devDependencies": { "devDependencies": {
"@eslint/js": "^9.22.0", "@eslint/js": "^9.22.0",

View File

@ -14,6 +14,6 @@
"resolveJsonModule": true, "resolveJsonModule": true,
"skipLibCheck": true, "skipLibCheck": true,
"strict": true, "strict": true,
"target": "ES2022" "target": "ES2023"
} }
} }

3
pnpm-lock.yaml generated
View File

@ -210,9 +210,6 @@ importers:
mssql: mssql:
specifier: ^11.0.1 specifier: ^11.0.1
version: 11.0.1 version: 11.0.1
prettier:
specifier: ^3.4.2
version: 3.5.3
source-map-support: source-map-support:
specifier: ^0.5.21 specifier: ^0.5.21
version: 0.5.21 version: 0.5.21