22
33# html2rss-web
44
5- html2rss-web converts arbitrary websites into RSS 2.0 feeds with a slim Ruby backend and an Astro-powered frontend.
5+ html2rss-web converts arbitrary websites into RSS 2.0 feeds with a slim Ruby backend and a Preact frontend.
66
77## Links
88
@@ -12,25 +12,16 @@ html2rss-web converts arbitrary websites into RSS 2.0 feeds with a slim Ruby bac
1212
1313## Highlights
1414
15- - Responsive Astro interface with gallery and custom feed creation .
15+ - Responsive Preact interface for demo, sign-in, conversion, and result flows .
1616- Automatic source discovery with token-scoped permissions.
1717- Signed public feed URLs that work in standard RSS readers.
1818- Built-in SSRF defences, input validation, and HMAC-protected tokens.
1919
2020## Architecture
2121
2222- ** Backend:** Ruby + Roda, backed by the ` html2rss ` gem for extraction.
23- - ** Frontend:** Astro static site with progressive enhancement .
23+ - ** Frontend:** Preact app built with Vite into ` public/frontend ` .
2424- ** Distribution:** Docker Compose by default; other deployments require manual wiring.
25-
26- ## Documentation
27-
28- In-repo docs live under ` frontend/src/content/docs/ ` and are published by Astro.
29-
30- - [ Configuration Guide] ( frontend/src/content/docs/configuration.md )
31- - [ Security Guide] ( frontend/src/content/docs/security.md )
32- - [ REST API v1] ( frontend/src/content/docs/api/v1.md )
33- - [ Testing Overview] ( frontend/src/content/docs/testing.md )
3425- [ v2 Migration Guide] ( docs/migrations/v2.md )
3526
3627## REST API Snapshot
@@ -73,17 +64,17 @@ bundle exec rspec
7364make openapi
7465```
7566
76- Dev URLs: Ruby app at ` http://localhost:4000 ` , Astro dev server at ` http://localhost:4001 ` .
67+ Dev URLs: Ruby app at ` http://localhost:4000 ` , frontend dev server at ` http://localhost:4001 ` .
7768
7869## Make Targets
7970
8071| Command | Purpose |
8172| -------------------- | ------------------------------------------------------- |
8273| ` make help ` | List available shortcuts. |
8374| ` make setup ` | Install Ruby and Node dependencies. |
84- | ` make dev ` | Run Ruby (port 4000) and Astro (port 4001) dev servers. |
75+ | ` make dev ` | Run Ruby (port 4000) and frontend (port 4001) dev servers. |
8576| ` make dev-ruby ` | Start only the Ruby server. |
86- | ` make dev-frontend ` | Start only the Astro dev server (port 4001). |
77+ | ` make dev-frontend ` | Start only the frontend dev server (port 4001). |
8778| ` make test ` | Run Ruby and frontend test suites. |
8879| ` make test-ruby ` | Run Ruby specs. |
8980| ` make test-frontend ` | Run frontend unit and contract tests. |
@@ -105,8 +96,8 @@ The OpenAPI file is generated from Ruby request specs only.
10596
10697| Command | Purpose |
10798| ----------------------- | --------------------------------------------- |
108- | ` npm run dev ` | Astro dev server with hot reload (port 4001). |
109- | ` npm run build ` | Production build. |
99+ | ` npm run dev ` | Vite dev server with hot reload (port 4001). |
100+ | ` npm run build ` | Build static assets into ` public/frontend ` . |
110101| ` npm run test:run ` | Unit tests (Vitest). |
111102| ` npm run test:contract ` | Contract tests with MSW. |
112103
0 commit comments