add convex

This commit is contained in:
Aman Varshney
2025-04-28 11:42:11 +05:30
parent 7ef3cfce9e
commit 2a5358a105
70 changed files with 2330 additions and 1139 deletions

View File

@@ -0,0 +1,51 @@
# prod
dist/
/build
/out/
# dev
.yarn/
!.yarn/patches
!.yarn/plugins
!.yarn/releases
!.yarn/versions
.vscode/*
!.vscode/launch.json
!.vscode/*.code-snippets
.idea/workspace.xml
.idea/usage.statistics.xml
.idea/shelf
.wrangler
/.next/
.vercel
# deps
node_modules/
/node_modules
/.pnp
.pnp.*
# env
.env*
.env.production
.dev.vars
# logs
logs/
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
lerna-debug.log*
# misc
.DS_Store
*.pem
# local db
*.db*
# typescript
*.tsbuildinfo
next-env.d.ts

View File

@@ -0,0 +1,18 @@
{
"name": "server",
"main": "src/index.ts",
"type": "module",
"scripts": {
"build": "tsc && tsc-alias",
"check-types": "tsc --noEmit",
"compile": "bun build --compile --minify --sourcemap --bytecode ./src/index.ts --outfile server"
},
"dependencies": {
"dotenv": "^16.4.7",
"zod": "^3.24.2"
},
"devDependencies": {
"tsc-alias": "^1.8.11",
"typescript": "^5.8.2"
}
}

View File

@@ -0,0 +1,52 @@
{{#if (eq api "orpc")}}
import { {{#if auth}}protectedProcedure, {{/if}}publicProcedure } from "../lib/orpc";
{{#if (includes examples "todo")}}
import { todoRouter } from "./todo";
{{/if}}
export const appRouter = {
healthCheck: publicProcedure.handler(() => {
return "OK";
}),
{{#if auth}}
privateData: protectedProcedure.handler(({ context }) => {
return {
message: "This is private",
user: context.session?.user,
};
}),
{{/if}}
{{#if (includes examples "todo")}}
todo: todoRouter,
{{/if}}
};
export type AppRouter = typeof appRouter;
{{/if}}
{{#if (eq api "trpc")}}
import {
{{#if auth}}protectedProcedure, {{/if}}publicProcedure,
router,
} from "../lib/trpc";
{{#if (includes examples "todo")}}
import { todoRouter } from "./todo";
{{/if}}
export const appRouter = router({
healthCheck: publicProcedure.query(() => {
return "OK";
}),
{{#if auth}}
privateData: protectedProcedure.query(({ ctx }) => {
return {
message: "This is private",
user: ctx.session.user,
};
}),
{{/if}}
{{#if (includes examples "todo")}}
todo: todoRouter,
{{/if}}
});
export type AppRouter = typeof appRouter;
{{/if}}

View File

@@ -0,0 +1,29 @@
{
"compilerOptions": {
"target": "ESNext",
"module": "ESNext",
"moduleResolution": "bundler",
"verbatimModuleSyntax": true,
"strict": true,
"skipLibCheck": true,
"baseUrl": "./",
"paths": {
"@/*": ["./src/*"]
},
"outDir": "./dist",
"types": [
{{#if (eq runtime 'node')}}
"node"
{{else if (eq runtime 'bun')}}
"bun"
{{else}}
"node", "bun"
{{/if}}
],
"jsx": "react-jsx"{{#if (eq backend 'hono')}},
"jsxImportSource": "hono/jsx"{{/if}}
},
"tsc-alias": {
"resolveFullPaths": true
}
}