Skip to content
A python

Quick and dirty server

Thursday, March 11, 2021

At 164 words, this article should take about 1 minute to read.

I often find myself working on proof of concepts that consist of (at most) an index.html, style.css, and index.js.

It always seems overkill to have some kind of "local server" plugin imported into the project - especially because I use a MacBook Pro and it has Python installed by default.

A neat little trick for serving a static site without additional dependencies is this…

  1. Navigate to the folder you want to serve
  2. python -m SimpleHTTPServer
  3. Open http://localhost:8000

What if PORT 8000 is in use?

Pass a different port number like this: python -m SimpleHTTPServer %%PORT_NUMBER%%

If you want it to be even simpler - stick this somewhere in your bash config!

srv() {
  python -m SimpleHTTPServer

It doesn't come with any of the fancy stuff that other "local server" plugins might come with like hot reloading or compiling Scss but, if all you want is a small static site launching, why reach for another dependency?

Cover image courtesy of David Clode.


In almost all cases, the comments section is a cesspool of Reply Guys, racists, and bots.

I don't want to have to deal with that kind of hell so I don't have a comments section.

If you want to continue the conversation, you can always hit me up on Twitter (which is, in it's own way, a vile cesspool of Reply Guys, racists, and bots).

Thomas Banks

Thomas Banks

When I'm not building things for the internet, I take photos of stuff.
Loading Invisible Visible Navigation Close Arrow Info Online Online