Skip to content

Labelo installation

Labelo is an open-source data labeling tool designed to handle multiple projects, users, and diverse data types on a single platform. This documentation provides a step-by-step guide to installing and setting up Labelo, ensuring a smooth and efficient start to your data labeling process.

System Requirements

Labelo can be installed on machines running Windows, Linux , or macOS with Python 3.8 or later.

Installing Labelo using pip

To install Labelo with pip and a virtual environment, follow these steps:

  1. Ensure you have Python 3.8 or later installed on your system.
  2. Create a virtual environment:
    bash
    python3 -m venv env
  3. Activate the virtual environment:
    • On Linux or macOS:
    bash
    source env/bin/activate
    • On Windows:
    bash
    env\Scripts\activate
  4. Install Labelo using pip
    bash
    pip install labelo
  5. After installing Labelo , you can start the server with the following command:
    bash
    labelo

Your default web browser will automatically open at http://localhost:8080 with Labelo running.

Installing Labelo using Docker

Docker allows you to run Labelo in an isolated environment with minimal configuration, making it ideal for users who want a quick setup without managing dependencies.

Step 1: Install Docker

Ensure that Docker is installed on your system. You can follow the official Docker installation guide for your operating system.

Step 2: Pull the Labelo Docker Image

Once Docker is installed, pull the Labelo Docker image from Docker Hub:

bash
docker pull labelo/labelo:latest

Step 3: Run Labelo with Docker

To start Labelo using Docker, run the following command:

bash
docker run -p 8080:8080 -v $(pwd)/mydata:/labelo/data labelo/labelo:latest

This command will run the Labelo server on port 8080. Once started, you can access the Labelo web interface by navigating to http://localhost:8080 in your browser. You can find all the generated assets, including SQLite3 database storage labelo.sqlite3 and uploaded files, in the ./mydata directory.

INFO

If you need to bind the application to a different port, replace 8080 with your desired port number. For example:

bash
docker run -p 3000:8080 -v $(pwd)/mydata:/labelo/data labelo/labelo:latest

This will allow you to access the Labelo interface at http://localhost:3000.

Installing Labelo from source

This documentation will guide you through the process of installing Labelo from source for development purposes, enabling you to customize and improve the tool to meet your specific needs.

The core components of Labelo include:

  • Labelo Main App and Backend: Developed using Python and Django, ensuring a reliable and scalable platform for managing data labeling tasks.
  • Labelo Frontend: A JavaScript web application built with React, offering a responsive and user-friendly interface for efficient data labeling.

INFO

Before you begin, ensure that git is installed on your system to clone the labelo repository

Follow the steps below to install Labelo from source:

Step 1: Clone the Labelo Repository

  1. Open your command prompt or terminal.
  2. Navigate to the directory where you want to clone the Labelo repository.
  3. Run the following command to clone the repository:
bash
git clone https://github.com/Labelo/labelo.git

This will download the Labelo source code to your local machine, allowing you to set up a development environment and start customizing the tool.

Step 2: Install the required packages

After cloning the Labelo repository, you need to install the necessary dependencies to set up your development environment.

  1. Navigate to the Labelo Directory
    bash
    cd labelo
  2. Install Poetry: Poetry is a dependency management tool for Python. Install it using pip:
    bash
    pip install poetry
  3. Install Project Dependencies: Use Poetry to install the project’s dependencies as specified in the pyproject.toml file:
    bash
    poetry install
    poetry install will install all the required packages and dependencies for Labelo. Please be patient while the installation process completes, as it may take some time to install all the packages.

Step 3: Setup the database

By default, Labelo uses SQLite as its database. No additional configuration is required for setting up SQLite. It stores all data in a single file within the directory specified for the admin user. Once Labelo is started, the directory used for storing the database file will be printed in the terminal.

To initialize the database and apply any necessary migrations, run the following command:

bash
poetry run python labelo/manage.py migrate

This command will create the necessary database tables and apply any pending migrations.

After applying migrations, collect static files required for the web application by running:

bash
poetry run python labelo/manage.py collectstatic

This command gathers all static files into a single location so that they can be served efficiently.

Note

If you prefer to use PostgreSQL instead of SQLite, you can configure Labelo to use it. For detailed instructions on setting up and configuring PostgreSQL please refer to the database configuration documentation.

Ensure that you choose the appropriate database setup based on your development or production needs.

Step 4: Start the Server

To start the Labelo server in development mode, run the following command:

bash
poetry run python labelo/manage.py runserver

This will launch the server, and you can access the application in your web browser at http://localhost:8080. The development server will automatically reload whenever you make changes to the code, making it easier to test and debug your modifications.