You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: src/content/docs/creating-custom-feeds.mdx
+29-1Lines changed: 29 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -19,6 +19,12 @@ When auto-sourcing isn't enough, you can write your own configuration files to c
19
19
releases](/web-application/reference/versioning-and-releases/) for details.
20
20
</Aside>
21
21
22
+
<Asidetype="tip"title="Use this guide when you need more control">
23
+
Start with included feeds first. If your site is not covered, try [automatic feed
24
+
generation](/web-application/how-to/use-automatic-feed-generation/) next. Reach for a custom config when you
25
+
need a stable, reviewable setup or the generated feed misses important content.
26
+
</Aside>
27
+
22
28
---
23
29
24
30
## When to Use Custom Configs
@@ -35,6 +41,20 @@ When auto-sourcing isn't enough, you can write your own configuration files to c
35
41
36
42
---
37
43
44
+
## Recommended Workflow
45
+
46
+
1.**Inspect the live page** in your browser developer tools
47
+
2.**Write the smallest useful config** that extracts items, titles, and links
48
+
3.**Validate the config** with `html2rss validate your-config.yml`
49
+
4.**Render the feed** with `html2rss feed your-config.yml`
50
+
5.**Add it to `html2rss-web`** so you can use it through your normal instance
51
+
6.**Escalate to `browserless`** if the content is rendered by JavaScript
52
+
53
+
This order keeps iteration fast and makes it easier to see whether the problem is the page structure, your
54
+
selectors, or the fetch strategy.
55
+
56
+
---
57
+
38
58
## How It Works
39
59
40
60
A config file is a simple "recipe" that tells html2rss:
@@ -82,7 +102,7 @@ This says: "Find each article, get the title from the h2 anchor, and get the lin
82
102
83
103
## Your First Config
84
104
85
-
**Step 1:** Look at the website you want to create a feed for. Right-click → "View Page Source" to see the HTML structure.
105
+
**Step 1:** Inspect the website you want to create a feed for. Start with your browser's developer tools to inspect the live DOM. "View Page Source" can still help, but it may miss JavaScript-rendered content.
86
106
87
107
**Step 2:** Create a file called `example.com.yml` with this basic structure:
88
108
@@ -140,6 +160,12 @@ html2rss supports many configuration options:
140
160
141
161
4. **Check the output:** Make sure all items have titles, links, and descriptions
142
162
163
+
## Add It To html2rss-web
164
+
165
+
Once the config works locally, add it to your `feeds.yml` or shared config repository and restart your
166
+
instance. Then open the feed through your normal `html2rss-web` URL and confirm it behaves the same way
167
+
there.
168
+
143
169
---
144
170
145
171
## Sharing Your Config
@@ -177,11 +203,13 @@ html2rss supports many configuration options:
177
203
**For Beginners:**
178
204
179
205
- **[Browse the Feed Directory](/feed-directory/)** - See real-world examples
206
+
- **[Run html2rss-web with Docker](/web-application/getting-started)** - Use the newest integrated behavior
180
207
- **[Learn more about selectors](/ruby-gem/reference/selectors/)** - Master CSS selectors
181
208
- **[Submit your config via GitHub Web](https://github.com/html2rss/html2rss-configs)** - No Git knowledge required!
182
209
183
210
**For Contributors:**
184
211
185
212
- **[Browse existing configs](https://github.com/html2rss/html2rss-configs/tree/master/lib/html2rss/configs)** - See real examples
186
213
- **[Join discussions](https://github.com/orgs/html2rss/discussions)** - Connect with other users
214
+
- **[Learn about strategies](/ruby-gem/reference/strategy/)** - Decide when to use `browserless`
187
215
- **[Learn advanced features](/ruby-gem/how-to/advanced-features/)** - Take your configs to the next level
html2rss-web needs a list of feeds to work with. Download our pre-made list:
108
-
109
-
**Download the feeds.yml file:**
110
-
111
-
- **Using your browser:** Right-click [this link](https://raw.githubusercontent.com/html2rss/html2rss-web/master/config/feeds.yml) → Save As → Name it "feeds.yml" → Save in your html2rss-web folder
112
-
- **Using terminal:** Open Terminal in your html2rss-web folder and run:
Open a terminal in your html2rss-web folder and run:
125
-
126
-
```bash
127
-
docker compose up -d
128
-
```
129
-
130
-
**That's it!** 🎉 html2rss-web is now running.
131
-
132
-
**To verify it's working:**
133
-
134
-
1. Open your web browser
135
-
2. Go to `http://localhost:3000`
136
-
3. You should see the html2rss-web interface with a list of available feeds
137
-
138
-
**If you see the interface, congratulations!** You've successfully set up html2rss-web.
139
-
140
-
---
141
-
142
-
## Using Your Instance
143
-
144
-
### Browse Existing Feeds
145
-
146
-
Your html2rss-web instance comes with pre-configured feeds for popular websites. Browse the list and copy any RSS URL to your feed reader.
147
-
148
-
### Create Auto-Sourced Feeds
149
-
150
-
**Want a feed for a website that's not in the list?**
151
-
152
-
1.**Go to your html2rss-web interface** (http://localhost:3000)
153
-
2.**Enter any website URL** you want to create a feed for
154
-
3.**Click "Generate Feed"** - html2rss will automatically analyze the page
155
-
4.**Copy the RSS URL** and add it to your feed reader
156
-
157
-
**This works for most websites** without any configuration needed!
158
-
159
-
### Add Custom Feeds
160
-
161
-
**Need more control?** You can add custom feed configurations to your `feeds.yml` file. See our [Creating Custom Feeds](/creating-custom-feeds) guide for details.
162
-
163
-
---
164
-
165
-
## Troubleshooting
166
-
167
-
**Common issues when getting started:**
168
-
169
-
-**Instance won't start?** Check that Docker is running and the port isn't already in use
170
-
-**Can't access the interface?** Make sure you're going to `http://localhost:3000`
171
-
-**Auto-sourced feed not working?** Some websites need custom configuration - see our [troubleshooting guide](/troubleshooting/troubleshooting)
0 commit comments