Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions backend/.prettierignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
pnpm-lock.yaml
*.generated.*
db-data
drizzle
6 changes: 5 additions & 1 deletion backend/drizzle.config.ts
Original file line number Diff line number Diff line change
@@ -1,11 +1,15 @@
import "dotenv/config";
import { defineConfig } from "drizzle-kit";

if (!process.env.DATABASE_URL) {
throw new Error("DATABASE_URL environment variable is not set.");
}

export default defineConfig({
out: "./drizzle",
schema: "./src/db/schema/index.ts",
dialect: "postgresql",
dbCredentials: {
url: process.env.DATABASE_URL!,
url: process.env.DATABASE_URL,
},
});
32 changes: 32 additions & 0 deletions backend/eslint.config.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
import js from "@eslint/js";
import globals from "globals";
import tseslint from "typescript-eslint";
import { defineConfig, globalIgnores } from "eslint/config";

export default defineConfig([
globalIgnores(["**/dist/**", "**/*.generated.ts"]),
{
files: ["**/*.{js,mjs,cjs,ts,mts,cts}"],
plugins: { js },
extends: [
"js/recommended",
tseslint.configs.strictTypeChecked,
tseslint.configs.stylisticTypeChecked,
],
rules: {
// We assume that special states such as NaN, Infinity, and -Infinity are handled before displaying the number.
"@typescript-eslint/restrict-template-expressions": [
"error",
{
allowNumber: true,
},
],
},
languageOptions: {
globals: globals.node,
parserOptions: {
projectService: true,
},
},
},
]);
19 changes: 12 additions & 7 deletions backend/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,10 @@
"description": "",
"main": "dist/index.js",
"scripts": {
"prestart": "graphql-codegen",
"typecheck": "tsc",
"dev": "pnpm prestart && tsx watch src/index.ts",
"lint": "eslint .",
"codegen": "graphql-codegen",
"dev": "pnpm codegen && tsx watch src/index.ts",
"build": "esbuild src/index.ts --bundle --platform=node --format=esm --target=node24 --packages=external --outfile=dist/index.js",
"start": "pnpm build && node dist/index.js",
"db:init": "initdb -D db-data -U postgres -E UTF8 --auth=trust",
Expand Down Expand Up @@ -43,29 +44,33 @@
"dependencies": {
"@apollo/server": "^5.5.1",
"@as-integrations/express5": "^1.1.2",
"@better-auth/drizzle-adapter": "^1.7.12",
"@better-auth/drizzle-adapter": "^1.7.18",
"@graphql-tools/merge": "^9.2.8",
"better-auth": "^1.7.12",
"better-auth": "^1.7.18",
"cors": "^2.8.6",
"csv-parse": "^7.0.3",
"dataloader": "^2.2.3",
"dotenv": "^18.0.9",
"drizzle-orm": "1.0.0-rc.4",
"express": "^5.3.0",
"graphql": "^17.0.2",
"graphql": "^17.1.0",
"pg": "^8.23.1"
},
"devDependencies": {
"@eddeee888/gcg-typescript-resolver-files": "^0.19.0",
"@eslint/js": "^10.0.1",
"@graphql-codegen/cli": "^7.4.6",
"@types/cors": "^2.8.19",
"@types/express": "^5.0.6",
"@types/node": "^26.6.5",
"@types/node": "^26.6.6",
"@types/pg": "^8.23.1",
"drizzle-kit": "1.0.0-rc.4",
"esbuild": "0.28.2",
"eslint": "^10.14.0",
"globals": "^17.14.0",
"prettier": "3.9.9",
"tsx": "^4.23.15",
"typescript": "^7.0.2"
"typescript": "^6.0.3",
"typescript-eslint": "^8.72.1"
}
}
Loading