package.json RawHistoryFolder

1{
2	"name": "pdraim",
3	"private": true,
4	"version": "0.2.1",
5	"type": "module",
6	"engines": {
7		"node": ">=22.13.0"
8	},
9	"scripts": {
10		"dev": "vite dev",
11		"build": "vite build",
12		"preview": "vite preview",
13		"prepare": "svelte-kit sync || echo ''",
14		"check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
15		"check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch",
16		"format": "prettier --write .",
17		"lint": "prettier --check . && eslint .",
18		"test:unit": "vitest",
19		"test": "npm run test:unit -- --run",
20		"db:generate": "npx drizzle-kit generate",
21		"db:push": "npx drizzle-kit push",
22		"db:push-prod": "bash -c 'source .env && TURSO_DATABASE_URL=\"$TURSO_DATABASE_URL_PROD\" TURSO_AUTH_TOKEN=\"$TURSO_AUTH_TOKEN_PROD\" npx drizzle-kit push'",
23		"db:flush": "tsx utils/db-flush.ts"
24	},
25	"devDependencies": {
26		"@eslint/compat": "^2.1.1",
27		"@eslint/js": "^10.0.1",
28		"@sveltejs/adapter-cloudflare": "^7.2.9",
29		"@sveltejs/kit": "^2.70.3",
30		"@sveltejs/vite-plugin-svelte": "^6.2.4",
31		"@tailwindcss/cli": "^4.3.3",
32		"@tailwindcss/forms": "^0.5.11",
33		"@tailwindcss/typography": "^0.5.20",
34		"@tailwindcss/vite": "^4.3.3",
35		"@types/node": "^25.9.8",
36		"autoprefixer": "^10.6.1",
37		"drizzle-kit": "^0.31.11",
38		"eslint": "^10.11.0",
39		"eslint-config-prettier": "^10.1.8",
40		"eslint-plugin-svelte": "^3.23.0",
41		"globals": "^17.12.0",
42		"jsdom": "^28.1.0",
43		"prettier": "^3.9.9",
44		"prettier-plugin-svelte": "^3.5.2",
45		"prettier-plugin-tailwindcss": "^0.7.4",
46		"svelte": "^5.57.1",
47		"svelte-check": "^4.7.6",
48		"tailwindcss": "^4.3.3",
49		"terser": "^5.51.2",
50		"tsx": "^4.23.15",
51		"tw-animate-css": "^1.4.0",
52		"typescript": "^5.9.3",
53		"typescript-eslint": "^8.70.1",
54		"vite": "^7.3.6",
55		"vitest": "^4.1.11",
56		"wrangler": "^4.141.0"
57	},
58	"dependencies": {
59		"@libsql/client": "^0.17.4",
60		"@lucide/svelte": "^0.564.0",
61		"convex": "^1.46.0",
62		"convex-helpers": "^0.1.124",
63		"convex-svelte": "^0.0.12",
64		"dotenv": "^17.4.2",
65		"drizzle-orm": "^0.45.3",
66		"pino": "^10.3.1",
67		"pino-pretty": "^13.1.3",
68		"rehype": "^13.0.2",
69		"rehype-sanitize": "^6.0.0",
70		"rehype-stringify": "^10.0.1",
71		"remark-parse": "^11.0.0",
72		"remark-rehype": "^11.1.2",
73		"unified": "^11.0.5",
74		"uuid": "^13.0.2",
75		"xp.css": "^0.2.6",
76		"zod": "^4.6.5"
77	},
78	"packageManager": "pnpm@10.25.0+sha512.5e82639027af37cf832061bcc6d639c219634488e0f2baebe785028a793de7b525ffcd3f7ff574f5e9860654e098fe852ba8ac5dd5cefe1767d23a020a92f501"
79}

Keyboard shortcuts

Single-key shortcuts are on. ctrl k and esc work whatever this says.

ctrl k :
go to a section, branch, tag, file or repository
?
this list
j k
move the row cursor down / up
enter
open the row under the cursor; on Files, a directory opens or closes in place
↑ ↓ ← → home end
in the file tree (focus on a row): previous / next row, close / open a directory or go to its parent / first entry, first / last row. They never open a file
l h
on Files: open a directory or a file / close a directory or go up to its parent, then to the parent page. Elsewhere: into the side panel (on a merge request, its files) / back to the content; there j k move between its controls
g g G
first / last row
/
filter the list; on Files, find a file anywhere in the repository (esc clears, enter opens the best match)
b
switch branch or tag
g s g f g c g b g m g i g r g a
tabs: summary, files, commits, branches & tags, merge requests, issues, releases, actions (when available)
g h
home
w
wide mode: use the whole width of the screen, or not (remembered)
y
copy a permalink pinned to the commit
d u x
diff: split / unified / collapse or expand all
e E
diff: the whole file in view / every file, with the lines the hunks hide
n
merge request: next note in the diff
esc
close a dialog, leave a field

Branches 3

Tags 8

↑↓ moveenter openesc close