About this site
My name is Peter Bengtsson and I'm a web developer.
This site is my notice board for things that go on in my head.
I currently work for Mozilla in California. There I work on the Web Engineering team which involves working on various tools that help the development of Firefox and my other Mozilla projects.
GitHub Pull Request Triage
This is a mashup using the GitHub API to make a dashboard over all open Pull Requests on a GitHub project. It's a Flask backend for doing proxy caching of requests and an AngularJS front end. I blogged about it in more detail and the code is available on Github.
Buggy is a singe-page webapp that relies entirely on the Bugzilla native REST API. The app is entirely client side and written in AngularJS and is entirely served from a CDN. I have blogged about it in more detail on my blog and the code is available on Github.
Wish List Granted
Makes it possible for you to "crowdfund" your presents. Integrates with Amazon.com™'s Wish List functionality mashed with Balanced Payments. My first side-project with a full and real payment solution. Code written in Django with PostgreSQL.
This app combined Leaflet with Filepicker.io with Amazon S3 to let you upload massive pictures and draw annotations on them to be able to zoom in, pan and share specific regions without having to download the whole image. And it works great on mobile too!
Around The World
If you haven't already done so, check out my new game: Around The World which is my spare time project. You can read more about it here but the best thing is to just start playing and see if you like it.
US License Plate spotter
It's for spotting out-of-state license plates in the US and tick them off on your smartphone.
This is also my first ever project that actually uses Facebook's API to facilitate wall posts from the app.
The source code is here and it's a bit of a mess because it's after all just an ongoing experiment.
Too Cool For Me?
It started as a Bookmarklet so that when you're visiting twitter.com it appends, for each user you follow, whether they also follow you.
Later, the most useful feature was the /everybody page where everyone you follow is split half between those
who follow you and those that are too cool for you.
blogged about it here and source code is here.
In 2012 I re-wrote this site from scratch. Being very fast was important to be and I've blogged about
how I made the server-side and
The code to this site is open source and the source code is here.
This is a supporting site for the Tornado Web Server project.
It uses the Github API for authentication and for pulling down
The hosting of this project is actually done by a fellow Tornado contributor called Felinx Lee.
Blogged about it here and source code is here.
My first real-time web game. The game is that you get paired up with another random player
and you have to answer quiz questions as fast and accurate as possible. My first web app
that let's Facebook, Twitter, Google, Persona all take care of the authentication.
I first blogged about it here when it was launched and here are the slides which I later presented at PyCon UK 2011.
Crosstips first started as an experiment to do localization in Django. Namely, Swedish.
So the first deployment was Krysstips.se
(blogged about it here).
This was also my first ever non-English project.
Not long after, I prepared the English (American and British) version and a friend helped me translate the French version too.
Source code available here and I've blogged about various aspects of it here.
Using the recently published API from Transport from London
I put together a Google Maps mashup that plots all the central London traffic cameras
so you can easily see if your particular road is congested. This was my first project
using client-side Geolocation.
Blogged about it here and the source code is here.
FWC Kungfu Mobile
This was my first pure mobile web site. It's for my
Fujian White Crane Kung Fu Club that I trained
with when I lived in London. This site uses a remote database connection and is heavily cached.
It's built taylor made for mobile as it goes straight to the basic details you need.
I originally built it because I kept forgetting when various classes started and looking it up on a slow 3G connection was a pain.
The code is here and I blogged about when this was my first site to get 100 points on YSlow!.
This list does not include any of the fun projects I'm workig on at work. These are all side-projects.
Also, most of these projects I'm not actively working on but they're all projects that are alive and hosted somewhere.