Introdution to Chirp
A simple clone of twitter
I’m a developer with some years of experience, so I understand that if you want to learn new technologies the best way is always work on a real project. So when I thought to learn how to build a solution using a fullstack javascript framework, I looked for an interesting project.
I like the tools that provide the ability to comunicate (and share) information, so I decided to build a small social network called “Chirp” (I know, I have a little imagination), which has some features of Twitter. The software solution has been built using MEAN, which is a fullstack javascript composed by Mongodb, Expressjs, Angularjs and Nodejs. Below the Chirp architecture:

As you can you can see the UI has been implemented by SPA approach (Single Page Application) using Angularjs which is power web framework developed by Google. All I/O operations has been implemented with some rest api hosted by a socket server built on Node and Expressjs as middleware. The information are stored on Mongodb which is a fast Nosql dbms but also very flexible.
Now Chirp provides only a small subset of features that Twitter does but could be anough for working in simple context of some company. The features implemented are:
- public timeline (a list of the last messages posted from everyone)
- personal timeline (a list of the last messages posted from who i’m following)
- follow and unfollow of an user
- sign up of a new user
- posting a message
The job has just started and there is still hard work to do because there are many missing features and many bugs to fix, but i like the challenges especially if there is the opportunity to learn new stuff.
Obviously Chirp is an open source project and the code is hosted on github.
Antonio Di Motta