Try it out:
- hn.leftium.com (all frontpage stories, in chronological order)
- hn.leftium.com/top (if you prefer HN's default order)
- Simple tap of gray index region scrolls item to very top.
- Easier/more convenient than (over) scrolling.
- New stories since last visit marked with orange item number and accent.
- Manage what date is used in settings.
- Vote/comment icons turn orange when the count passes 50.
- After 100, the number also turns orange.
- Full URL
- Highlight (probable) re-upped items
- Time taken to reach front page
- Domain and vote count for [dead] items
- Only two lines per story: title + details
- "points" and "comments" compressed into icons
- times/durations abbreviated
- removed submitter's id (can view on click)
- full URL, with domain highlighted
Problems fixed/improvements from previous version (HckrWeb)
- Works without JS; progressive enhancement
- More stories fit on screen.
- About 6 extra stories on desktop. (16 to 22 stories)
- About 4 extra stories on mobile (9 to 13 stories on Pixel 9a)
- Last visit
- Much easier to see if any story was posted before or after last visit.
- Can set the date by selecting from previous visits or datepicker.
- Smart detection of new visits (via a "rolling" session)
- Bug where "More" link could skip past the previous date
- In addition to HckrNews feed, supports all lists/feeds offered by HN.
This project uses SvelteKit as a base. Original README for devs...
Everything you need to build a Svelte project, powered by sv.
If you're seeing this, you've probably already done this step. Congrats!
# create a new project in the current directory
npx sv create
# create a new project in my-app
npx sv create my-appOnce 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 -- --openTo create a production version of your app:
npm run buildYou can preview the production build with npm run preview.
To deploy your app, you may need to install an adapter for your target environment.