yujiri.xyz

Software

What goes into a website and how to make one

I generally encourage having personal websites. They have a lot of uses, and contrary to the widespread anti-self-promotion sentiment, I actually like it when people link themselves. It's a way for them to present a more complete and thought out perspective than they likely would if they were expected to type something from scratch every time they got into the same argument. And likewise just saves time.

Stop freaking out about self-promotion

So I thought I'd make a sorta guide on how to make them aimed at people with little technical knowledge. (This involves *getting* some technical knowledge, but not as much as you might think.)

First, there are a lot of "website builder" platforms or Content Management Systems out there, like Wordpress and Wix. These aren't what I'm on about. They're a quick path to putting up some content, but they don't give you full control over the website - you're limited to what the platform offers as far as post format and organization and can't use it to do things outside the box of what they're meant for. (You actually can self-host Wordpress; I'm just talking about the hosted service that gets advertised.)

Wix review

This guide is gonna be about "the real way" which has the following benefits:

So what I'm getting at here is, the quick and easy path leads to the dark side :P

Components of a website

You will need:

Wonderful explanation of the Domain Name System

Ubuntu command-line tutorial

PuTTY

Nginx documentation

Something that's not required but recommended is an HTTPS certificate, so users can connect to your site securely without seeing a scary warning message. (Sites without HTTPS support are also penalized in search results.) These used to be expensive, but nowadays you can get one for free using a tool like acme.sh.

HTTPS

acme.sh

Content

It's possible to just write a plain text file and have Nginx or another web server program serve it. That wouldn't be very interesting though, because plain text doesn't allow for any kind of markup such as headings, italics, and clickable links. For real web content, there are three core technologies involved:

HTMLDog tutorial

HTMLDog CSS tutorial

That's all the ingredients to a website! If you're following this and get stuck, feel free to ask me.

I also happen to have made a project called Didact that aims to do the busywork for you without taking away any of your flexibility.

Didact

Proxied content from gemini://yujiri.xyz/software/website-guide.gmi

Gemini request details:

Original URL
gemini://yujiri.xyz/software/website-guide.gmi
Status code
Success
Meta
text/gemini; lang=en
Proxied by
kineto

Be advised that no attempt was made to verify the remote SSL certificate.

What is Gemini?