<commit_before>---
author: Aashni
comments: true
date: 2020-04-18 06:01:34+00:00
description: "Learn how to create a website, host it, setup a registration form and newsletter emailing list, all for free! All you need to pay for is the domain name."
layout: post
link: https://aashni.me/blog/how-to-setup-and-host-a-website-for-free/
slug: how-to-setup-and-host-a-website-for-free
title: "How To Setup and Host A Website For Free"
categories:
  - Web Development
  - Tutorial
  - Guide
  - Frontend
  - Netlify
  - Buttondown.email
---

I need to setup a landing page for one of my new projects, [Tech Nyumba](https://technyumba.com), and I thought I'd take you along for the journey. So wether you're trying to create a personal website, portfolio of all your work or a landing page for your brand spanking new startup, this guide is for you! I'll walk you through how to create and setup a very basic website, using github for code management then hosting it on Netlify. In my next blog post, I'll share how you can use a combination of Netlify and Buttondown Email to create a contact form and newsletter subscription form.

Hosting your website is completely free using the method I outline below, the only thing you'll need to pay for is your domain name. Speaking of domains, that's a great place for us to start this journey.

## Registering your domain

Your domain is what people would enter into their search bar in order to find your website. I generally like finding a relevant but catchy name. Once you've got your domain selected, you can use a domain name provider like [namecheap](https://namecheap.com) to register your domain. Simply enter your desired domain into the search bar, make sure it's available, then follow the prompts.

![Search for your domain](./setup-website-free-001.png)

We're not going to configure the domain just yet. We'll move on to getting the rest of your website running first.

## Github

Github is a great tool to manage and maintain your code projects, whether you're working alone or with a team. If you're experienced with creating a github repo, go ahead and create one and clone it to your desktop, then skip to the next section. If you haven't already, create an account at [github.com](https://github.com). Next you'll want to create a [new repository](https://github.com/new). I recommend picking a name related to your website and adding a description. Here's what I filled in.

![Create a new repository](./setup-website-free-002.png)
<commit_msg>updating how to host website for free blog description to remove newsletter portion<commit_after>---
author: Aashni
comments: true
date: 2020-04-18 06:01:34+00:00
description: "you're trying to create a personal website, portfolio of all your work or a landing page for your brand spanking new startup, this guide is for you! I'll walk you through how to create and setup a very basic website, using github for code management then hosting it on Netlify."
layout: post
link: https://aashni.me/blog/how-to-setup-and-host-a-website-for-free/
slug: how-to-setup-and-host-a-website-for-free
title: "How To Setup and Host A Website For Free"
categories:
  - Web Development
  - Tutorial
  - Guide
  - Frontend
  - Netlify
  - Buttondown.email
---

I need to setup a landing page for one of my new projects, [Tech Nyumba](https://technyumba.com), and I thought I'd take you along for the journey. So wether you're trying to create a personal website, portfolio of all your work or a landing page for your brand spanking new startup, this guide is for you! I'll walk you through how to create and setup a very basic website, using github for code management then hosting it on Netlify. In my next blog post, I'll share how you can use a combination of Netlify and Buttondown Email to create a contact form and newsletter subscription form.

Hosting your website is completely free using the method I outline below, the only thing you'll need to pay for is your domain name. Speaking of domains, that's a great place for us to start this journey.

## Registering your domain

Your domain is what people would enter into their search bar in order to find your website. I generally like finding a relevant but catchy name. Once you've got your domain selected, you can use a domain name provider like [namecheap](https://namecheap.com) to register your domain. Simply enter your desired domain into the search bar, make sure it's available, then follow the prompts.

![Search for your domain](./setup-website-free-001.png)

We're not going to configure the domain just yet. We'll move on to getting the rest of your website running first.

## Github

Github is a great tool to manage and maintain your code projects, whether you're working alone or with a team. If you're experienced with creating a github repo, go ahead and create one and clone it to your desktop, then skip to the next section. If you haven't already, create an account at [github.com](https://github.com). Next you'll want to create a [new repository](https://github.com/new). I recommend picking a name related to your website and adding a description. Here's what I filled in.

![Create a new repository](./setup-website-free-002.png)

{'fraction_non_alphanumeric': 0.0661284121491734, 'fraction_numerical': 0.00922722029988466, 'mean_word_length': 4.141304347826087, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 10, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 2, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3631985', 'n_tokens_mistral': 1431, 'n_tokens_neox': 1340, 'n_words': 789}