Web developer based in Stockholm, Sweden. Fluent in English and Swedish.
dug.wtf · dougalcedo@gmail.com · LinkedIn
A minimal toolkit for full-stack SvelteKit. Server-side request handling, reactive fetching, and form state — with Zod validation and end-to-end type inference. Svelte 5.
// Typed server endpoint
export const POST = defineHandler({
body: z.object({ x: z.number(), y: z.number() }),
handler: async (evt) => {
return { json: { result: evt.body.x + evt.body.y } }
}
})
// Inferred on the client — no duplication, no drift
export type MathInput = typeof POST.inferInput
export type MathResult = typeof POST.inferOutput|
Personal site, production app. SvelteKit + TypeScript + Drizzle, deployed on Vercel. dug.wtf |
Typed JSON dataset: 700 pale ales from 232 American breweries, with generated pricing derived from Untappd ratings. |
|
Blackjack built with React + TypeScript + Vite. Live demo |
REST Countries explorer with search, region filter, and light/dark mode. Frontend Mentor challenge. geo.dug.wtf |
|
Pong in vanilla JavaScript, with sound. dugpong.vercel.app |
Conway's Game of Life implemented in JavaScript. |
|
Weather app built on Node.js. |

