Every single person should have their own website. I don’t just mean that we should all rush out to buy a fancy firstname.com domain. Instead, that it would benefit us all, if more people would take an active role in building the free and open web.
As I wrote in Reclaiming Territory in Cyberspace, there are three primary resources in cyberspace:
- Computing Power
We are all lucky, that websites are not at all demanding when it comes to these resources. The biggest concern is storage, with bandwidth being the next most important factor. You need the storage to hold all the files in your website, and the bandwidth to reach your audience. I believe there are many conditions today, that if we were willing, could enable us to truly take the web out of the hands of governments and corporations. Does this sound too good to be true? Allow me to make my case.
Understanding static websites
Static websites can be quite simple or support a wide range of multimedia. Either way, it’s best to think of a static website as a pamphlet or poster that you can easily update. Depending on your ideal audience, it can be better to work with a text and links only but informative website, or include beautiful images, video or animations. This will all depend primarily on where you intend to store the website (in the cloud, or on your machine?) and how much bandwidth you and your audience have access to.
While I am generally a critic of leveraging cloud infrastructure, static sites are one of the major exceptions. Since a static website is like a poster, hosting it on the cloud is akin to putting it up on a commercial, but prominent bulletin board. An underappreciated feature of static websites is that they are inherently unhackable. Like a poster, it can be taken down or defaced, but you’re never going to suffer a data breach or have it infect your systems.
Static Site Generators
What makes static websites more accessible than ever is static site generators, these generators are designed to allow people to ignore the nitty-gritty aspect of web design, and just get to writing content. What really makes static site generators excellent is that they make the job of maintaining a large and complicated website relatively simple for a single person.
The basic process of using any static site generator to build your website is like this:
- Install whichever generator you choose
- Run the generator to build a new project folder
- Browse the Generator’s themes gallery, and import whichever theme suits you
- Use whatever editor(s) you like to modify, copy and create files into where they need to be
- Run the generator command to view changes in real time
Pages are usually written in markdown
Themes are important, they do a lot of really heavy lifting in the end-result of the generated site. Themes will outline what goes in the headers, footers, sidebars and the overall look of the site. Themes will also have control over some of the finer details like social media previews and RSS integration.
This is what’s motivated me to build my two Hugo themes Freedom and Valor from the ground up. They are very much a work in progress, but I appreciate having a fine degree of control. Odds are if you have very specific requirements, modifying an existing theme can also work for you.
Some theme generators will also give you the ability to override parts of the theme. For example, if you want to add icons to the navigation menu, you could copy the existing one into the designated overrides folder and add your icons there.
Enhancement: Version control
Ouch! You’ve gotten hit by a ransomware attack. All your files have been encrypted by a virus, and can’t be recovered unless you hand the hackers some Monero. Thankfully, you’ve been using a self-hosted version control system like Gitea. So you can simply pull down the old version of the website and upload it again. Version control allows you to have a permanent record of changes made over time.
Online version control is also very useful for collaboration. Instead of maintaining the static website alone, you can share access to the repository with others. Many online source control providers will often also include integrated hosting.
Static websites are portable by nature. As long as the site structure is sound (use relative links) you can often put mirrors in multiple locations. This is an excellent way to maintain a resilient presence, instead of relying on a single point of failure. Because static websites are often quite simple and small, multiple uploads of the same content aren’t always so arduous.
Online Source Control:
Want to get started quickly? Github Pages has an excellent overview on how to use Git to push your static site to a repository and get running immediately.
You can also use:
Own your own domain
When you buy your domain, which is your web address online, (e.g. https://libresolutions.network) you’re going to want to own the domain yourself. This means that you purchase your domain directly from a domain registrar. For an often modest yearly fee, you can secure a name on the regular internet. It’s important to have control over the dns records yourself, in case you feel the need to migrate or add additional services.
Often, domain registrars themselves will offer some form of managed hosting. This means some tool like cPanel will be available to you to simply upload the files to the site directly.
You can always run your own web server, although it will require more technical knowledge. Going DIY allows you to reduce as many intermediaries as possible.
Getting on the Dark Web
For those concerned about the increase in draconian control over the Internet, it can be helpful to mirror their content to one or many darknets, such as Tor or I2P. Even as a regular web user, I would highly recommend at least having the knowledge of how to visit websites on the darknet, for we do not know what kind of measures will be used in future crises.
With a static website, you don’t have to worry about complicated things like databases and user accounts. This means you have the advantage of being able to mirror the entire content onto a physical, portable format that can be distributed in person. When paired with version control, it can become a very efficient means of securely distributing large amounts of critical data.
Who knows? Maybe we can start supporting independent websites by purchasing archives in a physical format!