Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
60 changes: 0 additions & 60 deletions .github/workflows/zendesk_issue_commented.yml

This file was deleted.

49 changes: 0 additions & 49 deletions .github/workflows/zendesk_issue_created.yml

This file was deleted.

104 changes: 0 additions & 104 deletions .github/workflows/zendesk_task_comment.yml

This file was deleted.

35 changes: 0 additions & 35 deletions .github/workflows/zendesk_task_solve.yml

This file was deleted.

41 changes: 41 additions & 0 deletions Dockerfile.development
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,34 @@ ARG BRANCH_OVERRIDE
FROM --platform=${BUILDPLATFORM} node:${NODE_VERSION} AS frontend-builder
WORKDIR /label-studio/web

# Install frontend deps and build production assets so /web/dist exists for the final image
COPY web/package.json web/yarn.lock ./
RUN corepack enable && yarn install --frozen-lockfile

COPY web .
COPY pyproject.toml ../pyproject.toml

RUN yarn build

################################ Stage: frontend-dev (hot reload frontend)
FROM --platform=${BUILDPLATFORM} node:${NODE_VERSION} AS frontend-dev
WORKDIR /label-studio/web

# Enable file watching inside Docker on Windows/macOS
ENV HOST=0.0.0.0 \
PORT=3000 \
CHOKIDAR_USEPOLLING=1 \
WATCHPACK_POLLING=true

COPY web/package.json web/yarn.lock ./
RUN corepack enable && yarn install

COPY web .
COPY pyproject.toml ../pyproject.toml

EXPOSE 3000
CMD ["yarn", "dev", "--host", "0.0.0.0", "--port", "3000"]

################################ Stage: venv-builder (prepare the virtualenv)
FROM python:${PYTHON_VERSION}-slim AS venv-builder
ARG POETRY_VERSION
Expand Down Expand Up @@ -69,6 +94,22 @@ RUN --mount=type=cache,target=$POETRY_CACHE_DIR,sharing=locked \
poetry install --only-root --extras uwsgi && \
python3 label_studio/manage.py collectstatic --no-input

################################ Stage: backend-dev (hot reload backend)
FROM venv-builder AS backend-dev

ENV DJANGO_SETTINGS_MODULE=core.settings.label_studio \
DEBUG=1 \
PYTHONUNBUFFERED=1 \
PYTHONDONTWRITEBYTECODE=1

# Add file watcher for reliable reloads inside Docker
RUN --mount=type=cache,target=$POETRY_CACHE_DIR,sharing=locked \
poetry run python -m pip install --no-cache-dir watchdog

EXPOSE 8080
# Run migrations automatically before starting the dev server
CMD ["sh", "-c", "poetry run python label_studio/manage.py migrate && poetry run python label_studio/manage.py runserver 0.0.0.0:8080"]

################################ Stage: py-version-generator
FROM venv-builder AS py-version-generator
ARG VERSION_OVERRIDE
Expand Down
39 changes: 39 additions & 0 deletions docker-compose.dev.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
services:
backend:
build:
context: .
dockerfile: Dockerfile.development
target: backend-dev
args:
- INCLUDE_DEV=true
env_file:
- .env
environment:
- WATCHFILES_FORCE_POLLING=true
command: sh -c "poetry run python label_studio/manage.py migrate && poetry run python label_studio/manage.py runserver 0.0.0.0:8080"
volumes:
- ./label_studio:/label-studio/label_studio
- ./deploy:/label-studio/deploy
ports:
- "8080:8080"

frontend:
build:
context: .
dockerfile: Dockerfile.development
target: frontend-dev
args:
- INCLUDE_DEV=true
environment:
- CHOKIDAR_USEPOLLING=1
- WATCHPACK_POLLING=true
- NX_DAEMON=false
- FRONTEND_HMR=true
- FRONTEND_HOSTNAME=http://localhost:3000
- DJANGO_HOSTNAME=http://backend:8080
command: yarn dev --host 0.0.0.0 --port 3000
volumes:
- ./web:/label-studio/web
- /label-studio/web/node_modules
ports:
- "3000:3000"
13 changes: 0 additions & 13 deletions docker-compose.override.example.yml

This file was deleted.

3 changes: 3 additions & 0 deletions web/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,9 @@ testem.log
/typings
.nx/
migrations.json
.claude
.claude/
/.claude

# System Files
.DS_Store
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -237,7 +237,7 @@
}
},
{
"title": "Behind the benchmark",
"title": "Behind the TestMark",
"description": "Learn how Legalbenchmarks.ai built and scaled a benchmark for practical contract drafting tasks using LLM-as-a-judge and human review in Label Studio Enterprise.",
"link": {
"label": "Learn more",
Expand Down Expand Up @@ -285,4 +285,4 @@
}
}
]
}
}
Loading
Loading