Site Map - skip to main content

Hacker Public Radio

Your ideas, projects, opinions - podcasted.

New episodes every weekday Monday through Friday.
This page was generated by The HPR Robot at

hpr2542 :: How I helped my dad run a static website using SparkleShare

In which I describe my setup of SparkleShare and GitLab Pages to maintain a static website

<< First, < Previous, , Latest >>

Thumbnail of clacke
Hosted by clacke on 2018-05-01 is flagged as Clean and is released under a CC-BY-SA license.
sparkleshare, static website, gitlab pages. 2.
The show is available on the Internet Archive at:

Listen in ogg, spx, or mp3 format. Play now:

Duration: 00:12:08


My #hprep tag up on Heldscalla serves as inspiration for times like this, when I should just record something while I have the chance. Suggest more topics for me to orate about and I'll put them up there!

In this episode I'm talking about how I've set up SparkleShare (web site currently down, try the archived site if it's still down when you're reading this) and GitLab Pages to allow my dad to tinker with a static web site locally on his machine and automatically get the changes up on the official URL without having to bother with any manual steps (at least on the happy path).

Errata: Oops, I said Jekyll uses Python. It uses Ruby.

TL;DL: We have two directories, two git repos. He doesn't have to know about git. He plays around in the staging directory first, looks at the test site how it turned out, when he's happy he just copies the files over to the production directory and they go live. SparkleShare automatically pushes to (I didn't say it outright in the episode, but yeah, I'm using the hosted service -- that's basically the point of this mode of doing things, minimal setup, responsibility and maintenance for me), and GitLab CI runs Jekyll (use the static site generator of your choice) to copy files over for deploying, and finally GitLab Pages deploys the new site.

I believe all of this took me less than two hours to set up, effective time, once I got around to it (and was in the same time zone as my dad's computer). Don't forget to add your verification TXT record in the DNS.


Subscribe to the comments RSS feed.

Comment #1 posted on 2018-06-15 15:00:51 by clacke

What is SparkleShare?

Apparently I didn't explain what SparkleShare is!

It's "DropBox for git". You tell it where your remote git repo is, and it keeps an eye on it and keeps a local directory in sync.

Whenever anything happens in the remote repo, it pulls that change and makes your local sirectory the same.

Whenever you add, remove or edit a file in your local directory, it creates a commit for your change and pushes it to the remote repo.

Any conflicts that occur are resolved by creating a file named something like "myfile conflicted on 2018-06-15T16:57:45.txt", so you never have to understand anything about git to use SparkleShare. Just play with your files in your directory.

That's why it's so good for dads.

Comment #2 posted on 2018-08-04 07:55:12 by clacke

Full episode on SparkleShare

For a complete rundown on the when, what and how of SparkleShare, see klaatu's .

Leave Comment

Note to Verbose Commenters
If you can't fit everything you want to say in the comment below then you really should record a response show instead.

Note to Spammers
All comments are moderated. All links are checked by humans. We strip out all html. Feel free to record a show about yourself, or your industry, or any other topic we may find interesting. We also check shows for spam :).

Provide feedback
Your Name/Handle:
Anti Spam Question: What does the letter P in HPR stand for?
Are you a spammer?
What is the HOST_ID for the host of this show?
What does HPR mean to you?