Skip to content
Let’s Big Data. Hue is an open source Web interface for analyzing data with Hadoop and Spark.
Python HTML JavaScript C Mako Java Other
Find file
Failed to load latest commit information.
apps HUE-3746 [metastore] Add browse link in the sample page if there is s… May 3, 2016
desktop HUE-3736 [core] Fix flaky jasmine tests May 2, 2016
dist [doc] Friendler tarball install README May 4, 2015
docs PR-347 [doc] Rewrite gethue.tumblr.com to gethue.com Apr 15, 2016
ext/thirdparty HUE-2523 [core] Convert tests to the new generator Oct 19, 2015
maven HUE-3538 [core] Standardizing repo ids and upgrading shade plugin Apr 10, 2016
tools HUE-3716 [core] Add gen-py paths to hue.pth Apr 28, 2016
.gitattributes hue (formerly Cloudera Desktop) from internal commit 4694ac0434dad851… Jun 27, 2010
.gitignore [core] Reorganized .gitignore files and added a global java-lib exclu… Oct 12, 2015
LICENSE.txt hue (formerly Cloudera Desktop) from internal commit 4694ac0434dad851… Jun 28, 2010
Makefile [core] Added 'make theme' target to the Makefile Oct 14, 2015
Makefile.sdk HUE-758 [core] Internationalization Jul 31, 2012
Makefile.tarball HUE-2943 [core] Manually exclude boto from the pruning to fix packaging Sep 2, 2015
Makefile.vars [notebook] Automatically start the DBProxy server if we have some JDB… Oct 12, 2015
Makefile.vars.priv hue (formerly Cloudera Desktop) from internal commit 4694ac0434dad851… Jun 28, 2010
NOTICE.txt [core] Add third-party dependency references Mar 25, 2014
README.md PR349 [doc] Add sasl-plain dependency for Centos 6.6 Apr 25, 2016
VERSION [core] Bump version to 3.9 Aug 7, 2015
data Make app registry location configurable May 9, 2013

README.md

alt text

Welcome to the repository for Hue

Hue is an open source Web interface for analyzing data with any Apache Hadoop: gethue.com

alt text

It features:

  • SQL Editors for Hive, Impala, MySql, PostGres, Sqlite and Oracle
  • Dynamic search dashboards for Solr
  • Spark Notebooks
  • Browsers for YARN, HDFS, Hive table Metastore, HBase, ZooKeeper
  • Pig Editor, Sqoop2, Oozie workflows Editors and Dashboards
  • Wizards to import data into Hadoop

On top of that, an SDK is available for creating new apps integrated with Hadoop.

More user and developer documentation is available at gethue.com.

Getting Started

To build and get the development server running:

$ git clone https://github.com/cloudera/hue.git
$ cd hue
$ make apps
$ build/env/bin/hue runserver

Now Hue should be running on http://localhost:8000 !

The configuration in development mode is desktop/conf/pseudo-distributed.ini.

Note: to start the production server (but lose the automatic reloading after source modification):

$ build/env/bin/supervisor

To run the tests:

Install the mini cluster (only once):

$ ./tools/jenkins/jenkins.sh slow

Run all the tests:

$ build/env/bin/hue test all

Or just some parts of the tests, e.g.:

$ build/env/bin/hue test specific impala
$ build/env/bin/hue test specific impala.tests:TestMockedImpala
$ build/env/bin/hue test specific impala.tests:TestMockedImpala.test_basic_flow

Development Prerequisites

You'll need these library development packages and tools installed on your system:

Ubuntu:

  • Oracle's JDK (read more here)
  • ant
  • gcc
  • g++
  • libffi-dev
  • libkrb5-dev
  • libmysqlclient-dev
  • libsasl2-dev
  • libsasl2-modules-gssapi-mit
  • libsqlite3-dev
  • libssl-dev
  • libtidy-0.99-0 (for unit tests only)
  • libxml2-dev
  • libxslt-dev
  • make
  • mvn (from maven package or maven3 tarball)
  • openldap-dev / libldap2-dev
  • python-dev
  • python-setuptools
  • libgmp3-dev
  • libz-dev

CentOS/RHEL:

  • Oracle's JDK (read more here)
  • ant
  • asciidoc
  • cyrus-sasl-devel
  • cyrus-sasl-gssapi
  • cyrus-sasl-plain
  • gcc
  • gcc-c++
  • krb5-devel
  • libffi-devel
  • libtidy (for unit tests only)
  • libxml2-devel
  • libxslt-devel
  • make
  • mvn (from apache-maven package or maven3 tarball)
  • mysql
  • mysql-devel
  • openldap-devel
  • python-devel
  • sqlite-devel
  • openssl-devel (for version 7+)
  • gmp-devel

MacOS:

  • Xcode command line tools
  • Oracle's JDK 1.7+
  • maven (Homebrew)
  • mysql (Homebrew)
  • gmp (Homebrew)
  • openssl (Homebrew)
  • Required for Mac OS X 10.11+ (El Capitan), after brew install openssl, run: export LDFLAGS=-L/usr/local/opt/openssl/lib && export CPPFLAGS=-I/usr/local/opt/openssl/include

File Layout

The Hue "framework" is in desktop/core/ and contains the Web components. desktop/libs/ is the API for talking to various Hadoop services. The installable apps live in apps/. Please place third-party dependencies in the app's ext-py/ directory.

The typical directory structure for inside an application includes:

  src/
    for Python/Django code
      models.py
      urls.py
      views.py
      forms.py
      settings.py

  conf/
    for configuration (``.ini``) files to be installed

  static/
    for static HTML/js resources and help doc

  templates/
    for data to be put through a template engine

  locales/
    for localizations in multiple languages

For the URLs within your application, you should make your own urls.py which will be automatically rooted at /yourappname/ in the global namespace. See apps/about/src/about/urls.py for an example.

Main Stack

Hue would not be possible without:

Community

License

Apache License, Version 2.0 http://www.apache.org/licenses/LICENSE-2.0

Something went wrong with that request. Please try again.