f76c44a7e6830f4fc6e431927ee65533c84bb2a9
Implement saveScrollState, restoreScrollState, and clearScrollState methods in RantFeed component, storing anchor rant ID and scroll offset per page. Wire up initFeed calls in CollabsPage, HomePage, StoriesPage, WeeklyPage, and SearchPage to set unique state keys (feed_state_collabs, feed_state_home, etc.) enabling seamless scroll restoration on navigation back.
Rantii
DevRant client built with vanilla JavaScript, Web Components, and CSS.
Requirements
- Python 3.8+
- aiohttp (
pip install aiohttp)
Run
python3 proxy.py
Open http://localhost:8101
Features
- Browse rants, weekly challenges, collabs, stories
- User profiles and notifications
- Voting, commenting, posting
- Search
- 7 themes: dark, light, black, white, ocean, forest, sunset
- PWA installable
- Offline support via service worker
Structure
rantii/
├── index.html
├── proxy.py
├── manifest.json
├── sw.js
├── css/
│ ├── base.css
│ ├── variables.css
│ ├── themes/
│ └── components/
├── js/
│ ├── app.js
│ ├── api/
│ ├── services/
│ ├── components/
│ ├── pages/
│ └── utils/
├── lib/
│ ├── marked.min.js
│ └── highlight.min.js
└── assets/
Author
retoor retoor@molodetz.nl
Description
devRant front-end with markdown, syntax highlighting, url previews and youtube / image embedding.
672 KiB
Languages
JavaScript
73.6%
CSS
19.1%
Python
6.2%
HTML
1%