How to create an RSS Feed (using Neocities)
Originally Posted 9/11/24
So, you want to make an RSS feed? You've come to the right spot! I'll teach you how I do it, but please know there are many other ways to do it. Let's go over the steps below:
- Find a spot on your computer where you'd like to store your RSS feed file as well as HTML files. Preferably some place where you can back these files up easily.
- I'd recommend making a really good file and folder structure to begin with, as it makes things easier down the line. So for example, I have a folder called "Blogs" and another called "RSS". If you're only going to have 1 RSS feed though, a whole folder for it is not necessary.
- Create a .xml file in that location
- On windows, this can easily be done with something like Notepad by just creating a file whose name is "Rss.xml" (or whatever you want to call it as long as it has .xml at the end). You should also be able to change file type if you do a "Save as"
- I'd recommend using Notepad ++ or Microsoft Visual Studio Code, as those programs make editing text files a bit easier
- Copy the following into that file:
- Everything before "Channel" I'm not entirely sure what it does, but I know it's important so leave it
- "Title" is the title of your RSS Feed
- "link" is the link to your website. Once you host your files somewhere this would be your base website. I'll be going over this when we get to neocities
- "description" is the description of your website or what people can expect from the RSS feed
- "image" is info about the image you'd like to include with your RSS feed. Most of the RSS feed readers I know will display this image whenever there's a new item in your RSS Feed.
- "atom:link" is the link to where your RSS feed is hosted. At this point you can leave that blank, but once we have Neocities setup we can put a link there
- Everything under "item" is each individual "post" in your RSS feed. New RSS feed items go to the top of your RSS feed. I'd recommend saving either this first rss document or at the very least the item section as a separate file called "Item template" or something like that. When you create a new item for your RSS feed, you can then just copy and paste that and change the needed info.
- "Title" here is the title for your individual post
- "Link" is the direct link to the post itself
- "guid" is a unique ID. You might as well copy the URL again
- "pubdate" needs to be in that format. Use unix timestamp to help you here
- "Description" is the description for your post or article or whatever
- "Category" is a category for your article post or whatever. This is mostly to help you stay organized if you need to find stuff later.
- "Content:encoded" okay, so this section is the meat and bones. After "Cdata[" you post your entire HTML post. This line is basically telling RSS feed readers to read the next bit as html. This can be helpful especially when you're trying to post code (like I have done) and you don't want RSS feeds to get confused and treat it like code they should use themselves. (Though as I say that I'm now worried I'll run into issues... I guess we shall see)
- Edit the info in that file to your own info, rather than mine. Save the file.
Let's go over what the above means and what you need to change. I'll be going from the top to the bottom of that code.
Okay, let's now head over to Neocities
Note: there are many other website hosts you can use. This is just the one I'm familiar with
- Sign up for Neocities.
- You put in a username, email, password, etc.
- I'd recommend sticking with the free plan for now. Can always upgrade later
- Put in the confirmation code sent to your email
- For me it then brought me to a "Let's get Started page". You can click the "Start Tutorial" button from here if you'd like, however I'm going to continue this tutorial as if you went to the dashboard
- In your dashboard, I'd recommend creating a folder called "Posts" and "RSS_Feeds" (or something similar that makes sense to you). The important thing is the location of your RSS feed never changes.
- Upload your current RSS feed file from your computer into Neocities, wherever you want to save it
- Note: You can technically only have an RSS feed in Neocities and not keep a copy on your computer. I recommend having it in both locations though so in the event either your computer crashes or Neocities disappears, you still have everything.
- Once your RSS feed file is uploaded to Neocities, you can click on it and it should open it in a new tab. This will give you the link you need to go back into the RSS feed on your computer and neocities and update the "Link" fields.
- For the link to your webiste in general, you should be able to click on your URL on the top of your dashboard (where it says your website name) and similarly that'll open in a new tab and you can copy the address for your new website
- You can also upload photos that you'll want to include in your posts, or at least the photo for your RSS feed, to your site in neocities. Again, I'd recommend creating a folder or something first, but then you can grab the URL for that from here.
- Voila, you have an RSS feed.
We're not quite done though. You need to learn HTML now.
Don't worry though! It's relatively straight forward and Neocities has some pretty good tutorials. I'll also try to go over the basics below. If you know HTML already, the process from here is make an html document, type up your post, upload it to Neocities, and then copy and paste the post into your RSS feed where indicated above.
Another thing to note, is the format for things in an html document is "<" "letters or something" "/ letters or something>". In order to talk about it here, without my website interpreting it as actual code, I'm just going to be saying what goes between the less than sign and greater than sign (note: no space between the signs and what you type in the middle). But please know it does not include quotes. You can see what I mean in the RSS feed above.
Some common HTML parts
- p is for "Paragraph". It's what you'll use for most of the text you write.
- img src="" is for images. You put the link between the "". Before the greater than sign for the end of the image, make sure to include an alt="". Alt text is what screen readers use to explain what the image is. Also notably for this one, you don't need a /img at the end, just a greater than sign.
- h1 is for "Heading 1". These are headings. If you want another heading under heading 1, you'd do h2. And if you wanted a heading under that you'd do h3. I think it goes all the way to h6.
- ol is for "Ordered List". I've used them a lot in this post, they provide a numbered list.
- ul is for "unordered list". This provides a bulleted list.
- li is for "List item". You use these between the ol and /ol or ul and /ul. These are the actual things that are numbered or bulleted
- a href="" is for linking things. It's a bit.. weird. But you put the url between the "". To end the link, it's a /a at the end. So it looks like less than sign a href="url" greater than sign "whatever words you want to be clickable" less than sign /a greater than sign. This one may be simpler for you to just look up to see the formatting.
And those are pretty much the basics
There are a lot of resources online to help you figure out html. You can also look to see how other people have formatted their site if you're curious or want to do something similar. On most web browsers, if you press F12 it'll bring up a console that will show you the HTML and CSS for the page.
With your HTML Knowledge, you now make an html file and write out whatever you want to post.
From there you just upload the file to neocities, copy/ paste the HTML into your RSS feed item between the cdata[ and ], update anything else in your RSS feed item, and you should be good to go!
Typical work flow once it's setup
For me, the typical work flow is write out the HTML post on my computer. Once it's done, upload it to neocities. From there, open the RSS feed saved on my computer, as well as the template RSS feed. Copy the template item from the template feed into my actual feed (on the top of the feed) on my computer. Change relevant info, including pasting in the HTML from my post. Copy the whole new item and paste it into the feed that is on Neocities. Save everything and that's it.
As long as you just want an RSS feed, you are all set at this point. If you also want a functioning website, there is more HTML needed as well as you'll need to learn CSS. However, that's it for this tutorial.
Wrap Up
If you have any questions, or need help, or something I said wasn't clear, please feel free to reach out to me at steventanzimedia@gmail.com. Also, I highly recommend subscribing to your own feeds to make sure they work. There are plenty of RSS feed readers out there. I use FreshRSS currently, but I liked The Old Reader when I wasn't self hosting.