Commonplace App / Github source

Commonplace Book

I am an avid reader. I read a lot of non-fiction and some fiction. Generally, I read the non-fiction books to learn something, so I take highlights as I go. I liked the idea of readwise.io to store your highlights, but I thought there were some things missing or that I would like to do differently. I took that as an opportunity to create my own app.

I built it using Ruby on Rails to give myself experience in a different language and framework than I'm used to. It uses rspec for unit testing and Capybara for behavioral testing. Tests are run on Travis-CI to ensure that new commits don't break anything, and code climate is used to help ensure that there is good test coverage.

Strava App / Github source

I am a very active person and I make heavy use of Strava to log activities that I do. Strava is a very innovative running/cycling/etc social network that helps bring people together and provide encouragement. They have a ton of useful features such as segments where users can compete for top spots, as well as a compare option where you can compare yourself against other users or against a previous performance from yourself. With all that Strava has going for it, it isn't that great at displaying reports of data, at least in ways that I want to be able to see the data. Since Strava provides an API, I decided to take matters into my own hands.

I developed the app in Silex, which was chosen partially because it is a microframework that uses Symfony components. I built out some charts and graphs pages that use a JavaScript library called highcharts. I also built out a page where you can discover stats such as "What was the most miles that I've cycled in a 7 day period?" Since the app was built, Silex was deprecated, and I migrated to Symfony 4. It uses phpunit for unit testing and behat for behavioral testing. Tests are run on Travis-CI to ensure that new commits don't break anything.