Webdev/Side Projects
We all probably one or two interesting little side projects we hack on from time to time.
Let's dump them all onto the table! List anything you would either like some help with, or just think is cool and worth sharing, or are exploring or spending a little time on, whatever your own criteria is. Try to include some of description of what it is and what there is to do, if anything.
adrian
- Component Entity Manager for JavaScript games
- A simple implementation of the component / entity model in JavaScript. It works both client- and server-side. It is meant to be a basic brick for JavaScrip game libraries or game engines, or for games that don't want to use heavy libraries. I would love to get feedback and reviews of this code, as well as suggestions to make it better.
- Fightly Game Engine
- Strategic, turn-based game engine for the Open Web. This a pretty heavy project, I want to refactor it a lot to make it really extensible and modular. The Component Entity manager up here was originally made for this project. Contributors to the project would be great, that will motivate me to create some doc and make it easy for others to contribute.
andy
ashort
aricaud
bsavage
ckoehler
cmore
dd
- Webdev Project Inventory
- List of web sites and projects maintained by the team.
ednapiranha
- Lexicrypt
- Lexicrypt is a Python / MongoDB proof-of-concept of token-based steganography. Content (currently text-based) is encrypted using AES and can only be accessed by users who have their API tokens added to the access list for it. More info coming soon - will be posted as development progresses at lexicrypt.com
- The Great Brain
- The Great Brain is a Node.js / jQuery experiment allowing multiple users to contribute text/images/audio to various 'nodes' that randomly communicate to each other and activate the node.
- Web Imagery
- Web Imagery retrieves images from the following popular services: Instagram, Imgur, Flickr, Path, Skitch, Minus, Cloud App.
- Auto Tagify
- Auto Tagify uses NLTK to auto tag words in a body of text.
erik
- MediaWiki Parser
- A research project turned Summer of Code project turned side project again, this is an attempt to parse the horrific MediaWiki syntax into an actual syntax tree in pure Python. At the moment, we have a working 2-pass parser that supports templates and basically all of MW syntax worth having outside an actual deployment of MediaWiki. We also have outputters that transform the tree into HTML and plain text. It's just slow (3s per page), so we have a bunch of exciting optimization work to do.
- nose-progressive
- A really nice way to debug your Python code. nose-progressive is a nose plugin which displays progress in a stationary progress bar, freeing the rest of the screen (as well as the scrollback buffer) for the compact display of test failures, which it formats beautifully and usefully. It displays failures and errors as soon as they occur and avoids scrolling them off the screen in favor of less useful output. It also offers a number of other human-centric features to speed the debugging process. The governing philosophy of nose-progressive is to get useful information onto the screen as soon as possible and keep it there as long as possible while still indicating progress. Version 1.0 is just about to come out, with significant usability improvements and pretty colors and bears.
- stackful
- A variant on Lisp-style dynamic variables for Python. They're akin to Perl’s local variables but with less tendency to degrade into spaghetti. Use it with care, and you can quickly defeat many common cases of coupling without having to refactor the world.
- django-tidings
- django-tidings is a framework for sending email notifications to users who have registered interest in certain events, such as the modification of some model object. Used by support.mozilla.com, it is optimized for large-scale installations. Its features include...
- Asynchronous operation using the celery task queue
- De-duplication of notifications
- Association of subscriptions with either registered Django users or anonymous email addresses
- Optional confirmation of anonymous subscriptions
- Hook points for customizing any page drawn and any email sent
- rust
- …which so far I've made only documentation contributions to, but the bootstrap process continues. :-)
espressive
Watcher : https://github.com/ossreleasefeed/Watcher
A Nodejs module that watches a single or multiple files and reloads all connected clients when any of the files change. Useful while cross browser testing and debugging
gkoberger
- Unnamed project
- An HTML drawing tool NOT named after a product we all know.
jgrlicky
jlongster
- OMGBUGS
- OMGBUGS is a node.js-powered Bugzilla interface. It scrapes your saved searches and indexes your bugs in redis, making everything lightning-fast. The interface provides your saved searches, a sortable/filterable/customizable table for viewing bugs, bug details in a popup, light editing functionality, view and post comments, query your buglists and graph statistics, and more. View the site at http://jlongster.com:8001/.
jsocol
- Joshua
- Joshua is a way to deal with user-uploaded files when we have sites hosted in multiple data centers. There are already a dozen or so of these tools, but I was curious how hard it would be to create one. It's all Python, built on Tornado. It's protocol-based, running entirely over HTTP—so in the future some enterprising developer could create a Joshua server in another language. It doesn't so much work. It accepts uploads and deletes from the client interface, and will serve files from the public interface, but the peer-to-peer/node-to-node interface doesn't work yet. Help would be awesome, in the form of patches or just pointing out things I've forgotten or am doing wrong.
- Bleach
- Bleach is our whitelist-based, Python HTML sanitization tool! There are always things that can be added, but at the moment I'd really love to see a refactor that would allow methods to be chained without necessarily rebuilding a DOM tree.
linkify()
is also huge and nasty now, and I am curious to see what kind of improvements could be made there. - Jig
- Jig, for Jenkins-IRC-Github, is a simple Node HTTP server/client/IRC bot that accepts Github's post-commit payload, filters by branch, posts into IRC, and triggers Jenkins builds (allows you to specify a Jenkins job per branch, since Github doesn't discriminate with payloads). It runs
kitsunebot
in #sumodev. It doesn't do a whole lot--I suspect it could be more useful. There are a couple issues filed. One thing I think would be fun is achievements. Help is appreciated!
kumar
lars
laura
lcrouch
- django-appetizer
- django-appetizer is a reusable Django app for creating Open Web App manifests to django sites.
lonnen
lorchard
- django-badger
- django-badger is a Playdoh-biased reusable Django app for creating and awarding badges. You can use Django signals to track important award-worthy events in your site, track progress and dependencies, issue awards automatically. Additionally, django-badger aims for compatibility with Mozilla's Open Badges infrastructure, allowing badges to be federated and collected elsewhere. There are also feeds for almost everything in JSON, RSS, and Atom formats for great mashup justice.
- django-badger-multiplayer
- django-badger-multiplayer augments django-badger by letting people create their own badges, nominate each other for awards, and generally turn badges into a multiplayer affair. Eventually, this should do most of the stuff I wrote about last summer
- badger2
- badger2 is a playdoh site that hopes to be the reference demo for django-badger and friends
- domjot
- domjot is a personal hypertext notebook (ie. a wiki) I started working on as a response to the older code in TiddlyWiki. The data model is HTML5 - article as the document, sections as the notes. The code is built from request.js, backbone, and random other fun stuff.
- robokuma
- robokuma aspires to be a node-based IRC bot that can announce daily standup meetings, capture logs and publish as web archives, highlight links mentioned and summarize what everyone's doing
- Tinkering with Activity Streams
- Tinkering with Activity Streams will be my next book, self-published, if I ever get back to it.
malexis
mkelly
- Charas-Project
- Charas ([1]) is a website for RPG Maker enthusiasts. It's primarily known for it's large repository of sprites, tilesets, midis, etc. as well as it's sprite generators that let you build sprites. This project is my attempt at re-making the site using Playdoh.
morgamic
- Social
- Amply named, it's trying to help Firefox kickstart its social itegration. Our mission has a clause about projects that, "give people tools to take control of their online lives." I believe we can do that, and I'm getting things started with dascher to make it a reality.
- Management
- Not really code-related, but I'm trying to build a management community at Mozilla, working with folks in people dept to encourage folks to share what works/doesn't work so we can establish more consistency in management and leadership at Mozilla.
nigelb
- Geektionary
- Like urban dictionary, but open source! I haven't started anything yet. I started with the idea of coding it in Flask + MongoDb, I might just use Django/Playdoh + Postgres instead.
ozten
peterbe
potch
rhelmer
ricky
- dotjs (code)
- dotjs is a Firefox Add-on that executes JavaScript files in `~/.js` based on their filename and the domain of the site you are visiting. Also has support for coffeescript and injecting CSS.
robhudson
django-debug-toolbar: Shows lots of things Django is doing behind the scenes on each request, like SQL queries and which templates are rendered, etc. Authored and now co-maintain with David Cramer of Disqus.
At my previous job I wrote pivotal-py, a lightweight wrapper around the Pivotal Tracker API. The original impetus was to email each developer a daily snapshot of all of our open bugs each morning. I've used the same pattern for the Untappd API and have been pondering a possible API wrapper toolkit idea for APIs that follow good REST patterns.
seanmonstar
- Shipyard
- Shipyard is a sink-included MVC framework in JavaScript. Add-on Builder is currently get transformed into it. Wee!
skinny
ubernostrum
timw
- Django Statomatic
- django-statomaic is a pure Django static-site generator. Alternative to Jykell.
tofumatt
- Kijiji Kombat
- Firefox add-on that removes annoying UX fails of the popular-in-Canada (but terrible-to-use) Kijiji website.
- vacation-bot
- A node.js IRC bot that reminds you of your vacationing web developer friend.
In development and not ready for primetime:
- rails-annoying
- Ruby Gem that takes some common, minor annoyances out of Rails (or your Rails code).
- Quotes.txt
- Django app -- A collection of the funny things you and your friends say that no one should read.
wenzel
- Straßendeutsch
- Straßendeutsch (German for: Street German) is a German UrbanDictionary clone (such sites exist, but they all suck). I use it as an excuse to play with Flask and MongoDB and Twitter Bootstrap. It doesn't do much yet, nor have I staged it anywhere. Baby steps!
- Copy ShortURL
- Copy ShortURL is my favorite little Firefox add-on based on the Addons SDK. Right-click -> Copy ShortURL works well, but there's no convenient way to configure it yet. It's in urgent need of a preference window.
- Python-Bcrypt
- python-bcrypt is a pure Python implementation of bcrypt. It works, but is ridiculously slow in CPython (factor 300 slower than C), in PyPy a not-as-painful 10x slower than C. While it might never become a viable alternative to py-bcrypt (the wrapped C library), it could use some optimization love (make sure it never exceeds 32bit ints?) if you're into this kind of thing.
- Stapler
- A small PDF manipulation tool written in Python. It makes use of the PyPDF library to act as a somewhat more lightweight alternative to pdftk
- Millimeter
- A simple Django-based, private (i.e., login-only) URL shortener. If you want to play with django-piston (or so), it should be really easy to add an API.
wil
willkg
- Pyblosxom
- Pyblosxom is a file-based blog system that allows you to use your existing text-editing tools/workflow to blog.
- Python Miro Community
- Python Miro Community is a curated index of Python-related video primarily from conferences like PyCon, DjangoCon, PyOhio, .... It's a great resource for keeping up with what's going on conference-wise. Runs on Miro Community and I'm integrating Universal Subtitles now, too.
- MediaGoblin
- MediaGoblin is a media-posting system in its early stages.
- phil
- phil is a command line utility that sends reminder emails about meetings as defined in an iCalendar file.