
Ask HN: What weekend projects have you created? - github-cat
As programmers, you may have spent plenty of time on learning different skills or technologies. To practice them, you may have created some weekend projects which would not take your too long while implementing something you find interesting. So what&#x27;s yours? What technology have you used?
======
edent
My wife & I are crowdsourcing memorial benches across the world

[https://openbenches.org/](https://openbenches.org/)

Only been working on it for a few weekends, already have 2,300 listed on
there. Would be great to get some more from the USA & Canada though. So if you
spot any, please take a photo and upload :-)

All the code is open source and the photos are CC-BY-SA.

~~~
acangiano
Nice. My suggestion would be to give people more incentive to contribute. A
byline for the photographer (with the option of going anonymous), karma
points, a profile page showing all of their contributions and ideally even a
map of them. This profile page could then have a bio, a link to their site,
social media, etc.

~~~
edent
Thanks! We've got that in the works. Photos can be attributed to the
photographer - see
[https://openbenches.org/bench/610](https://openbenches.org/bench/610)

We're also working on a leaderboard -
[https://openbenches.org/leaderboard](https://openbenches.org/leaderboard) \-
will have to think about badges :-)

Cheers for the feedback.

------
augustflanagan
[https://cronitor.io](https://cronitor.io) started as a weekend project. I had
an acute need for the product which enforced getting a working version
quickly. After using the result of that first weekend hackathon in production
for a couple of weeks my co-founder and I decided to put in another couple
weekend afternoons and evenings to make it a saas product. We've been working
on it part-time ever since.

I wrote more about it in an Indie Hackers interview a few months ago -
[https://www.indiehackers.com/businesses/cronitor](https://www.indiehackers.com/businesses/cronitor)

~~~
andrewhayter
This is cool! Please talk about the stack!

~~~
encoderer
Mostly Python. Django for web app and rest API. The Falcon micro-framework for
telemetry collection API.

The dashboard is a React SPA (since 2014!) that is powered entirely by our
REST API so new features are always API-enabled.

Alerting rules are handled by a Python daemon that processes the event stream.

Healthchecks are dispatched by coordinators to Lambda workers in a half dozen
regions around the world. We started using Lambda before the launch of great
frameworks like Serverless so we had to roll our own lambda deployment tooling
with Fabric and Boto.

We use several AWS services including Route53 for global latency-based
routing, SQS and SNS, etc. You can check out our May AWS bill if you're
interested in learning more: [https://blog.cronitor.io/the-aws-spend-of-a-
saas-side-busine...](https://blog.cronitor.io/the-aws-spend-of-a-saas-side-
business-30bd5dbd91b)

------
wiradikusuma
Sarah Shopper, chatbot for Messenger and Google Assistant. You can search her
name on Messenger, or say "Talk to Sarah Shopper" on Assistant.

Running on Google App Engine, written in Scala.

I posted my experience here in HN, but didn't get upvotes:
[https://medium.com/@wiradikusuma/12-lessons-learned-
from-12-...](https://medium.com/@wiradikusuma/12-lessons-learned-
from-12-rejections-submitting-actions-on-google-66979e8b20b5)

------
0x007c00
I built discurse ([https://discurse.xyz/](https://discurse.xyz/)) for learning
PHP/Laravel. It's mostly a clone of reddit, with the key difference that you
can post anonymously, though you need to make an account for upvoting posts.

I posted about it on HN and reddit previously, but it didn't get much
traction, so it's pretty much dead as of now.

~~~
Moter8
Kinda bad that it has almost the exact name of
[https://www.discourse.org/](https://www.discourse.org/), also a relatively
new forum.

~~~
0x007c00
Well, the "curse" part is kind of important to the name, due to the anonymous
nature of the forum :)

I am not well versed with the specifics of how trademarks work, but I hope
this is enough of a differentiator to keep it safe.

------
fluffybunnyfeet
Little utility at [http://palettecrawler.com](http://palettecrawler.com) that
shows the colors used on a website. Mostly just to get experience on
publishing in a public, non-enterprise environment.

------
edp
Liverunner, live sharing your running trail without having to create an
account. Every map is deleted 24 hours after the latest location update. I
wanted to get back into android development and to try out leaflet and OSM to
display a simple map. Current domain name and plain HTTP are temporary, but
I'm not sure I'll turn this into a "real" project. Everything is OSS on my
github @edp

[https://play.google.com/apps/testing/pellerin.edouard.liveru...](https://play.google.com/apps/testing/pellerin.edouard.liverunner)

[http://liverunner.peller.in](http://liverunner.peller.in)

------
assafmo
I built SQLiteProxy
[https://github.com/assafmo/SQLiteProxy](https://github.com/assafmo/SQLiteProxy)
to quickly expose a sqlite db as a network resource. It works great. ️

------
graystevens
[https://breachinsider.com](https://breachinsider.com) \- Will have a full MVP
out very soon

~~~
chrismeller
That’s a neat idea. I’d love to know more details about what you’re
monitoring? It feels like you’d need a Krebs on Security type level (and a lot
of money to blow on purchasing data) to be really effective at scanning for
leaks.

~~~
graystevens
Funny you should mention Krebs - he was partially the inspiration for the
idea.

Currently I actively scan 30+ pastebin style websites, including those on the
dark web, but I feel the insiders themselves will be the key. Each has a
unique email address assigned to them, which can be added to your userbase.
That way, as soon as it receives anything abnormal, you are alerted that
there’s been a potential breach somewhere.

The insiders also come with real local mobile numbers, to catch targeted
phishing attacks after a breach has taken place. Not unheard of.

Eventually I was scale up to purchasing datasets, dark market dumps etc.,
however this will take time. Definitely on my radar though.

------
sebazzz
Financial App, for us to keep our household bookkeeping and finance management
in.

Initially written in the abandoned Angular 1 framework and legacy ASP.NET, I'm
now rewriting it using Knockout (with router5 for routing) and ASPNET Core 2.
Initial version used gulp for bundling, new version uses webpack (for
development) in combination with hot module replacement. Webpack has been a
real nice experience.

[https://github.com/Sebazzz/financial-app/tree/ko-
rewrite](https://github.com/Sebazzz/financial-app/tree/ko-rewrite)

------
jeffmaxim
I've got a few that have taken me about a weekend listed here:
[https://www.teachersdontpayjeff.com/](https://www.teachersdontpayjeff.com/)

For example, one recent project was this:
[https://www.teachersdontpayjeff.com/suggestion](https://www.teachersdontpayjeff.com/suggestion)
... it only really works on desktop currently. But the basic idea is to find
words which may be "difficult" for younger elementary school students to read
and offer some synonyms/definitions to help them out.

------
iamphilrae
Just launched [https://www.medistudents.com](https://www.medistudents.com).
Not technically fancy (it’s PHP+MySQL) but I thought I’d do something a little
unique with how it’s built and managed.

The front end (apart from educational modules - see below) is built as a
static HTML/CSS site with very minimal PHP and JS, and uses the Zurb
Foundation framework as a full Gulp build environment. This helps keep the UI
efficient and fast.

To provide database-linked services (i.e registered user-based services), I
built an API using Silex. Without the API being operational, the static UI
works absolutely fine, just an error when you try to log in. I use PHP
file_get_contents as the very simple interface to this.

Finally, as the content is to be edited by non-technical doctors and
eventually translators, I’ve used Bitbucket as a CMS. Learning modules are
simple markdown files and images on a separate repo, which can be edited
online using Bitbucket’s editor. When a new update has been approved via pull
request, BB Pipelines will build and deploy an updated version of the static
site. This process will even re-build all the PDFs which members can download.

It’s a unique yet simple solution, providing me with incredible control of the
site, all without having to use or build a bloated CMS.

------
pan69
My project, Postways [1], started a side project but it's now a little bit
more than that. I used to work for a startup were we where sending a lot of
email, SMS and mobile push notifications to our customers. We used various
different services for this at the time. The main problem was managing our
message content. Our message text, such as SMS and mobile push, was stuck in
source code and the HTML email templates were hosted in some marketing email
platform. Every time the product people wanted update a message it was too
much work because and at least one dev had to be involved. It was all quite
messy and difficult to maintain.

Think of Postways as a content management system for transactional message
templates with a unified API.

Even though this started as a side project, it quickly became more than that.
It was a great opportunity to see if I could turn this into a service (a
product), and that became the real challenge.

The main stack is pivoted around PHP 7.1. I use Symfony 3 for the web-tier and
Doctrine 2 for the persistence layer. It runs on AWS and uses services such as
EC2, RDS, SQS, Elasticache, Route53 and of course, SES and SNS.

[1] [https://www.postways.com](https://www.postways.com)

------
ianleeclark
HTTPS://providebooking.com

More or less a booking service that allows users to pick their bookable hours
and set prices for those times. Then they just link others to their calendar,
the others can pick the time that works best for them, and pay for that time.
Took some advice from HN about renaming it, and should be releasing soon!

Currently talking to a few early testers and doing a bit of extra feature
development to better fit into my target niche.

~~~
amelius
Looks like: [https://simplybook.me](https://simplybook.me)

But this targets a fairly large market.

Why do you speak of "niche"? This seems like a generally useful service.

------
ehnto
I tried my hand at RiotJS to build
[https://apiblocks.com](https://apiblocks.com) which is a way to see lots of
API endpoints in one view. Specifically one point of data from each endpoint.
It never got much traction and I had a couple of threads on here about it.

I still believe in the idea and have been working on it periodically, but I
have started other projects since.

~~~
O_H_E
I think some graphs would be great. ex. Current Bitcoin price and a graph for
past prices

------
adnanh
Webhook:
[https://github.com/adnanh/webhook](https://github.com/adnanh/webhook)

Self hosted tiny incoming webhook server with powerful options. Lets user run
shell commands on incoming webhook. Has context parsing (use values from
payload, query string, headers etc...). Can use context to validate the
requests (i.e. only trigger if the push is coming from GitHub and the ref
branch is the master branch). More info can be found in the Readme and on the
wiki.

Tech stack: Golang

\---

Hookdoo - [https://www.hookdoo.com/](https://www.hookdoo.com/)

A SaaS spin on the webhook server. Sort of an opposite approach. Has all the
features webhook has, and also implements concurrency management (i.e. only
run one script and deny others until it's done, allow parallel runs etc...).
Centralized, managed, leverages SSH. No need for the user to install and
configure anything on their servers.

Tech stack: Ruby, Golang, Redis, PostgreSQL, ES6 + React

------
g00gler
A full baccarat implementation for node and the browser.

It's plain ol' js. I used it as an opportunity to give jest a try. It took a
single Saturday to get the general concept down, then some bug fixes over the
next few days as I misunderstood the drawing rules.

[https://github.com/kgdiem/fisher-yates-
baccarat](https://github.com/kgdiem/fisher-yates-baccarat)

Also TextJawn, my first production ready native Android app. It was also done
in a single Saturday with some bug fixes going out over the next week.
"TextJawn enables password protected remote management over SMS.

Locked out of Google? Forget your phone? No problem! TextJawn lets you ring,
locate, and check your messages by sending a text message."

[https://play.google.com/store/apps/details?id=com.thosejaunt...](https://play.google.com/store/apps/details?id=com.thosejaunts.textjawn)

------
jpozo
A simple to-do extension for Visual Studio, had a hard time learning how to
start but I'm now getting the gist of it.

[https://marketplace.visualstudio.com/items?itemName=JefryPoz...](https://marketplace.visualstudio.com/items?itemName=JefryPozo.VSToDoList)

------
versale
A Github App providing CI for OpenEmbedded/Yocto projects:
[https://github.com/apps/yottaci](https://github.com/apps/yottaci),
[https://yottaci.idempotent.info](https://yottaci.idempotent.info)

Initially I tried to use TravisCI, but it proved to be very inconvenient for
the case of OpenEmbedded-based projects because of its time limits. So, I've
created my own on top of MS Azure Functions. Currently it's used to do test
builds against pull request to [https://github.com/bmwcarit/meta-
ros](https://github.com/bmwcarit/meta-ros). But it can be used by anyone who's
maintaining Yocto meta layers.

------
krapp
I have yet to finish even simple projects in the space of a single weekend.
Does it count as a weekend project if it takes more than 52 of them?

Here[0] is my _not guaranteed to necessarily compile or even exist_ repo of
gamedev libraries and experiments, each of which has eaten up many a weekend.

[0][https://bitbucket.org/kennethrapp/gamedevprojects](https://bitbucket.org/kennethrapp/gamedevprojects)

Technology: C++ (with SDL2) and Lua.

I also taught myself Vagrant and Hack and started and will now probably never
finish a Hacker News-style forum in it, because I'm already kind of sick of it
and the hype train for Hack I was hoping would arrive by now really hasn't.

------
chrishepner
[http://playlist.cool/](http://playlist.cool/)

It finds bands playing in your area in the near future and creates a Spotify
playlist of them. It still needs a lot of work but it's a fun way to discover
shows to go to.

------
Moter8
A simple vue.js application to display classes of my college:
[https://stuv.chagemann.de/](https://stuv.chagemann.de/)

Our student organization already has a native Android app for this and it
looks better (native is always better than web, of course), but as nobody
really wants to continue its development or the development of an iOS app, I
built this.

This way, we can just have a single codebase whose website can be displayed in
simple wrapper apps for the major platforms.

In the next days I'm going to add current events (just another .ics to parse)
and possibly guidance information for "ersties", the german word for Freshmen.

Stack used: Vue.js, Pug, Stylus, moment.js, ical.js

------
traviswingo
[http://postcardbot.co](http://postcardbot.co)

And

[http://parseaddress.io](http://parseaddress.io)

Both were spun up in a weekend. They’ve changed a lot since then, but only
because of how many people use them now :)

~~~
Moter8
Seems like a fun idea, but sadly the bot doesn't like my images (tried with 2
images): [https://i.imgur.com/848OFut.png](https://i.imgur.com/848OFut.png)

Also, at least in Germany, I can use Deutsche Post/DHL to do the same thing,
for cheaper:
[https://www.deutschepost.de/de/f/funcard.html](https://www.deutschepost.de/de/f/funcard.html)

------
rexf
Over weekends, I built an ARKit game for iOS 11
[https://itunes.apple.com/us/app/hoop-
stars/id1282112219](https://itunes.apple.com/us/app/hoop-stars/id1282112219)

I'm still busy fixing issues & developing new features :)

ARKit itself may not be the most amazing framework ever, but the cool thing
about AR is that people just get it. For example, my demo footage is here
[https://www.youtube.com/watch?v=tJlaUQA7Xic](https://www.youtube.com/watch?v=tJlaUQA7Xic)
and it's very easy to grok

If you have any questions about ARKit, please don't hesitate to ask

------
charlieegan3
I recently made
[https://mycriticmatch.charlieegan3.com](https://mycriticmatch.charlieegan3.com)
to help people find a movie critic to follow.

I built it as a static site experiment largely in a single weekend.

~~~
samlewis
This is really cool! It'd be even more awesome if there was a permalink so I
could save/share my results.

~~~
charlieegan3
Thanks! Glad you like it. If you fill out a few films you’ll see a blue button
called “get share link” - this will gzip and base64 encode the state into a
URL param so it can be shared.

Bit of a hack but I wanted the app to be truly static.

------
bgrohman
A Vim plugin for managing sessions [https://github.com/bgrohman/vim-bg-
sessions](https://github.com/bgrohman/vim-bg-sessions)

A really simple backup system with bash and gnupg
[http://bryangrohman.com/simple-encrypted-backup-
system/](http://bryangrohman.com/simple-encrypted-backup-system/)

A custom bookmark service for managing my bookmarks across multiple browsers
with Node and LetsEncrypt. Planning to add end to end encryption at some
point. I don’t have the code hosted anywhere yet.

------
hobbes_calvin
I started working on [http://statemaps.org](http://statemaps.org) to highlight
inequality among states within a country.

I realize that a lot of attention is being given to inequality among countries
but even within a country, some states are much less developed than others.

In statemaps.org, I am trying to present all this data through maps so that it
can be easily comprehended. I have released for one country as of now and will
expand based on response

------
pako_crack
Query Parse App. [https://itunes.apple.com/de/app/query-
parse/id1170245634?l=e...](https://itunes.apple.com/de/app/query-
parse/id1170245634?l=en&mt=8)

Just needed myself a SQL wizard builder for Parse.com (and soon for Mongodb)
that checked data types and references on joins. It can export your query's
generated code to be run elsewhere and also is capable of export query's
result in .csv format. Making some money out of it :)

------
deepakkarki
Primarily a systems guy, hadn't really looked into web dev. After I burnt out
and quit my job I developed [https://discoverdev.io](https://discoverdev.io)
\- a daily list of awesome engineering blogs!

Initial prototype developed over a couple of days, using plain HTML and CSS!
Absolutely no JS.

This project was primarily to recharge myself after a bad job. I loved
collecting and sharing links with my friends, so I made this!

I recently also added a mailing list and got a good number of subscribers :)

------
witdxav
[http://www.zavtech.com/morpheus/docs/](http://www.zavtech.com/morpheus/docs/)
\- The Morpheus library is designed to facilitate the development of high
performance analytical software involving large datasets for both offline and
real-time analysis on the Java Virtual Machine (JVM). The library is written
in Java 8 with extensive use of lambdas, but is accessible to all JVM
languages.

------
stanmancan
[https://macvendors.com](https://macvendors.com) was a side project from 5
years ago, gets $600-800/m in ad revenue now and the API serves up about 30-35
million request a month

[https://sendfly.co](https://sendfly.co) just launched this last week. Still
have to do some documentation and UI work to make it a bit more intuitive.
It’s a contact form endpoint.

------
github-cat
Well, for myself recently I have used AngularJS to implement a simple news
aggregator([http://www.pxlet.com](http://www.pxlet.com)). and deployed it
within one day(Well to be honest, it's around couple of days because need to
spend time finding the news sources). I find AngularJS is quite appealing to
develop single page app. It handles the view and JS data model quite well.

------
paulgb
In my free time I've been exploring generative art. I got an AxiDraw V3 and
it's been a lot of fun. I don't have a central place with all my work yet, but
I just launched a newsletter:
[http://tinyletter.com/paulgb/letters/introduction-icymi-
edit...](http://tinyletter.com/paulgb/letters/introduction-icymi-edition)

------
nedervino
[http://browserhelp.me](http://browserhelp.me) started as an aid for the
impaired to control your Chrome browser via Amazon Alexa. The prototype won
two awards in online Alexa contests, and even though the product is still very
much under development it has about 500 people already using the skill.
Learned a lot from that project!

------
everling
A bit more involved than a weekend project, but
[http://cinetrii.com](http://cinetrii.com)

~~~
newbear
How is this made? (Stack, AI, etc?) awesome site thanks!

------
avisk
[https://github.com/sivasamyk/logtrail](https://github.com/sivasamyk/logtrail)
\- A Kibana plugin to view and tail logs. Started as project to scratch my own
itch and now used by many. Technology : AngularJS and NodeJS. Currently
working on a major enhancement for this project :)

------
elhalyn
Give me my time back, youtube ! I need it for HackerNews

[[https://chrome.google.com/webstore/detail/youtube-
distractio...](https://chrome.google.com/webstore/detail/youtube-distraction-
free/jhacjhcmekhmmbgppcnndilcndgjebjf)]

tldv keeps the scary good yt recommendation away from you

------
bdz
[http://standardhearth.com/](http://standardhearth.com/)

It's a Hearthstone reference site for what's in standard rotation atm.

MTG version: [http://whatsinstandard.com/](http://whatsinstandard.com/)

------
deadghost
[https://canpicker.com/](https://canpicker.com/)

It's taking longer than a weekend though. My usual projects are more
complicated and I wanted to do something brain dead and relatively instantly
gratifying. Clojure + clojurescript(react based).

~~~
Moter8
AKG K240 (MKII)/Sennheiser HD 598 seem to be missing (I only know of these
two)

~~~
deadghost
Yeah I've been meaning to add the K240 as they're quite good and popular. I'm
not immediately familiar with the HD 598 but Sennheiser generally makes good
stuff at each price point. They have a habit of changing model numbers
periodically though for seemingly no reason.

------
lawrencewu
[https://www.juicebox.dj/](https://www.juicebox.dj/) \- Listen to
YouTube/SoundCloud with others

Ended up taking way longer than a weekend but it's still basically a passion
project of mine. I used Node.js, Firebase, and React.

------
roschdal
[https://play.freeciv.org](https://play.freeciv.org)

------
yamalight
Got tired of fiddling with deployment and built Exoframe [1] that handles most
things during project deployments for me.

[1]
[https://github.com/exoframejs/exoframe](https://github.com/exoframejs/exoframe)

------
jypepin
on weekends I like to do easy stuff for fun. I build stuff with canvas, mostly
to (re)learn new things, like geometry, etc.

[http://jonathanfromgrowth.com/lol/](http://jonathanfromgrowth.com/lol/)

------
silverlight
[https://buildme.gg](https://buildme.gg)

Heroes of the Storm builds auto generated from pro matches. Just a fun little
thing that was useful to me, no current long-term plans to turn it into a
business or anything.

------
spaceships
A conference tracker that shows conferences in a map (simpler view on mobile).
Built with React and some other things in the ecosystem.

conferenceradar.com (it's open source and the list is maintained/ updated
through PRs on github)

------
george10101
A fake SMTP server you can use for automation testing - aims to be a more
convenient version of Mailinator

[http://smtptrap.net](http://smtptrap.net)

------
drumvc
A basic drum machine in Angular, React and Vue, to help me get to grips with
these frameworks:

[http://drumvc.com](http://drumvc.com)

------
RobGav
I'm working with the new theme based on Publii
([https://getpublii.com](https://getpublii.com))

------
mbrock
Testdown.org

Cilia.io

~~~
chrismeller
There appear to be more robust alternatives for both of these, so I’m curious
what your “elevator pitch” would be for them?

~~~
mbrock
Cilia is an understandable CI server that's made only for one relatively
simple task: building and serving web frontends defined with Docker Compose.
It has a very simple hook system and it can show Browserstack videos inline.

The one little feature it has that I haven't seen in other tools (but I'm sure
it's not unique) is that it can reverse proxy by Git commit, so that
"<commithash>.ci.example.com" becomes a way to see how the frontend looks at
some particular revision.

Actually I wouldn't really pitch it to anyone, because it was quite internal
and somewhat made in anger over the complexity of build servers like Jenkins.
It was also an exercise in slightly larger-scale shell programming, which is
considered extremely stupid around here, so.

Testdown is still the best system for smoke testing React apps I've used, and
I made it because the company I was working at really had horrible experiences
with frontend testing. The natural language specifications are kind of like
Cucumber, except better and with no need to code step definitions, just define
the "data-role" attribute on elements, which I found to be a much nicer
paradigm than maintaining a bunch of CSS selectors in the test code, etc.

It was really useful to have UI test specifications that could be read by
everyone in the company. And because it's made in a way that integrates with
the React app, instead of sitting outside watching via e.g. PhantomJS, it can
be very accurate and robust. For example, our app showed a spinner whenever it
was loading an AJAX call, so we came up with the "Wait." command that simply
waits until no spinner is visible, and that worked really great.

I don't care so much about Cilia, but Testdown is still a really interesting
project for me. It's as much about a specific implementation as a way of
thinking of testing in a pragmatic and nice way. I'd like to try implementing
it with a parser based on GF (Grammatical Framework), to be able to handle
actual grammatical constructs with more sophistication.

Neither of these projects are mature technology, but they worked like champs
internally for about a year, and helped kickstart us into continuous
integration of the frontend, which had been a thorny problem.

