Skip to content

Commit 71adf82

Browse files
feat: migrate from npm to bun for package management and update PostgreSQL version in Docker setup
1 parent e3e790c commit 71adf82

File tree

5 files changed

+27
-29
lines changed

5 files changed

+27
-29
lines changed

Dockerfile

Lines changed: 8 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
1-
FROM node:22 AS base
1+
FROM oven/bun:1 AS base
22

33
WORKDIR /app
44

5-
RUN npm install -g pnpm
5+
COPY package.json bun.lock ./
66

7-
COPY . .
7+
RUN bun install --frozen-lockfile
88

9-
RUN pnpm install --frozen-lockfile
9+
COPY . .
1010

1111
FROM base AS build
1212

@@ -18,28 +18,26 @@ ARG WEBHOOK_SECRET
1818
ARG AUTO_MIGRATE
1919

2020
# Set environment variables for build
21-
ENV NODE_OPTIONS="--max-old-space-size=4096"
2221
ENV DATABASE_URL=$DATABASE_URL
2322
ENV JWT_SECRET=$JWT_SECRET
2423
ENV ENCRYPTION_KEY=$ENCRYPTION_KEY
2524
ENV WEBHOOK_SECRET=$WEBHOOK_SECRET
2625
ENV AUTO_MIGRATE=$AUTO_MIGRATE
2726

28-
RUN pnpm run build
27+
RUN bun run build
2928

3029
FROM base AS dev
3130

3231
EXPOSE 3000
3332

34-
CMD ["pnpm", "dev"]
33+
CMD ["bun", "run", "dev"]
3534

36-
FROM node:22-alpine3.22 AS production
35+
FROM oven/bun:1-alpine AS production
3736

3837
WORKDIR /app
3938

4039
COPY --from=build /app/.output /app
4140

4241
EXPOSE 3000
4342

44-
CMD ["node", "/app/server/index.mjs"]
45-
43+
CMD ["bun", "run", "/app/server/index.mjs"]

README.md

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -169,16 +169,16 @@ graph TB
169169
3. **Set up database**
170170
```bash
171171
# Start PostgreSQL (using Docker)
172-
docker run --name nitroping-db -e POSTGRES_PASSWORD=postgres -e POSTGRES_DB=nitroping -p 5432:5432 -d postgres:15
172+
docker run --name nitroping-db -e POSTGRES_PASSWORD=postgres -e POSTGRES_DB=nitroping -p 5432:5432 -d postgres:18
173173

174174
# Generate and run migrations
175-
pnpm db:generate
176-
pnpm db:migrate
175+
bun run db:generate
176+
bun run db:migrate
177177
```
178178

179179
4. **Start development server**
180180
```bash
181-
pnpm dev --host # Allows access from mobile devices on same network
181+
bun run dev --host # Allows access from mobile devices on same network
182182
```
183183

184184
#### Docker
@@ -328,18 +328,18 @@ NitroPingClient.shared.registerForPushNotifications()
328328

329329
```bash
330330
# Development
331-
pnpm dev --host # Start dev server (accessible from mobile devices)
332-
pnpm typecheck # Type checking
333-
pnpm lint # Run linter
331+
bun run dev --host # Start dev server (accessible from mobile devices)
332+
bun run typecheck # Type checking
333+
bun run lint # Run linter
334334

335335
# Database
336-
pnpm db:generate # Generate migrations
337-
pnpm db:migrate # Run migrations
338-
pnpm db:studio # Open Drizzle Studio
336+
bun run db:generate # Generate migrations
337+
bun run db:migrate # Run migrations
338+
bun run db:studio # Open Drizzle Studio
339339

340340
# Testing
341-
pnpm test # Run tests
342-
pnpm test:ui # Test with UI
341+
bun run test # Run tests
342+
bun run test:ui # Test with UI
343343
```
344344

345345
## 🤝 Contributing
@@ -381,7 +381,7 @@ We welcome all contributions! Whether you're fixing bugs, adding features, or im
381381
# Clone and setup
382382
git clone https://github.com/productdevbook/nitroping.git
383383
cd nitroping
384-
pnpm install
384+
bun install
385385

386386
# Setup environment
387387
cp .env.example .env
@@ -391,12 +391,12 @@ cp .env.example .env
391391
docker run -d --name nitroping-db \
392392
-e POSTGRES_PASSWORD=postgres \
393393
-e POSTGRES_DB=nitroping \
394-
-p 5432:5432 postgres:15
394+
-p 5432:5432 postgres:18
395395

396-
pnpm db:generate && pnpm db:migrate
396+
bun run db:generate && bun run db:migrate
397397

398398
# Start development
399-
pnpm dev --host
399+
bun run dev --host
400400
```
401401

402402
## 🗺️ Roadmap

docker-compose.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
services:
22
db:
3-
image: postgres:15
3+
image: postgres:18
44
container_name: postgres_db
55
restart: always
66
environment:

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
"generate": "nuxt generate",
1010
"preview": "nuxt preview",
1111
"postinstall": "nuxt prepare",
12-
"release": "pnpm build && pnpm publish --no-git-checks --access public",
12+
"release": "bun run build && bun publish --no-git-checks --access public",
1313
"typecheck": "nuxt typecheck",
1414
"lint": "eslint .",
1515
"lint:fix": "eslint . --fix",

sdk/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@
3535
"dev": "tsdown --watch",
3636
"typecheck": "tsc --noEmit",
3737
"clean": "rm -rf dist",
38-
"release": "pnpm build && pnpm publish --no-git-checks --access public"
38+
"release": "bun run build && bun publish --no-git-checks --access public"
3939
},
4040
"peerDependencies": {},
4141
"devDependencies": {

0 commit comments

Comments
 (0)