
Ask HN: What's your personal website's tech stack? - garysahota93
I want to spend some time this weekend re-doing my site (www.garysahota.com) in a platform other than Google Sites. I&#x27;m learning web dev now and would love to get your thoughts on what tech I should use!<p>My requirements:<p>- Minimal cost (free via Github Pages or the like if possible)<p>- Semi-frequent blogging<p>- Static site<p>- Mobile ready
======
activatedgeek
I recently migrated away from Hugo to Gatsby because I wanted more control
over the Markdown content I write. I had technical debt piling up [1] from the
hacks I had in Hugo to get writing completed and wanted minimal vendor lock-
in.

My approach was to start from bare-bones Gatsby and make incremental
additions. Key pieces that help me have virtually limitless control:

\- React: I subscribe to the philosophy of component-based systems.

\- Remark: Plugin-based approach to extending Markdown capabilities.

\- MDX: bring component-based systems to Markdown. opens up virtually anything
possible in React to be possible in Markdown.

\- Gatsby: Builds on top of React and a plugin-based system for extensions.

\- Netlify: Super easy deploys.

Key highlight: I needed BibTeX citations in Markdown. I implemented a plugin
from scratch myself (effectively amounts to manipulating the Abstract Syntax
Tree given by MDX) which was fairly straightforward
([https://github.com/activatedgeek/website/blob/master/src/plu...](https://github.com/activatedgeek/website/blob/master/src/plugins/gatsby-
remark-bibtex/index.js)).

Website: [https://www.sanyamkapoor.com](https://www.sanyamkapoor.com) Source:
[https://github.com/activatedgeek/website](https://github.com/activatedgeek/website)

[1]: I had a non-elegant hack to use Distill as my theme in Hugo
[https://github.com/activatedgeek/distillpub](https://github.com/activatedgeek/distillpub)
and had to go through some hoops to get everything coherently working (but
brittle).

------
xueyongg
I'm using NUXT.js. Interestingly, I tried NEXT.js before and I do prefer the
formal framework. It has been really easy to create your own personal blog
since you can build a static site out of the framework. Super elegant!
Definitely mobile friendly but that will depend on the CSS styling, which
there are many templates out there.

Since I can create static sites from NUXT.js, I practically just need a static
file server like Nginx to serve my files, and my server costs like
20bucks/year? Can't find anything cheaper than that.

Here's my site, I also write a few learnings and findings from my journey as a
Software Engineer. Hope you find something useful from here! Cheers (:

[https://blog.phuaxueyong.com](https://blog.phuaxueyong.com)

------
quickthrower2
Netlify + a site generated using Metalsmith.

I like Metalsmith because it's a tool, more akin to Gulp or Git that is easy
to reason about, uses JS and can be used to do other things, so it seems like
a longer term investment than using Jekyll or Hugo.

With Hugo I found if I got stuck I was really stuck. It has it's own DSL which
is bad. With Metalsmith I can hack my way around any problem with JS and write
my own plugins easily if I wanted to.

Then I used NodeJS for some interactive bits hosted on a free EC2. That NodeJS
talks to a free postgres instance for storage, and uses nginx and letsencrypt.

------
znpy
My current blog is hosted on wordpress.com. It's good for writing but it's
quite awful for technical writing (inserting code and such).

I'm in the slow process of making a new blog for technical content and notes,
using org-mode + html export / publish functionality + custom css. So far I've
got some pleasing css, gitlab-ci and now I'm working on adding some automation
and templating for pages and blog entries.

I'm not sure whether I want to host it directly on my own hardware or host it
into something like S3 or gitlab pages.

------
XCSme
For presentational sites, I use PHP + HTML + CSS + JS. I still use PHP because
it allows for cheap hosting, easy templating (can import files in other
files), no compilation step, files can be edited directly on the server if
necessarily and I can add at any point any extra functionality that even
requires server-side processing or a database. I add CloudFlare on top with
"cache everything" cache level, so the site is fast and server usage low.

~~~
XCSme
Because you mentioned blogging, I also needed to add a blog to my landing
page, so I create a tiny blogging platform that displays markdown posts:
[https://github.com/Cristy94/markdown-
blog](https://github.com/Cristy94/markdown-blog)

------
KhoomeiK
I'm just using Firebase + React, but it could've as easily been done in
vanilla HTML/CSS/JS or jQuery. I built it in React partly just as practice.
Firebase is great though because it provides free hosting and allows me to do
analytics (although I haven't done much of that yet).

------
lukaszkups
I use my very own static site generator (which I'm constantly
working/upgrading to make it usable for public audience):
[https://lukaszkups.net](https://lukaszkups.net)

------
greatwhitenorth
I'm currently building one using Next JS. It's simple and easy. You got to
write CSS to make it responsive. You can finish the Next JS docs in an hour if
you already know a bit of React.

------
dpeck
Terraform, Hugo, S3, Cloudfront.

It’s low maintenance, cheap, and simple. No “moving parts”, and on the off
chance I ever put anything up that gets attention from HN or bigger sites it
will easily handle.

------
nip
\- NEXT.js

\- Hosted on a 5€ DigitalOcean droplet (alongside 3 other projects)

\- Deployed via a one-liner script (ie not automatic but really easy)

------
potta_coffee
Netlify + vanilla html / css / js. It's free, easy deploy with a push to
gitlab.

------
totony
PHP/CSS/HTML

I just have php files in which i put everything, then use make to build a
static version

------
ganadiniakshay
I setup a simple static + blogging site using Ghost. Used docker to run it on
a Ec2 instance.

------
ijustwanttovote
\- Linode \- Ghost CMS \- Cloudflare

------
lemoncurd
github pages and only html, no css or js

