Skip to content
Merged
Show file tree
Hide file tree
Changes from 2 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
30 changes: 30 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# Git
.git/
.gitignore

# IDE
.idea/
.vscode/

# Documentation
*.md
README.md
CHANGELOG.md
LICENSE

# Test artifacts
test-screenshots/
comparison/

# Build output
dist/

# Logs
*.log
logs/

# macOS
.DS_Store

# CI/CD
.github/
10 changes: 10 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -134,3 +134,13 @@ dist
.yarn/build-state.yml
.yarn/install-state.gz
.pnp.*

# macOS
.DS_Store

# IDE
.idea/

# Test artifacts
test-screenshots/
comparison/
14 changes: 6 additions & 8 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,15 +1,13 @@
FROM node:22.13.1-alpine3.20 AS base
FROM oven/bun:1.3.2-alpine AS base

WORKDIR /app

COPY package.json pnpm-lock.yaml ./
COPY package.json bun.lock ./

RUN npm install -g [email protected]
RUN bun install --frozen-lockfile --production && \
rm -rf ~/.bun/install/cache /tmp/*

RUN pnpm install --prod --frozen-lockfile && \
rm -rf ~/.pnpm ~/.npm /tmp/* /var/cache/apk/*

FROM node:22.13.1-alpine3.20 AS final
FROM oven/bun:1.3.2-alpine AS final

RUN apk upgrade --no-cache --available && \
apk add --no-cache \
Expand Down Expand Up @@ -40,4 +38,4 @@ COPY --from=base /app/node_modules ./node_modules
COPY src/ ./src/

ENTRYPOINT ["tini", "--"]
CMD ["node", "src/index.js"]
CMD ["bun", "run", "src/server.ts"]
672 changes: 672 additions & 0 deletions bun.lock

Large diffs are not rendered by default.

24 changes: 22 additions & 2 deletions eslint.config.js
Original file line number Diff line number Diff line change
@@ -1,9 +1,29 @@
import globals from "globals";
import pluginJs from "@eslint/js";

import tseslint from "typescript-eslint";

/** @type {import('eslint').Linter.Config[]} */
export default [
{languageOptions: { globals: globals.node }},
{
files: ["**/*.{js,mjs,cjs,ts}"],
languageOptions: {
globals: {
...globals.node,
Bun: "readonly",
}
}
},
pluginJs.configs.recommended,
...tseslint.configs.recommended,
{
rules: {
"@typescript-eslint/no-unused-vars": [
"error",
{
argsIgnorePattern: "^_",
varsIgnorePattern: "^_",
}
]
}
}
];
13 changes: 9 additions & 4 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,13 @@
"name": "appwrite-browser",
"version": "0.1.0",
"description": "",
"main": "src/index.js",
"main": "src/server.ts",
"type": "module",
"scripts": {
"start": "node src/index.js",
"start": "bun run src/server.ts",
"dev": "bun --watch src/server.ts",
"build": "tsc",
"type-check": "tsc --noEmit",
"format": "biome check --write ./src",
"lint": "biome check ./src",
"check": "eslint ./src",
Expand All @@ -16,7 +19,6 @@
"license": "ISC",
"packageManager": "[email protected]",
"dependencies": {
"h3": "^1.13.0",
"lighthouse": "^12.2.1",
"playwright-core": "^1.52.0",
"playwright-lighthouse": "^4.0.0",
Expand All @@ -25,7 +27,10 @@
"devDependencies": {
"@biomejs/biome": "^1.9.4",
"@eslint/js": "^9.20.0",
"@types/bun": "^1.3.2",
"eslint": "^9.20.1",
"globals": "^15.15.0"
"globals": "^15.15.0",
"typescript": "^5.9.3",
"typescript-eslint": "^8.46.3"
}
}
Loading