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
21 changes: 7 additions & 14 deletions .github/workflows/deploy-web.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,29 +25,22 @@ jobs:
steps:
- uses: actions/checkout@v4

- name: Install pnpm
uses: pnpm/action-setup@v4
- name: Install Bun
uses: oven-sh/setup-bun@v2
with:
version: 10

- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: "24"
cache: "pnpm"
cache-dependency-path: apps/web/pnpm-lock.yaml
bun-version: latest

- name: Install dependencies
run: pnpm install --frozen-lockfile
run: bun install --frozen-lockfile

- name: Run linter
run: pnpm lint
run: bun run lint

- name: Run type check
run: pnpm typecheck
run: bun run typecheck

- name: Run tests
run: pnpm test
run: bun run test

build-and-deploy:
needs: test
Expand Down
18 changes: 6 additions & 12 deletions .github/workflows/review.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,8 +32,8 @@ jobs:
Note this PR might be rejected due to its size.
github_api_url: "https://api.github.com"
files_to_ignore: |
pnpm-lock.yaml
**/pnpm-lock.yaml
bun.lock
**/bun.lock
package-lock.json
**/package-lock.json
yarn.lock
Expand Down Expand Up @@ -63,19 +63,13 @@ jobs:
steps:
- uses: actions/checkout@v4

- uses: pnpm/action-setup@v4
- uses: oven-sh/setup-bun@v2
with:
version: 10

- uses: actions/setup-node@v4
with:
node-version: 24
cache: pnpm
cache-dependency-path: apps/web/pnpm-lock.yaml
bun-version: latest

- name: Install dependencies
working-directory: apps/web
run: pnpm install --frozen-lockfile
run: bun install --frozen-lockfile

- uses: reviewdog/action-setup@v1

Expand All @@ -84,7 +78,7 @@ jobs:
REVIEWDOG_GITHUB_API_TOKEN: ${{ secrets.GITHUB_TOKEN }}
working-directory: apps/web
run: |
pnpm biome check src --reporter=json 2>&1 | \
bun run biome check src --reporter=json 2>&1 | \
jq -r '.diagnostics[] | {
message: .message,
location: {
Expand Down
4 changes: 2 additions & 2 deletions README.ko.md
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ graph TB

```bash
# CLI로 생성하기
pnpm create fullstack-starter my-app
bun create fullstack-starter my-app
# 또는
npm create fullstack-starter my-app
```
Expand Down Expand Up @@ -111,7 +111,7 @@ npm create fullstack-starter my-app
# mise 설치 (미설치 시)
curl https://mise.run | sh

# 모든 런타임 일괄 설치 (Node 24, Python 3.12, Flutter 3, pnpm 10, uv, Terraform)
# 모든 런타임 일괄 설치 (Node 24, Python 3.12, Flutter 3, bun, uv, Terraform)
mise install
```

Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ Choose one of the following methods to start with this template:

```bash
# Create from CLI
pnpm create fullstack-starter my-app
bun create fullstack-starter my-app
# or
npm create fullstack-starter my-app
```
Expand Down Expand Up @@ -111,7 +111,7 @@ Or use GitHub:
# Install mise (if not installed)
curl https://mise.run | sh

# Install all runtimes (Node 24, Python 3.12, Flutter 3, pnpm 10, uv, Terraform)
# Install all runtimes (Node 24, Python 3.12, Flutter 3, bun, uv, Terraform)
mise install
```

Expand Down
12 changes: 5 additions & 7 deletions apps/web/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,12 +1,10 @@
# syntax=docker/dockerfile:1
FROM node:24-alpine AS base
RUN corepack enable && corepack prepare pnpm@10.11.0 --activate
FROM oven/bun:1-alpine AS base

FROM base AS deps
WORKDIR /app
COPY package.json pnpm-lock.yaml ./
RUN --mount=type=cache,target=/root/.local/share/pnpm/store \
pnpm install --frozen-lockfile
COPY package.json bun.lock ./
RUN bun install --frozen-lockfile

FROM base AS builder
WORKDIR /app
Expand All @@ -18,7 +16,7 @@ ARG NEXT_PUBLIC_BETTER_AUTH_URL
ENV NEXT_PUBLIC_API_URL=$NEXT_PUBLIC_API_URL
ENV NEXT_PUBLIC_BETTER_AUTH_URL=$NEXT_PUBLIC_BETTER_AUTH_URL

RUN pnpm build
RUN bun run build

FROM base AS runner
WORKDIR /app
Expand All @@ -36,4 +34,4 @@ EXPOSE 3000
ENV PORT=3000
ENV HOSTNAME="0.0.0.0"

CMD ["node", "server.js"]
CMD ["bun", "server.js"]
1,472 changes: 1,472 additions & 0 deletions apps/web/bun.lock

Large diffs are not rendered by default.

16 changes: 8 additions & 8 deletions apps/web/mise.toml
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
[tasks]
dev = { run = "pnpm dev", description = "Start Web server" }
build = { run = "pnpm build", description = "Build Web app" }
install = { run = "pnpm install", description = "Install dependencies", sources = ["package.json", "pnpm-lock.yaml"] }
lint = { run = "pnpm lint", description = "Lint Web" }
format = { run = "pnpm format", description = "Format Web" }
test = { run = "pnpm test", description = "Test Web" }
typecheck = { run = "pnpm typecheck", description = "Type check Web" }
"gen:api" = { run = "pnpm gen:api", description = "Generate API client" }
dev = { run = "bun run dev", description = "Start Web server" }
build = { run = "bun run build", description = "Build Web app" }
install = { run = "bun install", description = "Install dependencies", sources = ["package.json", "bun.lock"] }
lint = { run = "bun run lint", description = "Lint Web" }
format = { run = "bun run format", description = "Format Web" }
test = { run = "bun run test", description = "Test Web" }
typecheck = { run = "bun run typecheck", description = "Type check Web" }
"gen:api" = { run = "bun run gen:api", description = "Generate API client" }
2 changes: 1 addition & 1 deletion apps/web/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"version": "0.1.0",
"private": true,
"type": "module",
"packageManager": "pnpm@10.11.0",
"packageManager": "bun@1.2.14",
"scripts": {
"dev": "next dev --turbopack",
"build": "next build",
Expand Down
Loading