A project built for freecodecamp.com in 2016, the requirement then were to build a simple voting app

React
Javascript
Bootstrap
Meteor
mongoDB
D3

A project built for freecodecamp.com in 2016, the requirement then were to build a simple voting app
I was so excited to finally put all my knowledge to the test with this full stack app. I have started with node and express but the lack of experience working with big projects turned my work into a big mess. The real breaking point was when I had to implement user login. I have started studying passport.js to try and implement a log in function but with no real success, so after a day I started looking into alternatives. Since freecodecamp stopped asking that all Web App projects must be made using the MEAN stack it meant that I can pick what ever framework I wanted. My first thought was Django because of my previous Python knowledge, but that quickly changed when I saw what Meteor has to offer. I had some previous interaction with Meteor since I wanted to build a project for myself about half a year prior to this project and I was pleasantly surprised about the fact that Meteor fully adopted React as it's rendering engine so I was hitting two birds with one stone. The project is pretty well organised and has plenty of functionality. The thing I remember was frustrating was the fact that my views were updating twice, because of the State change of the React Component and the auto-update function of Meteor. That was a problem I chose to fix when working on a later project, but that is another story. I also remember that it took a whole day to implement the fill percentage with color of the option row based on the total number of votes, the method I used was a separate div for the Text, border and actual fill. The app is not fully polished and has some minor slip ups but it works. It took me 9 days to finish including the one day experiments with different frameworks. Overall I am pleased with the result given the fact that this was way harder to make then the next two challenges.