Gossip Girl is an application powered by MeteorJS that notify its users about the gossips of other users in real-time. A user can subscribe to many users whose gossips the user is interested in. The application updates itself with the new content automatically so as to keep the real-time notifications coming without delay. It is "hot code push" technology of Meteor that makes this happen. Check out the apllication on https://gossipgirl-sc.herokuapp.com/.
I started the assignment by first discussing the problem with my friend. He advised me use the concepts of socket and build the application. I started exploring sockets and how to tie the application together. While exploring, I remembered that I made a simple To-do List app using MeteorJS which followed the auto reload "hot code push" technology so I shifted my focus to MeteorJS and started building the app. I created 2 collections (users collection was auto created by the accounts package of meteor), one for the gossips and the other holding the information that how many users was a user subscribed to ie one to many relationship. All the databases were connected via the id field of the users database. Using a combination of the MongoDB queries I was able to complete the assignment.
- Install MeteorJS:
https://www.meteor.com/install
- Clone the project:
git clone https://github.com/tanmaytat11/gossip-girl.git
- Change to the clonned project directory
cd gossip-girl
- Install the dependencies (It might take a while)
meteor npm install
- Run the project
meteor run
That's IT! The gossip-girl application should be running on http://localhost:3000/
Make sure the port is free
Go ahead create user accounts, subscribe to other users for interesting gossips and get these delivered to you in real time.
See the YouTube video for detailed explanation. https://youtu.be/wMD-pglgeKE
- Rishabh Saxena: For helping me out and pointing me in the right direction.
- karlseguin/the-little-mongodb-book: For all my MongoDB related queries.
- Meteor Tutorials: I learned about Meteor following these tutorials.
- Saurav Tiru: For testing out the application and his valuable feedback.
- Gautham Elango's Article: Tutorial on how to deploy Meteor app to Heroku.
- Heroku: For deploying the application.
- mLab: For hosting MongoDB.
Written with StackEdit.