Every labeling and data exploration journey starts with creating a new project. The project consists of a dataset, the UI to label and explore it, a machine learning model to assist you with labeling, and possibly several external collaborators or your team’s members.

Create a new project

Starting a new labeling project in Heartex is as easy as pressing the “Create from scratch” or “Use template” button projects dashboard page. Administrators and Data Science users can start new projects.

Project name

The first step in creating your project is to provide a project name. The name will be the internal reference for the project which users will see on their pages. Below, we fill out the name and description for the classifier project:

Editor config

Each project has it’s own UI for the labeling. The configuration is based on HTML-like tags, which internally are mapped into the associated React classes. You can check out editor page or tags reference to get a better understanding of what’s supported. For popular scenarios, there are pre-configured templates available here

You can modify the config after the project is created, but only if there are no completions created.

Project Dashboard

The project dashboard serves as the central page for a Heartex user. Each project has its dashboard page, which is created when you start a new project. The page provides an overview of significant project statistics. Depending on permission, different user roles get different parts of the dashboard shown to them. For example, Lead Annotators will only see the Data Manager.

Project Settings

Each project can be extensively configured and tailored for your particular labeling scenario.


Data credentials

If you use a resource hosting with the basic auth then you can use Heartex Proxy server which provides basic auth (http login & password). To use this option just add login and password in the project settings and press “Save”.

Your domain from task data must be in format {http://|https://}<name>.<zone>[:port], examples:, Wrong example: http://domain:7777.


Configure instruction. It should describe what an expert should do in each task. There is support for reach text and auto-saving


Number of completions of the task before it’s considered as Done

Machine Learning

Cloud Storages

You can connect AWS S3 cloud storage to your project. Once connected, you’ll be able to sync project tasks with the data stored in your bucket, e.g. creating new tasks on-the-fly from the remote images.

It’s possible to create many storage connections by pressing Create Storage button, sync them with project tasks by clicking Sync and remove created connection using x cross icon in the right upper corner.

When creating new connection, you have to specify:

  1. You storage title
  2. S3 bucket name
  3. Regular expression to filter out unneccessary file objects (Note: if you want select everything, type .*)
  4. Prefix paths used for locating folders inside bucket.
  5. You storage description
  6. Use object URLs selector: if checked, only s3 URLs are imported (this is actual use case when you have binary large objects stored on S3 e.g. image or audio files.). Otherwise, all objects are fully downloaded and interpreted as JSON-formatted tasks.
  7. Object tag value name selected from all available $values attribute in object tags. Only applicable when “Use Object URLs” selector is checked.
  8. AWS credentials

CORS and access problems

Check the browser console (Ctrl + Shift + i in Chromium) for errors if you have troubles with the bucket objects access.

Duplicate & Delete

Inside the “More” panel, you can delete the entire project, only completions or only the tasks. You can also duplicate a project.

Using Templates

For your convenience, you can create a new project from predefined templates.