Codeivate – social coding RPG


This article is written for and published on SitePoint.

When building a web application, you are probably using more than one language to get the job done. Maybe you are wondering how much focus you are actually giving different languages? These days, you can track that through Codeivate.

Codeivate is a tool which you can integrate with several editors like PhpStorm and Sublime Text and which will track the kind of files you are working on and award you points for that. In the end, you can see a complete profile of what you have been programming in and which languages you are using the most. See my profile on Codeivate for an example.


Integration with several editors is easy. In this article we will have a look at the integration with PhpStorm and Sublime Text. Do note, however, that more editors are currently supported and coming soon.

Before we can start, we first have to register on the Codeivate website. After registration, make sure you log in and go to the page that contains your token. The website is pretty hard to understand, so here is a direct link.

Sublime Text

Before you can configure Sublime Text, make sure you installed the package control. Open up package control and choose to install a package. Search for Codeivate and install the appropriate package.

Open up preferences -> package settings -> codeivate -> settings - user. Within this file, change the user_id and token_id to the values that you found on the token page of the Codeivate website. Change the machine_name field to any name you like. If you are using multiple machines, this will be the identifier to see the difference between those machines.

Restart Sublime Text and you are good to go. In the status bar, you will see feedback from Codeivate from time to time, indicating what your current streak is and which language you are currently programming in. Do note that Codeivate checks the syntax of the file you are working on, so use the set syntax commands from Sublime Text to make sure the file is properly defined.


Open PhpStorm and click file -> preferences. Within preferences, go to the plugin section and click browse repositories . Search for codeivate and install the appropriate plugin. When installed, a new settings page named codeivate settings will appear. Open up this settings page and fill in the user ID and user token. You can also define a machine name if you prefer. By defining a machine name, you can easily distinguish multiple machines from each other. You could also use a different machine name per editor if you prefer.

In the status bar, you will now see a welcome message from Codeivate. Whenever you start typing, it will display which language you are currently using and how long your current streak is.


If you set up your editor and do your first code changes, you will be able to view your progress on the Codeivate website. For instance, on the summary page, you can see your current standings. You can see your most active languages, how much you program per machine and what your best streak is.

On the leaderboard page you can see the list of top programmers. If you search for your name, you can find on which position you currently are.

The Codeivate website has some more neat features. Unfortunately, the website is rather unclear and you really have to dig through everything to find them. For instance, on this page you can view my statistics for the last 7 days. You want to see yours? Just change your username in the URL.

There is also a battle page where you can select 2 users which then battle on various aspects of what Codeivate tracks.


Codeivate is a really nice tool to keep track of things, especially if you like achievements. I have been using it for months now and it’s really nice to see what I have been up to so far. However, most of the current plugins and pages are in BETA already for months. Next to that, the website is very unclear by having all kinds of links to new pages scattered around. I think this tool really has some potential, but there is clearly a lot of work to do for the developer to get everything going.

Leave a Reply

Your email address will not be published. Required fields are marked *