Skip to content
This repository


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

International Classification of Diseases (ICD)

branch: master

Fetching latest commit…


Cannot retrieve the latest commit at this time

Octocat-spinner-32 app
Octocat-spinner-32 config
Octocat-spinner-32 db
Octocat-spinner-32 doc
Octocat-spinner-32 lib
Octocat-spinner-32 log
Octocat-spinner-32 public
Octocat-spinner-32 script
Octocat-spinner-32 test
Octocat-spinner-32 vendor
Octocat-spinner-32 .gitignore
Octocat-spinner-32 Gemfile
Octocat-spinner-32 Gemfile.lock
Octocat-spinner-32 Rakefile


This application holds the contents of World Health Organization's International Classification of Diseases (ICD).


The purpose of this application is to provide the contents of the ICD in a SQL file, both in English and Spanish languages (feel free to send a pull request with new languages and/or corrections)

Current languages

  • English
  • Spanish

What's inside of this application?

Database ready for use

In doc/db/ are the SQL files that you can use for running this application: just insert it on the database.


You can use this application for browsing through chapters, blocks and codes.


Using the browser, just append .json to the url and it will return the data as json.

Create/update database

You can use Pentaho Data-Integration to create/update the database, running the job inside doc/kettle (or transformations if you prefer to do it separately).

But how do I update the database?

Running the kettle job will do it, but to update the database accordingly to the ICD you will need to download the zip archive with the data, and add the headers to the txt files, just as in the already downloaded ones.

Quick start

$ bundle
$ rake db:create
$ mysql -u<USERNAME> -p<PASSWORD> <DATABASE> < doc/db/icd10_en.sql
$ rails s

Now, you can use http://localhost:3000 to browse the ICD.


If you find a bug, want to improve the project, add more translations, or anything please send a pull request:

  1. Fork it.
  2. Create a branch (git checkout -b my_awesome_branch)
  3. Commit your changes (git commit -am "Added some magic")
  4. Push to the branch (git push origin my_awesome_branch)
  5. Create an ussue with a link to your branch
Something went wrong with that request. Please try again.