4066c48412
The previous fix (max-height + overflow-y:auto) made every widget reachable but required scrolling the sidebar itself independently of the article column — two different scroll regions felt janky. Replaced it with a three-layer structure: a plain spacer sized to the sidebar's full natural height (reserving the right amount of page scroll room), a sticky+clipped viewport box, and a content wrapper translated upward via a scroll listener. The translation amount is driven by how far the page has scrolled past the point where the sidebar started sticking, clamped to the overflow amount — so scrolling the article feed down reveals more of the sidebar in lockstep, and scrolling back up reverses it, all through the single page scrollbar. Short sidebars that already fit the viewport are unaffected (reveal range is zero, so it behaves exactly like plain sticky-to-top as before). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014c1L8ghNBFjfiH64UMViP8
sv
Everything you need to build a Svelte project, powered by sv.
Creating a project
If you're seeing this, you've probably already done this step. Congrats!
# create a new project
npx sv create my-app
To recreate this project with the same configuration:
# recreate this project
npx sv@0.16.2 create --template minimal --types ts --install npm frontend
Developing
Once you've created a project and installed dependencies with npm install (or pnpm install or yarn), start a development server:
npm run dev
# or start the server and open the app in a new browser tab
npm run dev -- --open
Building
To create a production version of your app:
npm run build
You can preview the production build with npm run preview.
To deploy your app, you may need to install an adapter for your target environment.