How weekend-project-space/web2rss works
web2rss is a Flask service that turns website URLs into RSS feeds, with AI-assisted parser generation, route sharing, and RSS proxying. The main workflow discovers or selects a route, fetches the source page, runs its parser, and returns cached RSS XML. Users can also generate parser code with AI and register it as a route. The graph reflects the inspected application and support code; README capabilities are included where their implementation was not sampled, with uncertain wiring omitted.
Main entry points: app.py Flask endpoints · router.py Route registry · fetch.py Page fetcher · gpt.py AI code generation
Components 17
Web application
- Flask endpoints
app.py - Feed cache
app.py - Configuration
support/config.py
Route management
- Route registry
support/router.py - Route handler
support/router.py - Route records
router.txt
RSS generation
- Parser modules
repo - Parser runtime
support/dyncall.py - Page fetcher
support/fetch.py - Content extraction
support/url2mc.py - Example parsers
repo/demo.py
External services
- AI code generation
support/gpt.py
Other components
- User
- Website sources
- GPT API
- Remote router
- RSS proxy
Connections 24
- User → Flask endpoints: requests
- Flask endpoints → Route registry: searches routes
- Flask endpoints → Feed cache: reads and writes
- Flask endpoints → AI code generation: requests code
- AI code generation → Page fetcher: fetches page
- AI code generation → GPT API: sends prompt
- AI code generation → Flask endpoints: returns code
- Flask endpoints → Parser runtime: validates parser
- Flask endpoints → Route registry: adds or pulls
- Route registry → Route records: reads and appends
- Route registry → Parser modules: writes pulled parser
- Route registry → Remote router: fetches shared routes
- Route registry → Page fetcher: probes URL
- Route registry → Route handler: selects route
- Route handler → Parser runtime: loads parser
- Parser runtime → Parser modules: imports module
- Example parsers → Page fetcher: fetches page
- Route handler → Page fetcher: proxies source
- Route handler → Content extraction: enriches preview
- Content extraction → Page fetcher: fetches article
- Page fetcher → Website sources: requests page
- Page fetcher → RSS proxy: retries via proxy
- Flask endpoints → Configuration: loads settings
- Route registry → Configuration: reads settings