How would you go about a low maintenance personal website today?
It seems like there's a lot of ways to go about this that may be overkill, so I'm curious which may avoid that.
Low maintenance in this context is aiming for moderate technical knowledge/setup, lower cost, and portability in case you need to migrate your site and so minimal hassle in that process.
Yep, I mainly used Deviantart as a quick way to move photos from home to external computers to quickly show them to others.
I have used Deviantart for 20 years or so, but this year, I got pissed off for the last time, it is just so slow, it takes ages to browse a gallery.
So I spent a few days building a menu in HTML and CSS that has a few simple effects, and importantly is easy to update, I then uploaded that to a personal webhost, and started creating HTML galleries with digiKam, uploading them there, and updating the menu.
I want to preserve my privacy, so I won't link the site here, but if others are interested, I should be able to share the code of the menu system.
"personal website" means you want a blog with a few static pages
"moderate technical knowledge" means you know how to use a CLI and write some basic JS/CSS.
For this use case, I highly recommend a static site generator framework like Hugo.
Make a repository on GitHub for your Hugo website, and set up your content as markdown files inside the repository.
Then, hook your Hugo website's repository up to a managed static site hosting solution like AWS Amplify or GitHub Pages. Finally, set up your website's domain name and you're done.
Once these pieces are set up your authoring workflow is:
Open your Hugo website locally from a local copy of the Git repo and edit the markdown files to change the content of your site
Once you're happy, commit the result
Amplify / Github pages will automatically pick up the change and redeploy your site with the new content
And that's it. There's no servers to maintain, so the only upgrade you have to do is keep Hugo and any dependencies up to date within your repo.
Thanks, the assumptions are about where I was aiming so this addresses the question pretty well I think.
An added question that this and other comments bring to mind though is, and this is admittedly a super basic question (which I've gone back & forth over asking in NoStupidQuestions tbh), but besides a cleaner and exclusive URL, why might someone go after a domain for a personal site, as in related to them individually?
If you don't have SOME domain name, then people can only visit your site with an IP address.
Additionally, you pretty much have to have a domain name if you want HTTPS encryption - if you don't have an HTTPS certificate, people's browsers will show lots of scary warning indicators on your page.
But if you're asking about buying your own domain name (firstname-lastname.com) vs. using a subdomain from your hosting provider (myblog.wordpress.com) then it comes down to preference. Having your own domain will make you look more professional and get you more clicks on average.
Its free because the files are already public via GitHub, so it doesn't cost GithHub much extra money to run.
Anyone can go to a public GitHub repo and see the files, right? So if the GitHub Pages website's files are in a public repo, all GitHub has to do is slap a domain name in front of those files.
This won't be helpful, but reading this thread makes me think about my angelfire website from, idk, 1998? I had that and a HTML 4.0 bible. Good times. Deleted times 😑
I read that the fediverse equivalent to bandcamp is using a webring, maybe there is or will be a fediverse hosting ecosystem?
Really depends what you want to create but there's nothing wrong with just writing html and css. They're as portable as you can get.
If you're planning to do a lot of editing/posting then a static site genarator would be the next best thing as again you just end up with html and css which can be hosted anywhere. The generator can run on your system. Most are powered by markdown files so the content can (with little work) be migrated to another generator.
Beyond this you're starting to get in to cms or other complex systems which i think is out of the scope of your question.
Yes you can go crazy with SSGs or write your own site but especially if it’s rare that you will blog/update then it’s way better to just use something off the shelf. That’s what I’d do as a software developer. Heck I paid for a static site with a simple web UI to update it just last week to serve as the marketing site for my software product (that I wrote from scratch).
Unless you enjoy tinkering and know programming I would shy away from the SSGs. I used them for years and now I self-host Ghost and even that I’m considering just paying someone else to do since it’s not how I want to spend my time (maintaining it).
You can enable static website hosting on an AWS S3 bucket as long as it's a simple page. At that point it's paid for by the click, if you get enough visits to exceed the free tier.
Yeah! Although, from personal experience reading blogs on Medium, it wouldn't be my first choice simply due to its pushiness to sign up/subscribe to some of the blogs there.
I never read from any one source there consistently enough to remember if that's a general platform element or only partnered/select blog element, and I feel like others unfamiliar with it may feel similar.
I self hosted a blog for a while. Tweaking it was fun, but eventually the novelty wore off. If I ever do it again, I'd probably use something hosted so I spend more time on the content instead of the back end.
Depends on what you need it to do. If you’re looking for something simple for text / minimal images, I'd recommend looking into Static Site Generators like Hugo and using something like GitHub Pages to host.
SSGs are fairly low-maintenance once the set up is out of the way.
I'll add a quick point that might not be obvious. There are actually three things you'll need to consider: a domain name, hosting, and your content.
TL;DR: for a simple blog-ish site, I would recommend DreamHost shared starter plan (USD$84 per year after promotions end, includes a custom domain name) and use GetSimple as the basis for your site (which can be installed from the DreamHost panel). Email costs a little more though.
A domain name typically costs less than USD$20 per year, with some top-level domains (like .online or .xyz) being only a few dollars per year. There are lots of ways to set up a site with a free subdomain (yoursite.hostingprovider.com) if cost is a barrier, but buying your own makes for a shorter and cleaner website name, and you can take it with you if you want to change your hosting. Most companies that offer domain registration will offer hosting as well, and they sometimes bundle them (a low-cost plan on DreamHost includes one domain name for free). Owning your own domain name usually means you have more options for setting up email as well.
For hosting, there are lots of free and easy options that others have mentioned (github pages, etc). Typical low-cost plans from many dedicated hosting companies are around USD$5 per month. Paying for hosting gives you more options for what you can do with your site--if you want WordPress, for example, github pages won't be a hosting option. I've had a great experience with DreamHost, and BlueHost is a solid option as well.
Finally, generating the pages is its own challenge, and there are some wildly different ways of doing it. As others mentioned, I would avoid anything with a database if you can (WordPress being the big one). If you want a blog-ish type of site, I recommend GetSimple (I've had a few non-technical friends who were very happy with it). Or you can use a static site generator, though the workflow for many of those is often not as easy in my experience. Or if you're feeling plucky, you can write the pages in HTML, CSS, and JS, and/or throw some PHP in there. I use skeleton for my site.
If you are looking for true low maintenance, avoid needing a DB. So I'd stay away from the WordPress suggestions. Not to mention keeping WordPress CVE free is often a full time job and the opposite of low maintenance.
I'd use one of the many tools out there that takes Markdown and coverts it to HTML, stick that in a basic CI job on Gitlab or Github to build out my HTML and I just write markdown.
Once that's in place how I would decide if I wanted a custom domain.
If I don't need a custom domain, then I can just augment the pipeline to publish to Gitlab/Github pages.
If I want a custom domain then it depends on budget and expected traffic, but I'd likely just put it on an ECS container or in an S3 bucket and shove cloudfront in front of it, because if it's small enough it will likely qualify for free tier AWS. If it's too big for free tier then I'd stick with a container but likely either put it on a cheap cloud node with Apache and letsencrypt and one of the smaller providers like Linode/DO/Vultr
Appreciate the breakdown! Ngl though you lost me at the end with the ECS container/S3 bucket stuff (as in, I dunno what ECS is, I think S3 bucket may be something akin to a VPS? but yeah), but that may just be an indicator it's much more than I'd probably need/want for my interests.
Another vote for a static site generator. I use Publii on Cloudflare Pages. I switched from Wordpress, and I find the maintenance significantly easier.