Easy-to-manage touch screens
Free, open-source touch screens. Guided USB setup, a drag-and-drop editor and local control. Made for Home Assistant.
Keep track of your travels and adventures. Add locations, photos, and notes to create a digital journal of your journeys
LifestyleSvelte · TypeScriptGitHub @eduahcbOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Loading the full README. The saved excerpt is shown below.
A full-stack travel journal. Add the places you've visited on an interactive map, log trips to each one with dates and notes, and attach photos to every log entry.
This is a SvelteKit adaptation of the "Travel Log" project taught by CJ on Syntax — see Credits below. The original is built with Nuxt; this repo reimplements the same product with SvelteKit, better-auth, Drizzle/Turso, and SeaweedFS for image storage.Read the full README ↗🇧🇷 Leia em português: README.pt-BR.md
A full-stack travel journal. Add the places you've visited on an interactive map, log trips to each one with dates and notes, and attach photos to every log entry.
This is a SvelteKit adaptation of the "Travel Log" project taught by CJ on Syntax — see Credits below. The original is built with Nuxt; this repo reimplements the same product with SvelteKit, better-auth, Drizzle/Turso, and SeaweedFS for image storage.
Add your own screenshots/videos to
docs/mediaand they'll show up here.
Home / sign-in
Dashboard & map
Add a location
Location detail
Add a log entry
Image gallery
Uploading images
| Layer | Choice |
|---|---|
| Framework | SvelteKit (Svelte 5, runes) |
| Auth | better-auth — GitHub OAuth |
| Database | Turso (libSQL/SQLite) + Drizzle ORM |
| Validation | valibot + TanStack Form |
| Maps | MapLibre GL + svelte-maplibre-gl |
| Client data fetching | TanStack Query + ky |
| UI | Skeleton UI + Tailwind CSS v4 |
| Image storage | SeaweedFS (S3-compatible), via @aws-sdk/client-s3 presigned uploads |
| Image gallery | PhotoSwipe |
src/
├── lib/
│ ├── schema/ # Drizzle table definitions + valibot insert/select schemas
│ ├── server/
│ │ ├── db/ # DB client + Drizzle migrations
│ │ └── utils/ # Result type, auth request handler, etc.
│ └── auth-client.ts # Client-side better-auth helper
└── routes/
├── dashboard/ # Location list + map, add/edit location, location detail
├── api/
│ ├── locations/ # REST endpoints for locations and their logs/images
│ └── search/ # Nominatim geocoder proxy
└── sign-out/
See CLAUDE.md for a deeper architectural walkthrough (auth flow, state management, routing).
corepack enable will pick up the version pinned in package.json)turso dev powers the local database — installed as part of pnpm install/available via pnpm dev:db)http://localhost:5173/api/auth/callback/github for local dev)git clone <this-repo-url>
cd sveltekit-travel-log
pnpm install
Copy the example file and fill in the values:
cp .env.example .env
This is the beginning of the README. Read the rest at the original. Read the full README ↗