Back to my home page

Projects I built for understanding a magic machine known as computer!

All of them are open source and can be found at github.com/ansal.

Computer Networking

I am trying to understand how computer networks work at software level by implementing a few network servers like web server, a torrent client etc.

Python Web Server

I built a simple webserver using Sockets in Python. This works similar to what

            python -m SimpleHTTPserver
        
does. It serves a directory of files with the right mime types so that clients like browsers can properly render them. The secret agenda was to learn how Sockets are used in Python, how TCP and HTTP work.

View Source

Node + Express Web Applications

I built these applications back in 2013-14 when I was learning to build web applications using Javascript, jQuery, Backbone, Express, Mongo and Node.

Zenpics

Zenpics is a web app to share photos, create albums or simply backup photos to the cloud. It is written using ExpressJS and MongoDB. Amazon S3 is used to store uploaded pictures. The main motive behind building such an app is to backup huge number of photos sitting in my harddrive taken using a DSLR. Read more about Zenpics here - http://learnjsbydoingprojects.tumblr.com/post/84748450480/zenpics

View Source

ChotiBaatein

ChotiBaatein (smalltalk in Hindi) is a simple group chat application written in ExpressJS, Socket.IO and BackboneJS. The main aim behind hacking up this project was to learn about real-time capabilities of NodeJS using socket.IO. See a more detailed writeup about the project in this blogpost - http://learnjsbydoingprojects.tumblr.com/post/89037237575/choti-baatein-is-now-live

View Source

ForeverJS

ForeverJS, similar to Pocket app in many ways, lets you save an article for reading later using a bookmarklet. I just wanted to make a small app that mimics the functionality of Pocket app. Its written using BackboneJS and ExpressJS. See the accompanying blog post here - http://learnjsbydoingprojects.tumblr.com/post/93481890965/foreverjs

View Source

Codeacademy to JSON

This is a NodeJS app that converts Codeacademy user profile page into JSON. It was written for one of my friends who was working on a student scholarship project. At that time Codeacademy didn't offer an api to access their data programmatically. More details here - http://learnjsbydoingprojects.tumblr.com/post/81912127686/codeacademy-to-json

View Source

Jaaga Demo Vote

DemoVote is a BackboneJS app with ExpressJS + MongoDB as backend that helps people in Jaaga, a co-working space in Bangalore, to keep track of their projects and Vote on other projects. Read more about demo vote here http://learnjsbydoingprojects.tumblr.com/post/94687232070/demo-vote.

View Source

Node Express Mongoose Boilerplate

This is a simple template for building single page apps with Node, Express & Mongoose. Authentication support using PassportJS is built in. Accompanying blog post - http://learnjsbydoingprojects.tumblr.com/post/93480995030/node-express-mongoose-boilerplate

View Source

Javascript Games

These are my experiments to create games with Javascript. These projects were the most fun to build!

TileSum

This is a board game in which user has to select tiles to sum up the number displayed on the right side of the screen. This is my experiment of making an Android game with Javascript. Read more here - http://learnjsbydoingprojects.tumblr.com/post/93570457500/tilesum

Visit Site | View Source

SpaceWars

A small space shooter written in JS. This is the first game I've written that had stages. It has four stages with varying difficulties and more enemies. Read more here - http://learnjsbydoingprojects.tumblr.com/post/89075569920/spacewars

Visit Site | View Source

Breakout JS

This is a simple clone of popular Breakout game. This is my first JS game. All the graphics are taken from opengamearts.org. Thanks to "Kenney" for such awesome work. Related blog post http://learnjsbydoingprojects.tumblr.com/post/87618678225/breakoutjs-my-first-game

Visit Site | View Source

Mobile applications in Javascript

I tried building some mobile applications using Javascript back when React Native was not a thing. It didn't work quite well for me at that time.

XpenseJS

ExpenseJS is a mobile app to manage your expenses. I did this project for learning to make an Android app with HTML5 & CSS. I used Apache Cordova for generating the APK. Read more at http://learnjsbydoingprojects.tumblr.com/post/94689425260/xpensejs

View Source


© Ansal S.A, under CC0 License.