Socket
Book a DemoInstallSign in
Socket

@pareto-engineering/label-studio-mono

Package Overview
Dependencies
Maintainers
0
Versions
14
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@pareto-engineering/label-studio-mono

Label Studio is a complex, NX-managed project divided into three main components:

latest
npmnpm
Version
1.0.16
Version published
Weekly downloads
12
Maintainers
0
Weekly downloads
 
Created
Source

Label Studio

Label Studio is a complex, NX-managed project divided into three main components:

Main App (apps/labelstudio)

This is the primary application that consolidates all frontend framework elements. It's the hub for integrating and managing the different libraries and functionalities of Label Studio.

Library - Label Studio Frontend (libs/editor)

Label Studio Frontend, developed with React and mobx-state-tree, is a robust frontend library tailored for data annotation. It's designed for seamless integration into your applications, providing a rich set of features for data handling and visualization. Customization and extensibility are core aspects, allowing for tailored annotation experiences.

Library - Datamanager (libs/datamanager)

Datamanager is an advanced tool specifically for data exploration within Label Studio. Key features include:

Installation Instructions

1 - Dependencies Installation:

  • Execute yarn install --frozen-lockfile to install all necessary dependencies.

2 - Environment Configuration (Optional for HMR):

  • If you want to enable Hot Module Replacement (HMR), create an .env file in the root Label Studio directory.
  • Add the following configuration:
    • FRONTEND_HMR=true: Enables Hot Module Replacement in Django.

Optional configurations (defaults should work for most setups):

If using Docker Compose with HMR:

  • Update the env_file: .env directive in docker-compose.override.yml under the app service.
  • Rerun the app or docker compose service from the project root for changes to take effect.

To start the development server with HMR:

  • From the web directory: Run yarn dev
  • Or from the project root: Run make frontend-dev

Custom Configuration for DataManager:

  • If you need to customize the configuration specifically for DataManager, follow these steps:
    • Duplicate the .env.example file located in the DataManager directory and rename the copy to .env.
    • Make your desired changes in this new .env file. The key configurations to consider are:
      • NX_API_GATEWAY: Set this to your API root. For example, http://localhost:8080/api/dm.
      • LS_ACCESS_TOKEN: This is the access token for Label Studio, which can be obtained from your Label Studio account page.
  • This process allows you to have a customized configuration for DataManager, separate from the default settings in the .env.local files.

Usage Instructions

Key Development and Build Commands

  • Label Studio App:
    • yarn ls:dev: Build the main Label Studio app with Hot Module Reload for development.
    • yarn ls:watch: Build the main Label Studio app continuously for development.
    • yarn ls:e2e: Run end-to-end tests for the Label Studio app.
    • yarn ls:unit: Run unit tests for the Label Studio app.
  • Label Studio Frontend (Editor):
    • yarn lsf:watch: Continuously build the frontend editor.
    • yarn lsf:serve: Run the frontend editor standalone.
    • yarn lsf:e2e: Run end-to-end tests for the frontend editor.
    • yarn lsf:integration: Run integration tests for the frontend editor.
    • yarn lsf:unit: Run unit tests for the frontend editor.
  • Datamanager
    • yarn dm:watch: Continuously build Datamanager.
    • yarn dm:unit: Run unit tests for Datamanager.
  • General
    • yarn build: Build all apps and libraries in the project.
    • yarn ui:serve: Serve the Storybook instance for the shared UI library.
    • yarn test:e2e: Run end-to-end tests for all apps and libraries.
    • yarn test:integration: Run integration tests for all apps and libraries.
    • yarn test:unit: Run unit tests for all apps and libraries.
    • yarn lint: Run biome linter across all files with autofix.
    • yarn lint-scss: Run stylelint linter across all scss files with autofix.

Git Hooks

This project uses python pre-commit hooks to ensure code quality. To install the hooks, run make configure-hooks in the project root directory. This will install the hooks and run them on every pre-push to ensure pull requests will be aligned with linting for both python and javascript/typescript code.

If for any reason you need to format or lint using the same pre-commit hooks directly, you can run make fmt or make fmt-check respectively from the project root directory.

Ecosystem

ProjectDescription
label-studioServer part, distributed as a pip package
label-studio-frontendFrontend part, written in JavaScript and React, can be embedded into your application
label-studio-converterEncode labels into the format of your favorite machine learning library
label-studio-transformersTransformers library connected and configured for use with label studio
datamanagerData exploration tool for Label Studio

License

This software is licensed under the Apache 2.0 LICENSE © HumanSignal. 2020

FAQs

Package last updated on 18 Mar 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts