---
author: einar
categories:
- Anime
- KDE
- Linux
comments: true
date: "2009-10-25T20:16:50Z"
slug: danbooru-client-a-client-for-danbooru-based-sites
tags:
- danbooru
- KDE
- pykde
- python
title: Danbooru Client - a client for Danbooru based sites
disable_share: true
wordpress_id: 708
---

A while ago I presented ["danbooru2nepomuk"]({{ site.url }}/2009/10/danbooru2nepomuk-a-nepomuk-tagger-for-danbooru-images), a small program to tag images coming from [Danbooru-based image boards](http://en.wikipedia.org/wiki/Imageboard#Danbooru-style_boards). Today I want to present the evolution of that program, that is a PyKDE4 client for those boards.


<!--more-->


# Danbooru? Is it something you eat?

Well, aside from the Wikipedia link above, I think a small introduction is in order, at least for the readers coming from PlanetKDE. Danbooru is a kind of image board which structures its data semantically, by having tags attached to images (along with other things, such as favorites, rating, etc.). It can be browsed normally (newest posts, etc.) or by using tags and other properties. Some boards are quite popular in the anime-viewing community. The neat thing about Danbooru (which is by itself a Ruby on Rails application) is the fact that it can provide a REST and POST API to access data. So. it's technically possible to access such boards programmatically: the API permits not only retrieving posts, but also upload, tag, and perform other operations.

The API could be technically used also for client applications, in order to free the user from using a browser. That is what Danbooru Client is aiming to do.

# Introducing Danbooru Client

Danbooru Client fits exactly these needs by providing a GUI to (part of) the Danbooru API.

**Features:**

  * Connect to any Danbooru board (three predefined)
  * Download up to 100 images with selectable tags;
  * Download or view images with the KDE preferred image viewer;
  * Tag semantically the images using Nepomuk.

**Requirements:**

  * PyQt (at least version 4.5)
  * PyKDE4 (tested with PyKDE 4.3 only)
  * (optional) Nepomuk
  * Python (at least version 2.5)

**Screenshots**

[![]({{ site.url }}/images/2009/10/danb_client1_resized.png)]({{ site.url }}/images/2009/10/danb_client1.png) [![]({{ site.url }}/images/2009/10/danb_client2_resized.png)]({{ site.url }}/images/2009/10/danb_client2.png)

(click to enlarge)

## Download & Installation

You can obtain Danbooru Client [from kde-apps.org](http://www.kde-apps.org/content/show.php/Danbooru+Client?content=114343). For the bleeding edge people (but are there such users for such an application?) there is a [git repository set up at Gitorious](http://gitorious.org/danbooru-client/danbooru-client). Once downloaded, you need to use CMake to install the files. Unfortunately due to the way CMake is set up, you'll need the KDE development headers and a working C++ compiler, even though you won't need them for the installation.

The installation process is very straightforward:





[bash]cd /path/to/source
mkdir build; cd build
cmake -DCMAKE_INSTALL_PREFIX=`kde4-config --prefix` ../
make # This just byte-compiles Python files
sudo make install[/bash]




Then, just launch "danbooru_client".

## Known limitations

There are plenty for now, it's just version 0.1:

  * Zero documentation (although it's kind of straightforward to use)
  * Empty cells are created when a row is not filled with images
  * No support for multi-download
  * Untested login/password access
  * The interface may be horrid
  * Danbooru does not support rating filtering via API, so it's not currently possible to do so

The client is licensed under the GPL v2 or later. The artwork for the splash screen is also under the GPL and was made by [Melissa Adkins](http://www.melissaadkins.com).  

