diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..9099563 --- /dev/null +++ b/.env.example @@ -0,0 +1,3 @@ +WEB_PORT=5173 +API_PORT=3000 +DATABASE_URL=postgres://postgres:postgres@localhost:5432/zeavis_edu diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..6af0e4c --- /dev/null +++ b/.gitignore @@ -0,0 +1,13 @@ +node_modules/ +.bun/ +.moon/cache/ +.env +.env.* +!.env.example + +dist/ +build/ +coverage/ +*.tsbuildinfo + +.DS_Store diff --git a/.moon/toolchain.yml b/.moon/toolchain.yml new file mode 100644 index 0000000..ecbe5a4 --- /dev/null +++ b/.moon/toolchain.yml @@ -0,0 +1,2 @@ +node: + packageManager: bun diff --git a/.moon/workspace.yml b/.moon/workspace.yml new file mode 100644 index 0000000..09951dc --- /dev/null +++ b/.moon/workspace.yml @@ -0,0 +1,4 @@ +projects: + web: apps/web + api: apps/api + shared: packages/shared diff --git a/bunfig.toml b/bunfig.toml new file mode 100644 index 0000000..b6874be --- /dev/null +++ b/bunfig.toml @@ -0,0 +1,2 @@ +[install] +exact = true diff --git a/package.json b/package.json new file mode 100644 index 0000000..99f05bd --- /dev/null +++ b/package.json @@ -0,0 +1,18 @@ +{ + "name": "zeavis-edu", + "private": true, + "packageManager": "bun@1.1.42", + "workspaces": [ + "apps/*", + "packages/*" + ], + "scripts": { + "dev": "moon run :dev", + "build": "moon run :build", + "typecheck": "moon run :typecheck" + }, + "devDependencies": { + "@moonrepo/cli": "^1.32.4", + "typescript": "^5.6.3" + } +} diff --git a/tsconfig.base.json b/tsconfig.base.json new file mode 100644 index 0000000..c4fc7d8 --- /dev/null +++ b/tsconfig.base.json @@ -0,0 +1,24 @@ +{ + "compilerOptions": { + "target": "ES2022", + "useDefineForClassFields": true, + "lib": ["ES2022", "DOM", "DOM.Iterable"], + "allowJs": false, + "skipLibCheck": true, + "esModuleInterop": true, + "allowSyntheticDefaultImports": true, + "strict": true, + "forceConsistentCasingInFileNames": true, + "module": "ESNext", + "moduleResolution": "Bundler", + "resolveJsonModule": true, + "isolatedModules": true, + "noEmit": true, + "jsx": "react-jsx", + "baseUrl": ".", + "paths": { + "@zeavis/shared": ["packages/shared/src/index.ts"], + "@zeavis/shared/*": ["packages/shared/src/*"] + } + } +}