Lovingly written and submitted by Xandra.
Yes, you can build a website, and using nothing but your keyboard and a text editor! Anyone can learn how to code a website, and thanks to the many tutorials and documentation around on the web, you can get started for free as you learn. The best part about building your own website is that you have complete control over how you want it to look, behave, and everything is up to you.
Building a website can seem difficult, but half the battle is just getting started! We wanted to put this guide together as an easy compilation of tutorials and places to learn exactly what you need to get started.
Here are some common misconceptions about coding your own website:
None of these are true!
We hope this guide helps make everything feel more accessible to you, because it is! The internet belongs to all of us, so be sure to stake your claim in it.
There is a whole hobby surrounding building websites for personal use. Websites can cover, display, or talk about anything you're interested in, and building a website can be a great way to supplement your already-existing hobbies. Before you start down the path of building your own website, think about what type of content would be the most motivating to build or maintain. For instance, what is missing from social media profiles? Human context. You're more than just posting images to Instagram or funny statuses on Twitter. Having a website can fully encompass all different types of media all in one place, showcasing the full breadth of your interests.
What can a website be about? Here's some ideas from the community:
Or your website can just be all about you, which could include all of these things!
While I'm sure you've heard of services like Wix and Squarespace from your favorite podcasts, what you want for this is a webhost or a hosting provider. Most likely, what you're looking for is static hosting. Services like Wix and Squarespace are good options for professional portfolios, business websites, and stores, but as far as individualized and unique websites go, these are not good options for expressive, hand-coded, personal websites.
If you want a standard blog that looks like every other website out there, then sure, maybe give those hosts a try with standard templates. If you want to learn skills that not only help you create a website for you to display whatever you want and express yourself but also help you expand your skillset that could be used for jobs, projects, or a hobby all on its own, then let's keep going!
Webhosts have been around for a long time, and because of this, we've generally figured out who the better ones are (spoiler: the ones that have been around for a long time). The good news is, depending on the webhost, you might not even have to buy a domain to start coding, which is perfect for a beginner. Many free webhosts offer an included subdomain and some paid webhosts offer an included domain, so you will have a URL ready to go that you can begin linking and sharing.
💡 More might be listed on the 32-Bit Cafe's Resource List.
Your host will likely either have a web interface system to upload your site, but if not, you'll need to dig into the host's documentation about how to upload your files. The best way to learn is to jump in and try!
The below table is a compilation of methods to upload your site using the hosts suggested above, ranked in level of difficulty. None of these are hard, but some may require some additional learning to understand. Ultimately, you want to make sure you're reading and understanding how things work to better learn how to use these methods to your advantage.
A web interface means that the uploading process is entirely accessible from your browser, usually through an upload form or a button to find files on your computer. FTP (File Transfer Protocol) means transferring (often dragging and dropping) files from one server to another. A repository is using Git to push your files to the published site, but this tends to be a more advanced method.
|Absolute beginner's guide to Neocities
|How do I upload my site to Dreamhost?
|NearlyFreeSpeech.NET Getting Started Guide
|How to Upload Files to an FTP Server
|Publish and share your own website for free with GitHub
A domain, such as 32bit.cafe, can be a great way to have a catchy site name or have something short to share easily. And, if anything happens to any of your hosts, you can always transfer your domain to your new host. A domain is also good way to maintain a short URL, which can be easier to share or remember. The great news is that some webhosts can either give you a free domain with paid hosting or you can buy domains through the host. There's a couple of different routes to go, but it's completely up to you. Try not to use any of EIG/Newfold Digital providers if you can avoid it.
You don't need images or a bunch of custom graphics to get you started. You can make a website entirely from text and coded shapes, just like the 32-Bit Cafe!
With some webhosts, you are able to edit and save your
.html files directly using their web interface. However, since it's always best to have a backup, you can have a built-in backup by creating and editing your
.html files locally. You can access your local files and test your website as you go. Just open your
.html file in your favorite browser and begin testing!
Unsure how to structure your website files for easy reference and uploading? Check out our Folder Structure 101 guide.
How do you make
.html files? Since we're looking for ways to code our websites by hand, any plaintext editor (that makes
.txt files) is what you're looking for here. If you're looking for a different way of creating your website, a drag-and-drop webhost is going to be the best course of action. The best kind of tool is one that you'll use, so be sure to try out different types of editors and builders that make sense for the way you digest, process, and convey information.
Coding it by hand is really the best way to completely control the look and feel of every aspect of your website. Here are a list of some favorites, but it may make sense for you to start with your operating system's default, such as Windows' Notepad, to get started.
You can just open your text editor, put in some HTML, and Save As... the file as an
.html file instead of a
.txt in a folder on your computer. Open it in your favorite browser—boom!
There are so many tutorials across the web, so we want to link some here that will take you, from start to finish, how to code your website. Some tutorials here even have barebones website layouts, so you can have a framework to the content you want to have inside of it.
The list here might seem like a lot at first glance, but it's not meant to overwhelm you with a lot of information. The idea here is to give you options of the best voice, method, and style of learning specific to you. Most of the time, whether someone "gets" something depends on the teacher, not the student. There are tutorials here that will guide you from start to finish, starting with a complete blank slate about making your own website.
You might learn just by trying things out on your own, so included here is documentation for HTML and reference material so you can dive in by messing around in the playground you're creating.
💡 More might be listed on the 32-Bit Cafe's Resource List.
If you have to pick an order of what to learn, understand HTML before diving into CSS. It's hard to put clothes on a stick figure you're not sure the size of yet! CSS heavily relies on understanding how different HTML elements work with each other, so learning how to structure your site with HTML first will put you at an advantage in learning CSS.
Don't get discouraged if you have trouble with coding. Everyone does, no matter the skill level or how long we've been doing it! Even professional web developers have to search online for the solution to their problems every once in a while. Compare your work to the work of others and see how other people accomplish the same things you want to. There's never just one way to code something.
It can be really helpful to use your favorite search engine to search for keywords like "how to do XYZ in HTML" if there's something specific you want to learn how to code. Learning how to research your problem by searching keywords like "how to make two-column layout html" or "make an image gallery in HTML and CSS only" will help you so much in the future. If you ever run into issues, searching online will often yield you the answer on forums and websites. If you're coding alongside a tutorial and don't really understand, try breaking apart the problem to get to the crux of it. Coding, sometimes, is a puzzle! That's why it's so, so satisfying when you finally fix a problem that's been holding up your website.
The next step of having a website is having people see it! This part is totally optional, but knowing folks are visiting your site can be a real motivational push to maintain and keep your site up to date. On Neocities, there is a built-in following/activity feed, where you can see sites that are being updated in real time and find websites to follow that you enjoy. You can also find directories of websites for "this side of the web" including personal sites, like Indieseek.xyz, Peelopaalu, List-Me.com, and Link Lane.
Webring directories, like Ray's Webring List, highlight that webrings are the best way to be linked by a wide array of like-minded folks. Webrings aren't seen around the web as often anymore since the social web has taken over, but they've been steadily growing once more as a place for websites to interconnect. Once you've published your site, check out webrings and see which ones you or your site falls into. You very well might even make some friends!
In visiting a lot of sites, you might begin seeing that there's static ways of interacting with the website owner: guestbooks, shoutboxes (also known as Cbox), and comment systems. It's polite to comment on the site you're visiting; in particular, it'll make that person's day to give them a compliment about some aspect of their site! It's also a great way to get your site out there, since whoever is receiving your comment will likely come to your site to return the favor and browse yours. (And then you'll see how good it feels!)
Want to learn more about interacting with other websites once you have yours built? Check out our Interacting with Other Websites guide.
At some point, you feel like you've added everything you've thought of to your website. Struggling to come up with ideas and seeing websites that look "better" than yours, you might begin to slowly dedicate less and less time to this new hobby of yours. I implore you to keep at it!
Your website does not have to be updated every week in order to be a participant in the personal web. Change up your layout once a year or every season. Talk about something important to you every six months. Whatever level of activity you can fit into your life, the consistency is what is most important. Start a blog? Maintain it. Have a to-do list? Check off items. Show progression through your website as you journey through your life, so your website can reflect the person you are now.
Need some more ideas for pages to add to your personal site or ways to improve? Our Ideas for Your Personal Website guide has you covered.
Learning more about how HTML and CSS interact can eventually open you up to advanced methods of design, allowing you to experiment with new methods and ways to display your content. You'll learn different ways to design your site, and you might want to change up your layout! All it takes is for you to search for it and seek out code snippets, CSS tricks, and other ways to improve your coding.
Keep in mind that this isn't a competition, and there's no Hall of Fame here. People will enjoy your site because of what you put on it, not because it's the best-coded website ever (whatever that means). Nobody is comparing your site to someone else's, because they exist for different reasons. You might showcase your photography, which will look completely different from a site of someone displaying their pixel art.
We all started where you are now, regardless of where we are now. You are not alone, and a ton of communities like the 32-Bit Cafe exist because we want you to create the website you want. If you eventually outgrow the current iteration, change things up or start all over again. It's your world!