🚀 Read this awesome post from Hacker News 📖
📂 **Category**:
💡 **What You’ll Learn**:
Adam Newbold
July 18, 2026
If you’re not familiar with the IndieWeb movement, it’s a practical approach to maintaining your presence on the web that emphasizes fully owning your identity and your content. This is especially relevant now, at a time when a growing number of corporations want to own and control those things for you. The IndieWeb ethos seeks to eliminate external influence and control over both you and your stuff.
And as with any movement, there are a bunch of different services out there aiming to help you plug into this modern independent web. I even run one myself! But I always place my values over profit, so I don’t have any problem sharing the simple truth that you don’t need a fancy subscription blogging service to join the IndieWeb. In fact, when you use one of those services, you’re actually taking a step back from real independence, because your content often winds up living in someone else’s database on someone else’s server. They’ll tell you that’s OK because you can always export it whenever you’d like, in open formats, and of course that’s nice. But you still don’t fully fully own and control your content when you’re dependent on someone else’s service.
There’s nothing wrong with using those services, to be clear. And if you’re already using them and happy with them, that’s great! This guide isn’t for you. But if the idea of having complete independence and control over your content on the web is appealing to you, read on. Because that’s what Hardcore IndieWeb is all about.
Defining Hardcore IndieWeb
Hardcore IndieWeb fully embraces existing IndieWeb principles; there’s really nothing new or different there. The key aspects of Hardcore IndieWeb are control over your content and portability of your website:
- If your content doesn’t primarily exist on your own hard drive, you don’t fully control your content.
- If you don’t have a copy of your published HTML and web assets on your own hard drive, it’s not truly portable.
Why does this matter? Consider what happens if the IndieWeb blogging service you’re using goes belly-up one day. Your ability to move to a new service depends entirely on your ability to export your data. What if you can’t export it? The service provider may have told you that you own your content, but what good does that do if you can’t access it?
From a portability standpoint, consider what happens if you discover that the owner of your IndieWeb blogging service has been outed as engaging in abhorrent behavior or just comes down with a major case of the ick (this has happened before!). Sure, you can export your data in an open format and move house. But now you have to find another service that can work with that format, or convert everything and adopt an entirely new set of tools or processes. And you have to move house, which is a major pain.
If you follow Hardcore IndieWeb, neither of these situations can affect you. Your content remains completely under your own control at all times, and your website exists in a fully published format at all times. The independence is tangible, and you can benefit from it whenever necessary.
The methodology
In many ways—no, actually, in every way—Hardcore IndieWeb mirrors the very same web publishing practices that were used in the 90s when the web was brand new. These were things that I did back then myself, every day, and they worked great! And they still work today, of course, but few people would recognize the approach because we’re now multiple levels deep in hybrid SaaS CMS/SSG solutions tethered to half a dozen markup languages and twice as many template systems. We’re living in a messy and complex web right now, but it doesn’t have to be that way. The complexity is one choice, and the simplicity of Hardcore IndieWeb is a different choice.
The process looks like this:
- Author your web content on your hard drive.
- Preview it in your web browser.
- When you’re happy with what you have, upload it to your web host. Repeat as often as you’d like.
That’s it. It really is that simple. Besides a domain name, here’s what you’ll need:
- A text editor
- A file transfer tool
- A web host
Again, that’s all. You don’t need any other special software. No programming environments or IDEs, no frameworks or shells or CLI tools. And definitely no monthly subscriptions. In the next section, I’ll cover choosing these items, and I’ll suggest a very nice web host that literally only costs $0.01/day, which you can pay-as-you-go (so no subscription).
(You do also need to know some HTML, but everyone can learn HTML. And in reality, you can get away with only knowing a few tags and largely copying and pasting, so don’t sweat it!)
Getting Started
First, you’ll need to find a text editor that you like. Hopefully you already have one, but if not, you can try different editors until you find one that works for you. (I use Nova by Panic, myself.) You can use virtually any editor, because it only needs to support saving files to your disk (and they all do that).
Then, you’ll need a way to transfer files. Part of the reason I use Nova as my editor is that it handles file transfers, too. But there are plenty of options out there. FileZilla is a nice cross-platform app. You can use anything that can transfer files over SSH (or the SFTP protocol).
Finally, you’ll need a place to host your web content. There are a zillion web hosts out there, all with various features and benefits. But for Hardcore IndieWeb, you only need the basics, and you don’t need to spend a lot of money at all. For just $0.01/day, you can run a static website at NearlyFreeSpeech.net, and that’s what I recommend. I’ve had an active account with them since 2008 and they’re awesome!
You can use any web host you’d like, though. If you want to use NearlyFreeSpeech, go ahead and sign up, fund your account (you can kick things off with as little as $0.25), add a site (static, non-production), and you’re good to go. You’ll find your site’s login information (for file transfers) on the Sites tab after clicking on your site name. You’ll get a free subdomain to work with, but you can add your own personal domain on the Domains tab if you’d like (and you should totally do that).
The Process
Once you have your editor, a way to transfer files, and an active account with a web host, you’re ready to get going. At this point, the world is your oyster. You can run any kind of website you’d like, but for this guide, we’ll assume you want to run a blog.
Most of the time, a blog consists of these things:
- A landing page
- Posts/articles
- An archive page
- A feed
If you’ve always assumed that you need a special blogging service or software to maintain these items, that’s totally understandable. But you don’t! You can actually manage these yourself, and it’s really super easy. At this point you might (understandably) be wondering “what kind of person manages their own RSS feed in a text editor?” And the answer is you. You are the kind of person who is totally capable of managing your own RSS feed in your own editor.
We’ll cover that shortly. First, let’s cover the HTML pages.
A Quick Note About Web Pages
If you already have your existing web site or blog in HTML format, you’re in a great position to get started with Hardcore IndieWeb. If you don’t, that’s OK. Depending on where your blog lives today, there are likely ways to export it in HTML or to convert it into HTML. If your blog is huge, you’ll probably want to use a tool to make this easier. If it’s small, maybe you’d enjoy diving into creating your new HTML files yourself (which is always a fun way to revisit your posts and such).
If you don’t know much HTML, you can totally learn it. Heck, I’ll even teach you if you’d like. It’s super fun to learn, and using HTML brings you so much closer to your web content in ways that modern tools just don’t capture. Markdown may be many people’s preferred way to author content, but HTML is the language of the web, and I can personally attest to the fact that there are plenty of occasions where doing something in plain HTML turned out to be far easier than fighting a Markdown parser.
Anyway. If you want to jump in with some ready-made web material to use as a basis for your site, there are a bajillion free web designs and templates out there. Here’s one I just found. You can download something you like, open it in your text editor, and make it your very own.
Landing Page
Your landing page is your home on the web, and you can do whatever you’d like with it. It can show your latest blog post, or several of them, or none of them at all. It can show entire posts or just the first couple of sentences. You’re in complete control here, and you can put whatever you want on that page. If you want to display your latest blog post, just copy and paste it there and add a link to its standalone page. If you want to show your five most recent posts, paste the new one at the top and delete the oldest one at the bottom. You’re now working directly with your content on your own landing page, and you can do whatever you’d like, however you’d like.
This might sound like madness, if you’re fully accustomed to today’s modern template-driven systems for managing blogs and web content. And that’s a totally fair way to feel about it. But consider that this approach offers some unique possibilities that are actually harder to do with template-driven solutions. With this approach, you’re in a position to deviate from the norm. You can take things in different directions. You can apply your creativity in fun and interesting ways, and you’ll never find yourself fighting your CMS/SSG/templating engine/etc. because you’re not using one. It is utterly freeing.
Your landing page should be called index.html and should sit in the root level of your web root (which is /home/public if you’re using NearlyFreeSpeech).
Blog Posts
Blog posts are just web pages. These are super easy to maintain and publish. You can run with any process you’d like, but the simplest approach is to just make a copy of the web page for your last blog post, give it a unique file name, and then edit it with your new blog post content.
This is a good time to think about your site structure and how you want to organize your files. The URLs to your posts will reflect the file structure on the disk. Do you want all of your blog posts to be in a /blog/ section? Then make a blog folder in your web root and store your blog files there. You can name your posts with the desired slug, e.g. the-best-lunch-i-ever-had.html, or you could make folders for them and store the blog posts inside each folder as an index.html file to hide the .html file extension (but contrary to popular belief, it’s a beautiful and honest file extension).
This is also a good time to consider another benefit of Hardcore IndieWeb. When your posts are individual HTML files (not Markdown files or database entries), they can finally be seen as the individual web pages that they truly are. And that means that you can really lean into making all of your posts unique! They don’t all have to be cookie-cutter paper-doll clones of one another; that’s just a bi-product of modern web publishing tools and the cultural influence that they have on our concept of a “blog”. You can now go ahead and make every blog post as special and individual as you’d like. Each post can have its own personality, baked right into its HTML. Individual style, individual appearance, even individual layout. Literally everything is possible with this approach.
Archive Page
Managing your archive page is simple. Make a folder called archive (or whatever you’d like to call it), add an index.html page there, and list your blog posts on the page. You can organize them in any way you wish. You can highlight your favorite posts at the top of the page. You can do anything—it’s your archive page to manage as you please.
Feed
An RSS feed isn’t some magical esoteric web code thing; it’s just a file on disk. And it’s a file that is in a fairly simple format to parse and work with, and you can totally do that in your text editor. It’s really not difficult.
You can get started with a simple Atom feed (100% RSS-compatible and universally supported) by visiting the Atom feed page on Wikipedia, copying the example feed shown halfway down the page, and pasting that into a feed.xml file (or whatever you want to call it). Then just change all of the example.com references and , etc. values to reflect your own domain and information. Finally, just include an section for each post that you want to include in your feed. Set the relevant data within each (dates/times, title, summary, etc.). For the , just grab a fresh UUID. And when you’re finished, copy and paste your feed into the W3C Feed Validation Service to make sure that it can be parsed. If there are any issues, the validator will tell you what needs to be corrected.
Uploading
This is the easiest part! When you’re ready to publish your website, just use your file transfer program to connect to the server and drag your files into the remote server. The first time you publish to your web host, you’ll want to copy everything over. But on subsequent uploads, you can just transfer anything that’s new or changed (e.g. your landing page, new blog post, feed, and archive page).
Next Steps
At this point, you have a fully functioning website that lives primarily on your own computer and is completely portable. This is the Hardcore IndieWeb way. You’re ready for anything: if your host vanished, you can just use another host and upload your website there. You don’t have to worry about critical security vulnerabilities in blogging software or SSG dependencies or anything like that. You are in complete control over every aspect of your web content, and you’re reliant upon no one else.
Where do you go from here? That’s up to you. You don’t have to go anywhere at all. You can follow this exact process forever and you’ll always have a wonderful website that is entirely your own and completely independent.
You could also choose to explore additional tools and processes to support your own workflow. Keep in mind that everything you add creates a dependency on something else, but as long as your content continues to live primarily on your own device and you have a full copy of your ready-to-publish website, you’re A-OK as far as Hardcore IndieWeb goes.
Conclusion
“Did I just read 2,500 words that tell me to write my own HTML and upload it to a web server?” Yeah. You did.
If this seems like ridiculous advice in 2026, I think that’s largely the result of how we’ve strayed so far from the original simplicity we had when working with the web. The layers of technical complexity introduced over the past 30 years, the new additive processes, and the expectations that come with it all combine into a modern approach that turns over more of our control and independence to other people than at any other point in the web’s history. Even under the “IndieWeb” umbrella, so many people have their only copy of their entire web presence entrusted to some guy on the internet who’s promised to take care of it. That’s not real independence, and we should stop pretending that it is.
Hardcore IndieWeb may not be for everyone. But if you care about your words, who holds them, and where and how they appear online, then you might just find that it’s for you. And if while embracing this particular approach you happen to reconnect with the web in a way that so many of us enjoyed early on, experiencing the magic and delight of working directly with HTML and copying files to your own space on a web host, then that’s a heck of an added bonus. Hardcore IndieWeb may sound intense, but the reality is that it’s empowering, fun, and rewarding. And you deserve that.
Need help with any of this? Or just want to join a super nice community of web enthusiasts?
Consider joining omg.lol! You’ll feel right at home with our active community of folks who would love to chat about (or even help with) any aspect of Hardcore IndieWeb.
💬 **What’s your take?**
Share your thoughts in the comments below!
#️⃣ **#Run #website #independently #0.01day**
🕒 **Posted on**: 1784449386
🌟 **Want more?** Click here for more info! 🌟
