create-better-t-stack 1.13.2 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +95 -197
- package/package.json +72 -69
- package/templates/api/orpc/server/base/src/lib/context.ts.hbs +105 -0
- package/templates/api/orpc/server/base/src/lib/orpc.ts.hbs +17 -0
- package/templates/api/orpc/server/next/src/app/rpc/[...all]/route.ts.hbs +23 -0
- package/templates/api/orpc/web/base/src/utils/orpc.ts.hbs +57 -0
- package/templates/api/trpc/server/base/src/lib/context.ts.hbs +108 -0
- package/{template/with-auth/apps/server/src/lib/trpc.ts → templates/api/trpc/server/base/src/lib/trpc.ts.hbs} +2 -0
- package/templates/api/trpc/web/base/src/utils/trpc.ts.hbs +100 -0
- package/templates/auth/server/base/src/lib/auth.ts.hbs +30 -0
- package/templates/auth/web/base/src/lib/auth-client.ts.hbs +10 -0
- package/{template/with-auth/apps/web-next/src/app/dashboard/page.tsx → templates/auth/web/next/src/app/dashboard/page.tsx.hbs} +10 -0
- package/{template/with-auth/apps/web-react-router/src/routes/dashboard.tsx → templates/auth/web/react-router/src/routes/dashboard.tsx.hbs} +10 -0
- package/{template/with-auth/apps/web-tanstack-router/src/routes/dashboard.tsx → templates/auth/web/tanstack-router/src/routes/dashboard.tsx.hbs} +10 -0
- package/{template/with-auth/apps/web-tanstack-start/src/routes/dashboard.tsx → templates/auth/web/tanstack-start/src/routes/dashboard.tsx.hbs} +15 -0
- package/{template/with-auth/apps/server/src/with-elysia-index.ts → templates/backend/elysia/src/index.ts.hbs} +38 -3
- package/templates/backend/express/src/index.ts.hbs +78 -0
- package/templates/backend/hono/src/index.ts.hbs +105 -0
- package/{template/with-next/apps/server → templates/backend/next}/package.json +0 -2
- package/{template/base/apps/server → templates/backend/server-base}/package.json +0 -1
- package/templates/backend/server-base/src/routers/index.ts.hbs +51 -0
- package/templates/base/package.json +10 -0
- package/templates/examples/todo/server/drizzle/base/src/routers/todo.ts.hbs +79 -0
- package/{template/with-drizzle-sqlite/apps/server → templates/examples/todo/server/drizzle/sqlite}/src/db/schema/todo.ts +2 -2
- package/{template/examples/todo/apps/web-react-router/src/routes/todos.tsx → templates/examples/todo/web/react-router/src/routes/todos.tsx.hbs} +28 -0
- package/{template/examples/todo/apps/web-tanstack-router/src/routes/todos.tsx → templates/examples/todo/web/tanstack-router/src/routes/todos.tsx.hbs} +28 -0
- package/{template/examples/todo/apps/web-tanstack-start/src/routes/todos.tsx → templates/examples/todo/web/tanstack-start/src/routes/todos.tsx.hbs} +33 -0
- package/{template/base/apps/web-next → templates/frontend/next}/package.json +0 -2
- package/{template/base/apps/web-next/src/app/page.tsx → templates/frontend/next/src/app/page.tsx.hbs} +10 -0
- package/{template/base/apps/web-next/src/components/providers.tsx → templates/frontend/next/src/components/providers.tsx.hbs} +12 -0
- package/{template/base/apps/web-react-router → templates/frontend/react-router}/package.json +0 -3
- package/{template/base/apps/web-react-router/src/root.tsx → templates/frontend/react-router/src/root.tsx.hbs} +28 -1
- package/{template/base/apps/web-react-router/src/routes/_index.tsx → templates/frontend/react-router/src/routes/_index.tsx.hbs} +11 -0
- package/templates/frontend/react-router/vite.config.ts.hbs +37 -0
- package/{template/base/apps/web-tanstack-router → templates/frontend/tanstack-router}/package.json +0 -4
- package/{template/base/apps/web-tanstack-router/src/main.tsx → templates/frontend/tanstack-router/src/main.tsx.hbs} +20 -0
- package/{template/base/apps/web-tanstack-router/src/routes/__root.tsx → templates/frontend/tanstack-router/src/routes/__root.tsx.hbs} +48 -0
- package/{template/base/apps/web-tanstack-router/src/routes/index.tsx → templates/frontend/tanstack-router/src/routes/index.tsx.hbs} +10 -0
- package/templates/frontend/tanstack-router/vite.config.ts.hbs +43 -0
- package/{template/base/apps/web-tanstack-start → templates/frontend/tanstack-start}/package.json +0 -3
- package/{template/with-auth/apps/web-tanstack-start/src/router.tsx → templates/frontend/tanstack-start/src/router.tsx.hbs} +29 -3
- package/{template/base/apps/web-tanstack-start/src/routes/__root.tsx → templates/frontend/tanstack-start/src/routes/__root.tsx.hbs} +13 -0
- package/{template/base/apps/web-tanstack-start/src/routes/index.tsx → templates/frontend/tanstack-start/src/routes/index.tsx.hbs} +11 -0
- package/templates/frontend/web-base/src/components/header.tsx.hbs +80 -0
- package/template/base/apps/server/src/lib/trpc.ts +0 -8
- package/template/base/apps/server/src/routers/index.ts +0 -11
- package/template/base/apps/web-base/src/utils/trpc.ts +0 -33
- package/template/base/apps/web-next/src/components/header.tsx +0 -30
- package/template/base/apps/web-next/src/utils/trpc.ts +0 -33
- package/template/base/apps/web-react-router/src/components/header.tsx +0 -31
- package/template/base/apps/web-react-router/vite.config.ts +0 -8
- package/template/base/apps/web-tanstack-router/src/components/header.tsx +0 -31
- package/template/base/apps/web-tanstack-router/vite.config.ts +0 -14
- package/template/base/apps/web-tanstack-start/src/components/header.tsx +0 -27
- package/template/base/apps/web-tanstack-start/src/router.tsx +0 -70
- package/template/base/apps/web-tanstack-start/src/utils/trpc.ts +0 -5
- package/template/base/package.json +0 -18
- package/template/examples/todo/apps/server/src/routers/with-drizzle-todo.ts +0 -34
- package/template/with-auth/apps/server/src/lib/with-elysia-context.ts +0 -18
- package/template/with-auth/apps/server/src/lib/with-express-context.ts +0 -14
- package/template/with-auth/apps/server/src/lib/with-hono-context.ts +0 -18
- package/template/with-auth/apps/server/src/lib/with-next-context.ts +0 -14
- package/template/with-auth/apps/server/src/routers/index.ts +0 -17
- package/template/with-auth/apps/server/src/with-drizzle-mysql-lib/auth.ts +0 -15
- package/template/with-auth/apps/server/src/with-drizzle-postgres-lib/auth.ts +0 -15
- package/template/with-auth/apps/server/src/with-drizzle-sqlite-lib/auth.ts +0 -15
- package/template/with-auth/apps/server/src/with-express-index.ts +0 -34
- package/template/with-auth/apps/server/src/with-hono-index.ts +0 -39
- package/template/with-auth/apps/server/src/with-prisma-mongodb-lib/auth.ts +0 -11
- package/template/with-auth/apps/server/src/with-prisma-mysql-lib/auth.ts +0 -11
- package/template/with-auth/apps/server/src/with-prisma-postgres-lib/auth.ts +0 -11
- package/template/with-auth/apps/server/src/with-prisma-sqlite-lib/auth.ts +0 -11
- package/template/with-auth/apps/web-base/src/lib/auth-client.ts +0 -5
- package/template/with-auth/apps/web-next/src/components/header.tsx +0 -33
- package/template/with-auth/apps/web-next/src/lib/auth-client.ts +0 -5
- package/template/with-auth/apps/web-next/src/utils/trpc.ts +0 -39
- package/template/with-auth/apps/web-react-router/src/components/header.tsx +0 -34
- package/template/with-auth/apps/web-react-router/src/utils/trpc.ts +0 -39
- package/template/with-auth/apps/web-tanstack-router/src/components/header.tsx +0 -34
- package/template/with-auth/apps/web-tanstack-router/src/utils/trpc.ts +0 -39
- package/template/with-auth/apps/web-tanstack-start/src/components/header.tsx +0 -32
- package/template/with-elysia/apps/server/src/index.ts +0 -27
- package/template/with-elysia/apps/server/src/lib/context.ts +0 -13
- package/template/with-express/apps/server/src/index.ts +0 -29
- package/template/with-express/apps/server/src/lib/context.ts +0 -9
- package/template/with-hono/apps/server/src/index.ts +0 -33
- package/template/with-hono/apps/server/src/lib/context.ts +0 -13
- package/template/with-next/apps/server/src/lib/context.ts +0 -9
- /package/{template/with-biome → templates/addons/biome}/biome.json +0 -0
- /package/{template/with-husky → templates/addons/husky}/.husky/pre-commit +0 -0
- /package/{template/with-pwa → templates/addons/pwa}/apps/web/public/logo.png +0 -0
- /package/{template/with-pwa → templates/addons/pwa}/apps/web/pwa-assets.config.ts +0 -0
- /package/{template/base → templates/addons/turborepo}/turbo.json +0 -0
- /package/{template/with-next/apps/server → templates/api/trpc/server/next}/src/app/trpc/[trpc]/route.ts +0 -0
- /package/{template/with-auth/apps → templates/auth}/native/app/(drawer)/index.tsx +0 -0
- /package/{template/with-auth/apps → templates/auth}/native/components/sign-in.tsx +0 -0
- /package/{template/with-auth/apps → templates/auth}/native/components/sign-up.tsx +0 -0
- /package/{template/with-auth/apps → templates/auth}/native/lib/auth-client.ts +0 -0
- /package/{template/with-auth/apps → templates/auth}/native/utils/trpc.ts +0 -0
- /package/{template/with-drizzle-mysql/apps/server → templates/auth/server/db/drizzle/mysql}/src/db/schema/auth.ts +0 -0
- /package/{template/with-drizzle-postgres/apps/server → templates/auth/server/db/drizzle/postgres}/src/db/schema/auth.ts +0 -0
- /package/{template/with-drizzle-sqlite/apps/server → templates/auth/server/db/drizzle/sqlite}/src/db/schema/auth.ts +0 -0
- /package/{template/with-prisma-sqlite/apps/server → templates/auth/server/db/prisma/mongodb}/prisma/schema/auth.prisma +0 -0
- /package/{template/with-prisma-mysql/apps/server → templates/auth/server/db/prisma/mysql}/prisma/schema/auth.prisma +0 -0
- /package/{template/with-prisma-postgres/apps/server → templates/auth/server/db/prisma/postgres}/prisma/schema/auth.prisma +0 -0
- /package/{template/with-prisma-mongodb/apps/server → templates/auth/server/db/prisma/sqlite}/prisma/schema/auth.prisma +0 -0
- /package/{template/with-auth/apps/server/src/with-next-app → templates/auth/server/next/src/app}/api/auth/[...all]/route.ts +0 -0
- /package/{template/with-auth/apps/web-next → templates/auth/web/next}/src/app/login/page.tsx +0 -0
- /package/{template/with-auth/apps/web-next → templates/auth/web/next}/src/components/sign-in-form.tsx +0 -0
- /package/{template/with-auth/apps/web-next → templates/auth/web/next}/src/components/sign-up-form.tsx +0 -0
- /package/{template/with-auth/apps/web-next → templates/auth/web/next}/src/components/theme-provider.tsx +0 -0
- /package/{template/with-auth/apps/web-next → templates/auth/web/next}/src/components/user-menu.tsx +0 -0
- /package/{template/with-auth/apps/web-react-router → templates/auth/web/react-router}/src/components/sign-in-form.tsx +0 -0
- /package/{template/with-auth/apps/web-react-router → templates/auth/web/react-router}/src/components/sign-up-form.tsx +0 -0
- /package/{template/with-auth/apps/web-react-router → templates/auth/web/react-router}/src/components/user-menu.tsx +0 -0
- /package/{template/with-auth/apps/web-react-router → templates/auth/web/react-router}/src/routes/login.tsx +0 -0
- /package/{template/with-auth/apps/web-tanstack-start → templates/auth/web/tanstack-router}/src/components/sign-in-form.tsx +0 -0
- /package/{template/with-auth/apps/web-tanstack-start → templates/auth/web/tanstack-router}/src/components/sign-up-form.tsx +0 -0
- /package/{template/with-auth/apps/web-tanstack-start → templates/auth/web/tanstack-router}/src/components/user-menu.tsx +0 -0
- /package/{template/with-auth/apps/web-tanstack-start → templates/auth/web/tanstack-router}/src/routes/login.tsx +0 -0
- /package/{template/with-auth/apps/web-tanstack-router → templates/auth/web/tanstack-start}/src/components/sign-in-form.tsx +0 -0
- /package/{template/with-auth/apps/web-tanstack-router → templates/auth/web/tanstack-start}/src/components/sign-up-form.tsx +0 -0
- /package/{template/with-auth/apps/web-tanstack-router → templates/auth/web/tanstack-start}/src/components/user-menu.tsx +0 -0
- /package/{template/with-auth/apps/web-tanstack-router → templates/auth/web/tanstack-start}/src/routes/login.tsx +0 -0
- /package/{template/with-next/apps/server → templates/backend/next}/next-env.d.ts +0 -0
- /package/{template/with-next/apps/server → templates/backend/next}/next.config.ts +0 -0
- /package/{template/with-next/apps/server → templates/backend/next}/src/app/route.ts +0 -0
- /package/{template/with-next/apps/server → templates/backend/next}/src/middleware.ts +0 -0
- /package/{template/with-next/apps/server → templates/backend/next}/tsconfig.json +0 -0
- /package/{template/base/apps/server → templates/backend/server-base}/_gitignore +0 -0
- /package/{template/base/apps/server → templates/backend/server-base}/tsconfig.json +0 -0
- /package/{template → templates}/base/_gitignore +0 -0
- /package/{template/with-drizzle-mysql/apps/server → templates/db/drizzle/mysql}/drizzle.config.ts +0 -0
- /package/{template/with-drizzle-mysql/apps/server → templates/db/drizzle/mysql}/src/db/index.ts +0 -0
- /package/{template/with-drizzle-postgres/apps/server → templates/db/drizzle/postgres}/drizzle.config.ts +0 -0
- /package/{template/with-drizzle-postgres/apps/server → templates/db/drizzle/postgres}/src/db/index.ts +0 -0
- /package/{template/with-drizzle-sqlite/apps/server → templates/db/drizzle/sqlite}/drizzle.config.ts +0 -0
- /package/{template/with-drizzle-sqlite/apps/server → templates/db/drizzle/sqlite}/src/db/index.ts +0 -0
- /package/{template/with-prisma-sqlite/apps/server → templates/db/prisma/mongodb}/prisma/index.ts +0 -0
- /package/{template/with-prisma-mongodb/apps/server → templates/db/prisma/mongodb}/prisma/schema/schema.prisma +0 -0
- /package/{template/with-prisma-postgres/apps/server → templates/db/prisma/mysql}/prisma/index.ts +0 -0
- /package/{template/with-prisma-mysql/apps/server → templates/db/prisma/mysql}/prisma/schema/schema.prisma +0 -0
- /package/{template/with-prisma-mysql/apps/server → templates/db/prisma/postgres}/prisma/index.ts +0 -0
- /package/{template/with-prisma-postgres/apps/server → templates/db/prisma/postgres}/prisma/schema/schema.prisma +0 -0
- /package/{template/with-prisma-mongodb/apps/server → templates/db/prisma/sqlite}/prisma/index.ts +0 -0
- /package/{template/with-prisma-sqlite/apps/server → templates/db/prisma/sqlite}/prisma/schema/schema.prisma +0 -0
- /package/{template/examples/ai/apps/web-react-router → templates/examples/ai/apps/react-router}/src/routes/ai.tsx +0 -0
- /package/{template/examples/ai/apps/web-tanstack-start → templates/examples/ai/apps/tanstack-router}/src/routes/ai.tsx +0 -0
- /package/{template/examples/ai/apps/web-tanstack-router → templates/examples/ai/apps/tanstack-start}/src/routes/ai.tsx +0 -0
- /package/{template/with-drizzle-mysql/apps/server → templates/examples/todo/server/drizzle/mysql}/src/db/schema/todo.ts +0 -0
- /package/{template/with-drizzle-postgres/apps/server → templates/examples/todo/server/drizzle/postgres}/src/db/schema/todo.ts +0 -0
- /package/{template/examples/todo/apps/server/src/routers/with-prisma-todo.ts → templates/examples/todo/server/prisma/base/trpc/src/routers/todo.ts} +0 -0
- /package/{template/with-prisma-mongodb/apps/server → templates/examples/todo/server/prisma/mongodb}/prisma/schema/todo.prisma +0 -0
- /package/{template/with-prisma-sqlite/apps/server → templates/examples/todo/server/prisma/mysql}/prisma/schema/todo.prisma +0 -0
- /package/{template/with-prisma-postgres/apps/server → templates/examples/todo/server/prisma/postgres}/prisma/schema/todo.prisma +0 -0
- /package/{template/with-prisma-mysql/apps/server → templates/examples/todo/server/prisma/sqlite}/prisma/schema/todo.prisma +0 -0
- /package/{template/with-pnpm → templates/extras}/pnpm-workspace.yaml +0 -0
- /package/{template/base/apps → templates/frontend}/native/_gitignore +0 -0
- /package/{template/base/apps → templates/frontend}/native/app/(drawer)/(tabs)/_layout.tsx +0 -0
- /package/{template/base/apps → templates/frontend}/native/app/(drawer)/(tabs)/index.tsx +0 -0
- /package/{template/base/apps → templates/frontend}/native/app/(drawer)/(tabs)/two.tsx +0 -0
- /package/{template/base/apps → templates/frontend}/native/app/(drawer)/_layout.tsx +0 -0
- /package/{template/base/apps → templates/frontend}/native/app/(drawer)/index.tsx +0 -0
- /package/{template/base/apps → templates/frontend}/native/app/+html.tsx +0 -0
- /package/{template/base/apps → templates/frontend}/native/app/+not-found.tsx +0 -0
- /package/{template/base/apps → templates/frontend}/native/app/_layout.tsx +0 -0
- /package/{template/base/apps → templates/frontend}/native/app/modal.tsx +0 -0
- /package/{template/base/apps → templates/frontend}/native/app-env.d.ts +0 -0
- /package/{template/base/apps → templates/frontend}/native/app.json +0 -0
- /package/{template/base/apps → templates/frontend}/native/assets/adaptive-icon.png +0 -0
- /package/{template/base/apps → templates/frontend}/native/assets/favicon.png +0 -0
- /package/{template/base/apps → templates/frontend}/native/assets/icon.png +0 -0
- /package/{template/base/apps → templates/frontend}/native/assets/splash.png +0 -0
- /package/{template/base/apps → templates/frontend}/native/babel.config.js +0 -0
- /package/{template/base/apps → templates/frontend}/native/components/container.tsx +0 -0
- /package/{template/base/apps → templates/frontend}/native/components/header-button.tsx +0 -0
- /package/{template/base/apps → templates/frontend}/native/components/tabbar-icon.tsx +0 -0
- /package/{template/base/apps → templates/frontend}/native/global.css +0 -0
- /package/{template/base/apps → templates/frontend}/native/lib/android-navigation-bar.tsx +0 -0
- /package/{template/base/apps → templates/frontend}/native/lib/constants.ts +0 -0
- /package/{template/base/apps → templates/frontend}/native/lib/use-color-scheme.ts +0 -0
- /package/{template/base/apps → templates/frontend}/native/metro.config.js +0 -0
- /package/{template/base/apps → templates/frontend}/native/package.json +0 -0
- /package/{template/base/apps → templates/frontend}/native/tailwind.config.js +0 -0
- /package/{template/base/apps → templates/frontend}/native/tsconfig.json +0 -0
- /package/{template/base/apps → templates/frontend}/native/utils/trpc.ts +0 -0
- /package/{template/base/apps/web-next → templates/frontend/next}/next-env.d.ts +0 -0
- /package/{template/base/apps/web-next → templates/frontend/next}/next.config.ts +0 -0
- /package/{template/base/apps/web-next → templates/frontend/next}/postcss.config.mjs +0 -0
- /package/{template/base/apps/web-next → templates/frontend/next}/src/app/favicon.ico +0 -0
- /package/{template/base/apps/web-next → templates/frontend/next}/src/app/layout.tsx +0 -0
- /package/{template/base/apps/web-next → templates/frontend/next}/src/components/mode-toggle.tsx +0 -0
- /package/{template/base/apps/web-next → templates/frontend/next}/src/components/theme-provider.tsx +0 -0
- /package/{template/base/apps/web-next → templates/frontend/next}/tsconfig.json +0 -0
- /package/{template/base/apps/web-react-router → templates/frontend/react-router}/public/favicon.ico +0 -0
- /package/{template/base/apps/web-react-router → templates/frontend/react-router}/react-router.config.ts +0 -0
- /package/{template/base/apps/web-tanstack-router → templates/frontend/react-router}/src/components/mode-toggle.tsx +0 -0
- /package/{template/base/apps/web-tanstack-router → templates/frontend/react-router}/src/components/theme-provider.tsx +0 -0
- /package/{template/base/apps/web-react-router → templates/frontend/react-router}/src/routes.ts +0 -0
- /package/{template/base/apps/web-react-router → templates/frontend/react-router}/tsconfig.json +0 -0
- /package/{template/base/apps/web-tanstack-router → templates/frontend/tanstack-router}/index.html +0 -0
- /package/{template/base/apps/web-react-router → templates/frontend/tanstack-router}/src/components/mode-toggle.tsx +0 -0
- /package/{template/base/apps/web-react-router → templates/frontend/tanstack-router}/src/components/theme-provider.tsx +0 -0
- /package/{template/base/apps/web-tanstack-router → templates/frontend/tanstack-router}/tsconfig.json +0 -0
- /package/{template/base/apps/web-tanstack-start → templates/frontend/tanstack-start}/app.config.ts +0 -0
- /package/{template/base/apps/web-tanstack-start → templates/frontend/tanstack-start}/public/robots.txt +0 -0
- /package/{template/base/apps/web-tanstack-start → templates/frontend/tanstack-start}/src/api.ts +0 -0
- /package/{template/base/apps/web-tanstack-start → templates/frontend/tanstack-start}/src/client.tsx +0 -0
- /package/{template/base/apps/web-tanstack-start → templates/frontend/tanstack-start}/src/ssr.tsx +0 -0
- /package/{template/base/apps/web-tanstack-start → templates/frontend/tanstack-start}/tsconfig.json +0 -0
- /package/{template/base/apps → templates/frontend}/web-base/_gitignore +0 -0
- /package/{template/base/apps → templates/frontend}/web-base/components.json +0 -0
- /package/{template/base/apps → templates/frontend}/web-base/src/components/loader.tsx +0 -0
- /package/{template/base/apps → templates/frontend}/web-base/src/components/ui/button.tsx +0 -0
- /package/{template/base/apps → templates/frontend}/web-base/src/components/ui/card.tsx +0 -0
- /package/{template/base/apps → templates/frontend}/web-base/src/components/ui/checkbox.tsx +0 -0
- /package/{template/base/apps → templates/frontend}/web-base/src/components/ui/dropdown-menu.tsx +0 -0
- /package/{template/base/apps → templates/frontend}/web-base/src/components/ui/input.tsx +0 -0
- /package/{template/base/apps → templates/frontend}/web-base/src/components/ui/label.tsx +0 -0
- /package/{template/base/apps → templates/frontend}/web-base/src/components/ui/skeleton.tsx +0 -0
- /package/{template/base/apps → templates/frontend}/web-base/src/components/ui/sonner.tsx +0 -0
- /package/{template/base/apps → templates/frontend}/web-base/src/index.css +0 -0
- /package/{template/base/apps → templates/frontend}/web-base/src/lib/utils.ts +0 -0
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { Link } from "@tanstack/react-router";
|
|
2
|
-
import { ModeToggle } from "./mode-toggle";
|
|
3
|
-
import UserMenu from "./user-menu";
|
|
4
|
-
|
|
5
|
-
export default function Header() {
|
|
6
|
-
const links = [
|
|
7
|
-
{ to: "/", label: "Home" },
|
|
8
|
-
{ to: "/dashboard", label: "Dashboard" },
|
|
9
|
-
];
|
|
10
|
-
|
|
11
|
-
return (
|
|
12
|
-
<div>
|
|
13
|
-
<div className="flex flex-row items-center justify-between px-2 py-1">
|
|
14
|
-
<nav className="flex gap-4 text-lg">
|
|
15
|
-
{links.map(({ to, label }) => (
|
|
16
|
-
<Link
|
|
17
|
-
key={to}
|
|
18
|
-
to={to}
|
|
19
|
-
activeProps={{ className: "font-bold" }}
|
|
20
|
-
activeOptions={{ exact: true }}
|
|
21
|
-
>
|
|
22
|
-
{label}
|
|
23
|
-
</Link>
|
|
24
|
-
))}
|
|
25
|
-
</nav>
|
|
26
|
-
<div className="flex items-center gap-2">
|
|
27
|
-
<ModeToggle />
|
|
28
|
-
<UserMenu />
|
|
29
|
-
</div>
|
|
30
|
-
</div>
|
|
31
|
-
<hr />
|
|
32
|
-
</div>
|
|
33
|
-
);
|
|
34
|
-
}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import type { AppRouter } from "../../../server/src/routers";
|
|
2
|
-
import { QueryCache, QueryClient } from "@tanstack/react-query";
|
|
3
|
-
import { createTRPCClient, httpBatchLink } from "@trpc/client";
|
|
4
|
-
import { createTRPCOptionsProxy } from "@trpc/tanstack-react-query";
|
|
5
|
-
import { toast } from "sonner";
|
|
6
|
-
|
|
7
|
-
export const queryClient = new QueryClient({
|
|
8
|
-
queryCache: new QueryCache({
|
|
9
|
-
onError: (error) => {
|
|
10
|
-
toast.error(error.message, {
|
|
11
|
-
action: {
|
|
12
|
-
label: "retry",
|
|
13
|
-
onClick: () => {
|
|
14
|
-
queryClient.invalidateQueries();
|
|
15
|
-
},
|
|
16
|
-
},
|
|
17
|
-
});
|
|
18
|
-
},
|
|
19
|
-
}),
|
|
20
|
-
});
|
|
21
|
-
|
|
22
|
-
export const trpcClient = createTRPCClient<AppRouter>({
|
|
23
|
-
links: [
|
|
24
|
-
httpBatchLink({
|
|
25
|
-
url: `${import.meta.env.VITE_SERVER_URL}/trpc`,
|
|
26
|
-
fetch(url, options) {
|
|
27
|
-
return fetch(url, {
|
|
28
|
-
...options,
|
|
29
|
-
credentials: "include",
|
|
30
|
-
});
|
|
31
|
-
},
|
|
32
|
-
}),
|
|
33
|
-
],
|
|
34
|
-
});
|
|
35
|
-
|
|
36
|
-
export const trpc = createTRPCOptionsProxy<AppRouter>({
|
|
37
|
-
client: trpcClient,
|
|
38
|
-
queryClient,
|
|
39
|
-
});
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { Link } from "@tanstack/react-router";
|
|
2
|
-
import UserMenu from "./user-menu";
|
|
3
|
-
|
|
4
|
-
export default function Header() {
|
|
5
|
-
const links = [
|
|
6
|
-
{ to: "/", label: "Home" },
|
|
7
|
-
{ to: "/dashboard", label: "Dashboard" },
|
|
8
|
-
];
|
|
9
|
-
|
|
10
|
-
return (
|
|
11
|
-
<div>
|
|
12
|
-
<div className="flex flex-row items-center justify-between px-2 py-1">
|
|
13
|
-
<nav className="flex gap-4 text-lg">
|
|
14
|
-
{links.map(({ to, label }) => (
|
|
15
|
-
<Link
|
|
16
|
-
key={to}
|
|
17
|
-
to={to}
|
|
18
|
-
activeProps={{ className: "font-bold" }}
|
|
19
|
-
activeOptions={{ exact: true }}
|
|
20
|
-
>
|
|
21
|
-
{label}
|
|
22
|
-
</Link>
|
|
23
|
-
))}
|
|
24
|
-
</nav>
|
|
25
|
-
<div className="flex items-center gap-2">
|
|
26
|
-
<UserMenu />
|
|
27
|
-
</div>
|
|
28
|
-
</div>
|
|
29
|
-
<hr />
|
|
30
|
-
</div>
|
|
31
|
-
);
|
|
32
|
-
}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import "dotenv/config";
|
|
2
|
-
import { Elysia } from "elysia";
|
|
3
|
-
import { cors } from "@elysiajs/cors";
|
|
4
|
-
import { createContext } from "./lib/context";
|
|
5
|
-
import { appRouter } from "./routers/index";
|
|
6
|
-
import { fetchRequestHandler } from "@trpc/server/adapters/fetch";
|
|
7
|
-
|
|
8
|
-
const app = new Elysia()
|
|
9
|
-
.use(
|
|
10
|
-
cors({
|
|
11
|
-
origin: process.env.CORS_ORIGIN || "",
|
|
12
|
-
methods: ["GET", "POST", "OPTIONS"],
|
|
13
|
-
}),
|
|
14
|
-
)
|
|
15
|
-
.all("/trpc/*", async (context) => {
|
|
16
|
-
const res = await fetchRequestHandler({
|
|
17
|
-
endpoint: "/trpc",
|
|
18
|
-
router: appRouter,
|
|
19
|
-
req: context.request,
|
|
20
|
-
createContext: () => createContext({ context }),
|
|
21
|
-
});
|
|
22
|
-
return res;
|
|
23
|
-
})
|
|
24
|
-
.get("/", () => "OK")
|
|
25
|
-
.listen(3000, () => {
|
|
26
|
-
console.log(`Server is running on http://localhost:3000`);
|
|
27
|
-
});
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import type { Context as ElysiaContext } from "elysia";
|
|
2
|
-
|
|
3
|
-
export type CreateContextOptions = {
|
|
4
|
-
context: ElysiaContext;
|
|
5
|
-
};
|
|
6
|
-
|
|
7
|
-
export async function createContext({ context }: CreateContextOptions) {
|
|
8
|
-
return {
|
|
9
|
-
session: null,
|
|
10
|
-
};
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
export type Context = Awaited<ReturnType<typeof createContext>>;
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
import "dotenv/config";
|
|
2
|
-
import { createExpressMiddleware } from "@trpc/server/adapters/express";
|
|
3
|
-
import cors from "cors";
|
|
4
|
-
import express from "express";
|
|
5
|
-
import { createContext } from "./lib/context";
|
|
6
|
-
import { appRouter } from "./routers/index";
|
|
7
|
-
|
|
8
|
-
const app = express();
|
|
9
|
-
|
|
10
|
-
app.use(
|
|
11
|
-
cors({
|
|
12
|
-
origin: process.env.CORS_ORIGIN || "",
|
|
13
|
-
methods: ["GET", "POST", "OPTIONS"],
|
|
14
|
-
allowedHeaders: ["Content-Type", "Authorization"],
|
|
15
|
-
credentials: true,
|
|
16
|
-
}),
|
|
17
|
-
);
|
|
18
|
-
|
|
19
|
-
app.use(express.json());
|
|
20
|
-
|
|
21
|
-
app.use("/trpc", createExpressMiddleware({ router: appRouter, createContext }));
|
|
22
|
-
|
|
23
|
-
app.get("/", (_req, res) => {
|
|
24
|
-
res.status(200).send("OK");
|
|
25
|
-
});
|
|
26
|
-
|
|
27
|
-
app.listen(3000, () => {
|
|
28
|
-
console.log("Server is running on port 3000");
|
|
29
|
-
});
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import type { CreateExpressContextOptions } from "@trpc/server/adapters/express";
|
|
2
|
-
|
|
3
|
-
export async function createContext(opts: CreateExpressContextOptions) {
|
|
4
|
-
return {
|
|
5
|
-
session: null,
|
|
6
|
-
};
|
|
7
|
-
}
|
|
8
|
-
|
|
9
|
-
export type Context = Awaited<ReturnType<typeof createContext>>;
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { trpcServer } from "@hono/trpc-server";
|
|
2
|
-
import "dotenv/config";
|
|
3
|
-
import { Hono } from "hono";
|
|
4
|
-
import { cors } from "hono/cors";
|
|
5
|
-
import { logger } from "hono/logger";
|
|
6
|
-
import { createContext } from "./lib/context";
|
|
7
|
-
import { appRouter } from "./routers/index";
|
|
8
|
-
|
|
9
|
-
const app = new Hono();
|
|
10
|
-
|
|
11
|
-
app.use(logger());
|
|
12
|
-
|
|
13
|
-
app.use(
|
|
14
|
-
"/*",
|
|
15
|
-
cors({
|
|
16
|
-
origin: process.env.CORS_ORIGIN || "",
|
|
17
|
-
allowMethods: ["GET", "POST", "OPTIONS"],
|
|
18
|
-
}),
|
|
19
|
-
);
|
|
20
|
-
|
|
21
|
-
app.use(
|
|
22
|
-
"/trpc/*",
|
|
23
|
-
trpcServer({
|
|
24
|
-
router: appRouter,
|
|
25
|
-
createContext: (_opts, context) => {
|
|
26
|
-
return createContext({ context });
|
|
27
|
-
},
|
|
28
|
-
}),
|
|
29
|
-
);
|
|
30
|
-
|
|
31
|
-
app.get("/", (c) => {
|
|
32
|
-
return c.text("OK");
|
|
33
|
-
});
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import type { Context as HonoContext } from "hono";
|
|
2
|
-
|
|
3
|
-
export type CreateContextOptions = {
|
|
4
|
-
context: HonoContext;
|
|
5
|
-
};
|
|
6
|
-
|
|
7
|
-
export async function createContext({ context }: CreateContextOptions) {
|
|
8
|
-
return {
|
|
9
|
-
session: null,
|
|
10
|
-
};
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
export type Context = Awaited<ReturnType<typeof createContext>>;
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/{template/with-auth/apps/web-next → templates/auth/web/next}/src/app/login/page.tsx
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/{template/with-auth/apps/web-next → templates/auth/web/next}/src/components/user-menu.tsx
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/{template/with-drizzle-mysql/apps/server → templates/db/drizzle/mysql}/drizzle.config.ts
RENAMED
|
File without changes
|
/package/{template/with-drizzle-mysql/apps/server → templates/db/drizzle/mysql}/src/db/index.ts
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/{template/with-drizzle-sqlite/apps/server → templates/db/drizzle/sqlite}/drizzle.config.ts
RENAMED
|
File without changes
|
/package/{template/with-drizzle-sqlite/apps/server → templates/db/drizzle/sqlite}/src/db/index.ts
RENAMED
|
File without changes
|
/package/{template/with-prisma-sqlite/apps/server → templates/db/prisma/mongodb}/prisma/index.ts
RENAMED
|
File without changes
|
|
File without changes
|
/package/{template/with-prisma-postgres/apps/server → templates/db/prisma/mysql}/prisma/index.ts
RENAMED
|
File without changes
|
|
File without changes
|
/package/{template/with-prisma-mysql/apps/server → templates/db/prisma/postgres}/prisma/index.ts
RENAMED
|
File without changes
|
|
File without changes
|
/package/{template/with-prisma-mongodb/apps/server → templates/db/prisma/sqlite}/prisma/index.ts
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/{template/base/apps/web-next → templates/frontend/next}/src/components/mode-toggle.tsx
RENAMED
|
File without changes
|
/package/{template/base/apps/web-next → templates/frontend/next}/src/components/theme-provider.tsx
RENAMED
|
File without changes
|
|
File without changes
|
/package/{template/base/apps/web-react-router → templates/frontend/react-router}/public/favicon.ico
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/{template/base/apps/web-react-router → templates/frontend/react-router}/src/routes.ts
RENAMED
|
File without changes
|
/package/{template/base/apps/web-react-router → templates/frontend/react-router}/tsconfig.json
RENAMED
|
File without changes
|
/package/{template/base/apps/web-tanstack-router → templates/frontend/tanstack-router}/index.html
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/{template/base/apps/web-tanstack-router → templates/frontend/tanstack-router}/tsconfig.json
RENAMED
|
File without changes
|
/package/{template/base/apps/web-tanstack-start → templates/frontend/tanstack-start}/app.config.ts
RENAMED
|
File without changes
|
|
File without changes
|
/package/{template/base/apps/web-tanstack-start → templates/frontend/tanstack-start}/src/api.ts
RENAMED
|
File without changes
|
/package/{template/base/apps/web-tanstack-start → templates/frontend/tanstack-start}/src/client.tsx
RENAMED
|
File without changes
|
/package/{template/base/apps/web-tanstack-start → templates/frontend/tanstack-start}/src/ssr.tsx
RENAMED
|
File without changes
|
/package/{template/base/apps/web-tanstack-start → templates/frontend/tanstack-start}/tsconfig.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/{template/base/apps → templates/frontend}/web-base/src/components/ui/dropdown-menu.tsx
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|