@kevinmarrec/create-app 0.15.0 → 0.16.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.mjs CHANGED
@@ -8,7 +8,7 @@ import { x } from "tinyexec";
8
8
  import fs from "node:fs/promises";
9
9
 
10
10
  //#region package.json
11
- var version = "0.15.0";
11
+ var version = "0.16.0";
12
12
 
13
13
  //#endregion
14
14
  //#region src/utils/fs.ts
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "@kevinmarrec/create-app",
3
3
  "type": "module",
4
- "version": "0.15.0",
5
- "packageManager": "bun@1.3.5",
4
+ "version": "0.16.0",
5
+ "packageManager": "bun@1.3.6",
6
6
  "description": "CLI that scaffolds an opinionated Bun & Vue fullstack application.",
7
7
  "author": "Kevin Marrec <kevin@marrec.io>",
8
8
  "license": "MIT",
@@ -51,15 +51,15 @@
51
51
  },
52
52
  "devDependencies": {
53
53
  "@faker-js/faker": "^10.2.0",
54
- "@kevinmarrec/eslint-config": "^1.8.1",
55
- "@kevinmarrec/stylelint-config": "^1.8.1",
56
- "@kevinmarrec/tsconfig": "^1.8.1",
54
+ "@kevinmarrec/eslint-config": "^1.9.0",
55
+ "@kevinmarrec/stylelint-config": "^1.9.0",
56
+ "@kevinmarrec/tsconfig": "^1.9.0",
57
57
  "@types/bun": "^1.3.6",
58
58
  "@vitest/coverage-v8": "^4.0.17",
59
59
  "bumpp": "^10.4.0",
60
60
  "eslint": "^9.39.2",
61
61
  "knip": "^5.81.0",
62
- "stylelint": "^16.26.1",
62
+ "stylelint": "^17.0.0",
63
63
  "tsdown": "^0.19.0",
64
64
  "typescript": "^5.9.3",
65
65
  "vitest": "^4.0.17",
@@ -0,0 +1,6 @@
1
+ .docker*
2
+ .github
3
+ .vscode
4
+ **/dist
5
+ **/node_modules
6
+ **/Dockerfile
@@ -2,4 +2,4 @@ ALLOWED_ORIGINS="https://app.dev.localhost"
2
2
  AUTH_SECRET="D0QykrmzDgVrP4GCKkFPT1CB1UplFk4bhIJk92SUtSQ="
3
3
  DATABASE_URL="postgresql://user:password@postgres:5432/app"
4
4
  LOG_LEVEL=info
5
- NODE_ENV="development"
5
+ SERVER_URL="https://api.dev.localhost"
@@ -1,6 +1,6 @@
1
- ARG TARGETARCH
1
+ FROM --platform=$BUILDPLATFORM oven/bun:1.3.6-slim AS build
2
2
 
3
- FROM oven/bun:1.3.6-slim AS build
3
+ ARG TARGETARCH
4
4
 
5
5
  WORKDIR /build
6
6
 
@@ -12,7 +12,7 @@ RUN bun install --filter api --frozen-lockfile
12
12
 
13
13
  COPY api/ ./api/
14
14
 
15
- RUN bun --cwd api build --target bun-linux-$TARGETARCH-modern
15
+ RUN bun -F ./api build --target bun-linux-$TARGETARCH-modern
16
16
 
17
17
  FROM gcr.io/distroless/base-debian13:nonroot AS runner
18
18
 
@@ -11,16 +11,16 @@
11
11
  "dependencies": {
12
12
  "@libsql/client": "^0.17.0",
13
13
  "@orpc/server": "^1.13.4",
14
- "better-auth": "^1.4.12",
14
+ "better-auth": "^1.4.13",
15
15
  "drizzle-orm": "^0.45.1",
16
16
  "pino": "^10.2.0",
17
17
  "valibot": "^1.2.0"
18
18
  },
19
19
  "devDependencies": {
20
- "@kevinmarrec/tsconfig": "^1.8.1",
20
+ "@kevinmarrec/tsconfig": "^1.9.0",
21
21
  "@types/bun": "^1.3.6",
22
22
  "drizzle-kit": "^0.31.8",
23
- "pg": "^8.17.0",
23
+ "pg": "^8.17.1",
24
24
  "pino-pretty": "^13.1.3",
25
25
  "typescript": "~5.9.3"
26
26
  }
@@ -6,6 +6,7 @@ import { env } from '../env'
6
6
 
7
7
  export function createBetterAuth({ db, logger }: { db: DB, logger: Logger }) {
8
8
  return betterAuth({
9
+ baseURL: env.server.url,
9
10
  basePath: '/auth',
10
11
  secret: env.auth.secret,
11
12
  trustedOrigins: env.cors.allowedOrigins,
@@ -44,6 +44,11 @@ const schema = v.object({
44
44
  v.digits(),
45
45
  v.toNumber(),
46
46
  ),
47
+ url: v.pipe(
48
+ v.string(),
49
+ v.trim(),
50
+ v.startsWith('https://'),
51
+ ),
47
52
  }),
48
53
  })
49
54
 
@@ -63,6 +68,7 @@ const parsed = v.safeParse(schema, {
63
68
  server: {
64
69
  host: import.meta.env.HOST,
65
70
  port: import.meta.env.PORT,
71
+ url: import.meta.env.SERVER_URL,
66
72
  },
67
73
  })
68
74
 
@@ -0,0 +1,21 @@
1
+ FROM --platform=$BUILDPLATFORM imbios/bun-node:1.3.6-24-alpine AS build
2
+
3
+ ARG TARGETARCH
4
+
5
+ WORKDIR /build
6
+
7
+ COPY package.json bun.lock ./
8
+ COPY api/package.json ./api/package.json
9
+ COPY app/package.json ./app/package.json
10
+
11
+ RUN bun install --filter app --frozen-lockfile
12
+
13
+ COPY app/ ./app/
14
+
15
+ RUN bun -F ./app build
16
+
17
+ FROM nginx:1.29.4-alpine AS serve
18
+
19
+ COPY --from=build --chown=nonroot:nonroot /build/app/dist/ /usr/share/nginx/html
20
+
21
+ EXPOSE 80
@@ -9,21 +9,21 @@
9
9
  "preview": "vite preview --open"
10
10
  },
11
11
  "dependencies": {
12
- "@kevinmarrec/vue-i18n": "^1.2.0",
12
+ "@kevinmarrec/vue-i18n": "^1.2.1",
13
13
  "@orpc/client": "^1.13.4",
14
14
  "@orpc/vue-colada": "^1.13.4",
15
15
  "@pinia/colada": "^0.21.1",
16
16
  "@unhead/vue": "^2.1.2",
17
17
  "@vueuse/core": "^14.1.0",
18
- "better-auth": "^1.4.12",
18
+ "better-auth": "^1.4.13",
19
19
  "pinia": "^3.0.4",
20
20
  "unocss": "^66.6.0",
21
21
  "vue": "^3.5.26"
22
22
  },
23
23
  "devDependencies": {
24
- "@kevinmarrec/tsconfig": "^1.8.1",
25
- "@kevinmarrec/unocss-config": "^1.8.1",
26
- "@kevinmarrec/vite-plugin-dark-mode": "^1.2.0",
24
+ "@kevinmarrec/tsconfig": "^1.9.0",
25
+ "@kevinmarrec/unocss-config": "^1.9.0",
26
+ "@kevinmarrec/vite-plugin-dark-mode": "^1.2.1",
27
27
  "@modyfi/vite-plugin-yaml": "^1.1.1",
28
28
  "@unhead/addons": "^2.1.2",
29
29
  "@vitejs/plugin-vue": "^6.0.3",
@@ -5,6 +5,7 @@ Object.assign(import.meta.env, {
5
5
  ALLOWED_ORIGINS: 'https://foo.bar',
6
6
  AUTH_SECRET: 'foo',
7
7
  DATABASE_URL: 'postgresql://foo:bar@localhost:5432/foo',
8
+ SERVER_URL: 'https://foo.bar',
8
9
  })
9
10
 
10
11
  export default {
@@ -2,7 +2,7 @@
2
2
  "name": "project",
3
3
  "type": "module",
4
4
  "private": true,
5
- "packageManager": "bun@1.3.5",
5
+ "packageManager": "bun@1.3.6",
6
6
  "engines": {
7
7
  "node": "lts/*"
8
8
  },
@@ -23,12 +23,12 @@
23
23
  "update": "bunx taze -I -rwi"
24
24
  },
25
25
  "devDependencies": {
26
- "@kevinmarrec/eslint-config": "^1.8.1",
27
- "@kevinmarrec/stylelint-config": "^1.8.1",
28
- "@kevinmarrec/tsconfig": "^1.8.1",
26
+ "@kevinmarrec/eslint-config": "^1.9.0",
27
+ "@kevinmarrec/stylelint-config": "^1.9.0",
28
+ "@kevinmarrec/tsconfig": "^1.9.0",
29
29
  "eslint": "^9.39.2",
30
30
  "knip": "^5.81.0",
31
- "stylelint": "^16.26.1",
31
+ "stylelint": "^17.0.0",
32
32
  "typescript": "~5.9.3",
33
33
  "vue-tsc": "^3.2.2"
34
34
  }