DEV Community

Loralighte
Loralighte

Posted on

How To: Have a Personal Website on a Tight Budget

Early in any freelancer, college grad, high school student, or any other developer's career, there is a need for a website. This website will need a domain, an email, and HTTPS support. In all honesty, most new developers have a small budget. Lucky you, this tutorial is budgeted for anywhere from nothing to fifteen dollars (USD).

Website Hosting

You always want to know who you want to host with before you do anything with the rest. Who you can host with can determine anything from DNS, the HTML/CSS, the email service, and where you can buy the domain. There are several hosts to pick from, and some are not free. I will mention only absolutely free ones.

Heroku is a PAAS company owned by Salesforce. It is one I see recommended very often and has support for many languages. Heroku is not user-friendly, at least for some. Heroku is also very limited in terms of free plans, with a significant amount of limiting.

Netlify is another PAAS, like Heroku, but independently and privately owned. It only permits one person on the account, and some limitations of its own, but is one of the more lenient hosts. Like Heroku, it is not user-friendly for most but has a better workflow for static websites. Heroku would be more suitable for complicated websites, while Netlify is a reldigntityiable middle-ground solution. However, most developers need a reliable, long-lasting, and static website, where would one of those be?

GitHub Pages is a sub-service for web-development developed for GitHub users. GitHub Pages allows for a static website, it doesn't have to be simple, but without a backend. You would not be allowed to run anything with a database, for example, for several good reasons. GitHub Pages are available to public repositories, and there are hundreds of users using GitHub Pages, so they want to limit resource use.

Now there are several other solutions out there, both free and paid, and you can host your own if you wish. These are what I recommend.

DNS Management / SSL

It is probably best to know who your DNS manager will be before you buy the domain. Not only will it help you pick email services a little easier, but even HTTPS management, and even subdomain management. For this, I usually recommend Cloudflare, as you can kill two birds with one stone. Three if you want to buy a domain from them. '

For SSL, you have many choices, such as Cloudflare and LetsEncrypt, as the two most popular free ones.

Email Provider

Before you pick your domain registrar, know where you can host your email. Why? Some email services allow you to buy domains with their service, like Hover and Zoho, for example. Some website hosts will also provide either free or paid email services. Also, note that no two email hosts are equal. For example, many people will go to Gmail as the first solution, but Gmail is limited. Some providers will allow for custom domains for free, paid once, paid monthly, and free but limited. Others run on BYOD only. Some seem paid only but have free options hidden. Some have email limits, some limits are high, and others are low. The point is, email hosting has a lot of options, but I come with three. One has free unlimited emails but no free custom domains, one is a provider that runs near-exclusively on the BYOD system, and the other is a balanced mix of the two.

Gmail is a well-known email provider. Google owns Gmail but is known for its privacy concerns. Gmail is centralized in many ways and is suggested if someone is using a Google product. Gmail only allows for accounts with the @gmail.com email, and common names are harder to get simple email addresses.

Zoho is a lesser-known email provider. Zoho is a company with many services, with Zoho Mail being one of them. Zoho is also known for web hosting, domain buying/management, and much more. Zoho Mail has a hidden option for a free custom domain but is not hard to discover.

Migadu is a somewhat unknown email provider. It forces you into bringing a custom domain, at least when I first set it up an hour before writing this. It is free, but you will get up to 1GB of email space. Migadu admits it is not for everyone, and it is not.

Domain Registrar

Where to buy the domain then? Well, it's not the best to go by that metric. In all honesty, pick the domain extension you want and find where it is cheapest and allows you to work with your tools. I recommend Name.com and Namecheap. People will say "use this" or "use that," but it doesn't matter. If you want a free domain, but with the costs of limitations, the time you can use it, your soul, and your dignity, then Freenom is where you would get those. Freenom does limit which TLDs you can get for free, but they exist.

The only real limitations with your registrar might come from if you buy it from a web host or email host. Other than that, you have no real major issues.

Top comments (20)

Collapse
 
yokotobe profile image
yokotobe
  1. Register Domain
  2. Setup a web hosting on Raspberri Pi and put in your own home network
  3. Setup home router and forward http & https port to RaspPi IP address
  4. Set your own home IP Address to A record of domain's DNS
Collapse
 
kailyons profile image
Loralighte

Some ISP's will upcharge for stuff like this, and can make changes to the prices because of self-hosting. Some areas are also not as fortunate to have multiple ISP's available to switch.

Collapse
 
yokotobe profile image
yokotobe

Thanks to opinion, as long as website does not have high traffic, ISP would be OK.

Collapse
 
petoroland profile image
Roland Pető

AWS S3+CloudFront is an option too. You can buy a domain name using Route53, you get a free SSL certificate, because you are using an AWS service to host your content. If you would like to have dynamic content, then you can try out Lambda. With a personal webpage, you will definitely fit into the free tier. The only expense is the domain name.

Collapse
 
aaronktberry profile image
Aaron Berry

Yeah this is definitely an easy solution with alot of great documentation / articles on all of the different services involved.

Collapse
 
kailyons profile image
Loralighte

This is a solution I did not know myself! I will look into it when I can

Collapse
 
codemouse92 profile image
Jason C. McDonald • Edited

A few notes:

  1. Your domain registrar DOES matter on the point of whether they'll protect your privacy by default or not. Gandi.net is one that does, although there are others. You should absolutely never have to pay for whois privacy! (Avoid GoDaddy like the plague for that reason, among others.) Also, be sure to shop around and make sure you're paying market price for a domain. You should only be paying once a year, you should be able to point the domain to anywhere you want, and there should be no limits on what ports you can use.

  2. You can host your own email on the domain name for free with any half-decent web host. It's relatively trivial to configure Postfix/Dovecot, either through a host-provided wizard, or manually configured yourself. Don't pay extra for this "feature" — it should cost you nothing extra on top of your ordinary hosting and domain name fees, so any upcharges for email are always deceptive.

  3. Linode is an excellent option. I pay $7/mo for a virtual host with regular backups, and I can do anything I want with it. They have handy configuration scripts to save you time on most common setups, including your standard HTTPS+email configurations.

Collapse
 
kailyons profile image
Loralighte
  1. I agree, and some do it terribly but I don't personally need Whois privacy personally.
  2. Right, but I went for an absolute budget of no more than $15 and avoided web hosts like the plague. Especially since most of the "half-decent" web host providers are awful. Especially Duda, Wix, Squarespace, Godaddy, and pretty much anything except Weebly, Linode, and... Yeah, I can't name anything else.
  3. Linode is a great option, but I did not mention it on purpose, as it hurts the budget.The only reason I didn't included.
Collapse
 
dtinth profile image
Thai Pangsakulyanont

Some domain registrars provide free email forwarding to your existing personal email address.

I take that also into consideration when considering where to buy domain names, because having this offering eliminated several problems:

  • Where to get an email service? No need, just use an existing one.
  • How to manage multiple inboxes? No need, the addresses are simply aliases.

Google Domains is one example.

Collapse
 
kailyons profile image
Loralighte

I do not like email forwarding, but yes that is an option.

Collapse
 
frogtd profile image
frogtd

With Google Domains's email forwarding you can send from it using Gmail.

Collapse
 
webdev_chen profile image
Uchena Miller

Good article. Right before I saw this post, I was doing a little research on web hosting and domain purchasing.

I was checking out godaddy.com but they're prices doesn't match my budget and it's a little confusing.

I need something custom and I know for sure those things doesnt come free so you gotta put a lil something.

Thanks for sharing this article✊🏾

Collapse
 
justtrey profile image
just-trey • Edited

If you don't expect a lot of traffic I have found VERCEL to be super easy to integrate with Github. This of course does not have email though. You'd need something separate for that.

Collapse
 
jvarness profile image
Jake Varness • Edited

Vercel is legit. I've thoroughly enjoyed using them for years now.

Collapse
 
sebbdk profile image
Sebastian Vargr • Edited

Some reference numbers would be nice, fx. 5USD a month + domain price, can be done with a lot of Virtual server services. :)

Collapse
 
sebbdk profile image
Sebastian Vargr

Heck, got an old computer? Find a provider offering DDNS, then we are down to power cost + domain.

A raspberrie pi + a cache like cloud flare for scaling can get you quite far. :)

Collapse
 
kailyons profile image
Loralighte

Reference numbers are difficult to stitch together, but all of what I mentioned is pretty free. Even free for the domain you select.

Collapse
 
spiritupbro profile image
spiritupbro

vercel heroku netlify firebase github pages is your best friend honorable mention wordpress , ghost, etc

Collapse
 
roser137 profile image
roser137

yandex mail is also free as an alternative to zoho.

Collapse
 
kailyons profile image
Loralighte

That sentence got something mixed up, not sure why, it happened several times in the article when editing