This is a collection of some personal projects I’ve worked on that are easily viewable online. Anything that is not browser-friendly will not make the cut :(

I’m also available for consulting, so feel free to contact me if you’d like to work together.


Courses

I have an interactive, online video course “Case Studies in Shiny” hosted on DataCamp. It’s designed to give you practice building Shiny apps for real-life scenarios, while also helping your learn some advanced Shiny concepts. At the time of writing, 2.5 years after it was released, this course is the #2 best-rated course on DataCamp.

Website templates

  • Beautiful Jekyll - a very popular Jekyll theme (> 10k websites built) I created when making this website. You can view a demo or use it yourself to make a pretty website similar to this one by visiting the project page. The theme is extremely easy to install - you can have a site up and running in 2 minutes, and it’s designed to look great on both mobile devices and laptops.

Web services

  • CRANalerts - Get email alerts when a CRAN package gets updated.

R Shiny apps

If you got here after reading some of my blog posts, you’ll know that I’m a big fan and advocate of Shiny. I also run a company providing Shiny consultancy. Unfortunately all my coolest big Shiny apps that were made for clients are private, but you can see a sample of the Shiny apps I’ve built for myself on my Shiny server.

R packages

  • shinyjs - Easily improve UX in your Shiny apps, adds useful features to Shiny apps, and call your own JavaScript functions using plain R code. Also includes a colour picker. Check out a demo online. Available on CRAN and on GitHub.

  • timevis - Create interactive timeline visualizations in R (can be embedded into Shiny apps and R markdown documents, or simply viewed from the R console). Check out a demo online. Available on CRAN and on GitHub.

  • colourpicker - A colour picker tool for Shiny and for selecting colours in plots. Available on CRAN and on GitHub.

  • shinyalert - Easily create pretty popup messages (modals) in Shiny. Check out a demo online. Available on CRAN and on GitHub.

  • addinslist - Browse through a continuously updated list of existing RStudio addins and install/uninstall their corresponding packages. Available on CRAN and on GitHub.

  • shinycssloaders - Add loading animations to a Shiny output while it’s re-calculating. Available on CRAN and on GitHub. Originally developed by Andrew Sali, I took ownership in 2019.

  • ggExtra - Easily add histograms/density plots to ggplot2 scatterplots, plus a few more ggplot2 convenience functions. Check out a demo online. Available on CRAN and on GitHub.

  • cometr - A convenient R wrapper to the ‘Comet’ API, providing easy interaction with the ‘Comet’ cloud platform for tracking and optimizing machine learning models. Available on CRAN and on GitHub.

  • ezknitr - Avoid the typical working directory pain when using ‘knitr’. If you’re into R and reproducible research/generating reports with knitr, then do check it out. Available on CRAN and on GitHub.

  • shinyforms - Easily create questionnaire-type forms with Shiny. Check out a demo online. Available on GitHub (still in development).

  • ddpcr - Analyze and visualize droplet digital PCR data. Check out a demo online. Available on CRAN and on GitHub. Manuscript in F1000Research.

  • lightsout - An implementation of the puzzle game Lights Out using R. Play the game online. Available on CRAN and on GitHub.

Many of my R packages/tutorials/thoughts are graciously shared on R-bloggers, which is a great resource for any useR.

Chrome extensions

Websites

  • Wish.com - a very popular shopping platform. I was one of the few original developers of the site (before it was even called Wish!) and contributed mostly to the frontend. I was part of Wish’s inception and initial growth, but since then it has grown to be a #1 Android Shopping app, and I can’t claim any credit to that. :)

  • MakeupBee.com - website for women to discover and talk about interesting makeup applications. Clearly my area of expertise! The site was mostly developed by Brent Francia (CEO) and I, and I was responsible for all aspects of the development, seeing as we were usually a 2-3 person team.

  • Glittr.com - spin-off of MakeupBee that was designed to be more focused on mainstream looks and have a cleaner feel. I’ve written most of the code for this site.

  • Jauntr.com - travel site with a social component, that is meant to help users discover and share places to go. It never really took off, but it was my first introduction to web development.

  • daattali.com - small personal website that I run on a virtual server just because I wanted a place to host my own R Shiny server and RStudio server.

  • deanattali.com - the site you’re currently on. Just a simple site to have some virtual presence.

Recorded Talks

Misc

  • Organizer of the Toronto R Meetup.

  • Impact Replays - I participated in a national hackathon (SportsHack15) and won 3rd place with this app. We had to build something that would increase engagement of CFL (Canadian Football League) fans. This app uses play-by-play data from games to let you focus on just the action moments of games.

  • Settlers of Catan Turn Analyzer - You really think that 4 came up more than the 8? Tired of everyone “wrongly” claiming you take the longest turns? Only one way to find out!

  • Minesweeper - tiny Minesweeper game I built as part of the interview process with Airbnb. It’s not fancy at all, but it’s the best I could do in the two hours they allotted me back in the day.

  • Building your own portable oldies gaming console - I bought a raspberry pi and turned it into an awesome portable gaming console that supports SNES/PS1/GameGear/GameBoy. Super cool.

Java games

I have several cool Java games I wrote, but I currently don’t have a way to host the applet online without paying way too much money to buy a certificate. I might find a way around that in the future.