Skip to content

Conversation

@a-klos
Copy link
Member

@a-klos a-klos commented Jan 21, 2026

This pull request introduces significant improvements to the UI customization documentation and configuration for the frontend, refactors and modernizes the admin app build setup, and updates environment variable handling for easier rebranding and deployment. The most important changes are grouped below:

UI Customization and Rebranding Documentation Improvements

  • The docs/UI_Customization.md guide was extensively rewritten for clarity and completeness: it now explains rebranding steps (bot name, welcome message, logos, colors, favicons), build-time vs runtime configuration, and provides quick-start instructions for common branding tasks. It also covers Docker/Kubernetes deployment details, theme customization via Tailwind/daisyUI, and markdown/chat content styling. [1] [2] [3] [4] [5] [6]
  • Theming instructions in services/frontend/README.md were updated to point to the new Tailwind v4 + daisyUI v5 CSS plugin system, and environment variable usage was clarified for Docker deployments. [1] [2]

Admin App Build System Refactor

  • The admin app now uses a modern Vite config file: vite.config.mts was replaced with vite.config.ts, adding Tailwind v4 support via plugin, updating i18n plugin configuration, and cleaning up imports. Build references in project.json were updated accordingly. [1] [2] [3] [4] [5]
  • The admin app entrypoint (src/main.ts) was reordered for clarity and now ensures global styles are imported before app initialization.
  • The admin app Dockerfile and tsconfig were cleaned up to remove obsolete lines and references. [1] [2]

Environment Variable and Deployment Handling

  • Added VITE_BOT_NAME=Charles to the frontend development environment file for easier local rebranding.
  • Gitignore was updated to ignore all .nx/ cache files and deduplicate .npm-cache entries. [1] [2]

Dependency and Workflow Updates

  • The GitHub Actions workflow now uses dorny/paths-filter@v3 for improved change detection.
  • Updated frontend dependencies: replaced heroicons with @sit-onyx/icons in documentation for more accurate icon usage.

These changes make UI rebranding easier, clarify deployment strategies, modernize the admin app build setup, and improve documentation for both developers and operators.

a-klos and others added 5 commits December 16, 2025 12:04
- Added torch and torchvision dependencies to document-extractor with CPU support.
- Updated .gitignore in frontend to include npm cache.
- Bumped mcp version from 1.22.0 to 1.23.0 in mcp-server's poetry.lock.
- Updated langchain-core version from 1.0.7 to 1.2.6 and added uuid-utils dependency in rag-backend's poetry.lock.
- Adjusted markers for colorama package in rag-backend's poetry.lock.
This pull request refactors secret management and environment variable
handling across the local development and deployment workflow, focusing
on improving flexibility and security. The changes standardize secret
references, introduce dev-only helpers for Langfuse initialization, and
update documentation and templates to reflect the new structure. The
most important changes are grouped below:

**Secret Management Refactor**

* Secrets for basic authentication, Langfuse, S3, STACKIT, and RAGAS are
now split into individual username/password or API key fields with
support for referencing Kubernetes secrets via `secretKeyRef` in
`values.yaml` and Helm templates. This enables easier integration with
external secret managers and more granular secret configuration.
(`.env.template`, `Tiltfile`, `infrastructure/README.md`, `README.md`,
[[1]](diffhunk://#diff-d5b352058053e1306240bcd8ab265b3234d611212cd196b2001fbb9131048566R242-R255)
[[2]](diffhunk://#diff-d5b352058053e1306240bcd8ab265b3234d611212cd196b2001fbb9131048566L248-L253)
[[3]](diffhunk://#diff-d5b352058053e1306240bcd8ab265b3234d611212cd196b2001fbb9131048566L263-R312)
[[4]](diffhunk://#diff-749e06f64632f62a0c0dfbf4c4f3850e27e94ac109aa121fabd5c29469ae88deL13-R15)
[[5]](diffhunk://#diff-c2ee8653e1d6b85f0aadf87cd438a9250806c052877248442be4d434cbc52425L472-R486)
[[6]](diffhunk://#diff-c2ee8653e1d6b85f0aadf87cd438a9250806c052877248442be4d434cbc52425L535-R533)
[[7]](diffhunk://#diff-b335630551682c19a781afebcf4d07bf978fb1f8ac04c6bf87428ed5106870f5L211-R237)
F9cc2a25L27R29)
* Helm templates now use new helper functions to resolve secret names,
preferring `secretKeyRef.name` when set, and falling back to default
names. This affects backend/admin deployments and ingress
authentication.
(`infrastructure/rag/templates/_admin_backend_and_extractor_helpers.tpl`,
`infrastructure/rag/templates/_backend_helpers.tpl`,
[[1]](diffhunk://#diff-3ab40efdb049da16ac327c9fbaf8ec1d25f26efbeded4e0c2cfd7f50b976d3ceR18-R53)
[[2]](diffhunk://#diff-148b9880aef46deecdbc54ae7d004627e0aa1bf612fe139eb607861495ae9301R22-R65)
[[3]](diffhunk://#diff-148b9880aef46deecdbc54ae7d004627e0aa1bf612fe139eb607861495ae9301L112-R156)
[[4]](diffhunk://#diff-9f487482fa54d28d71fff497724bbc6741cced8a1e35c9b8829d1c6bd01dca0aL137-R145)
[[5]](diffhunk://#diff-2b6f7f2ec4938055207faa53acf7a300e0ec235db31d1cfb6896703b97292348L125-R133)

**Langfuse Dev-Only Helper**

* Added a dev-only workflow for Langfuse initialization secrets using
Kustomize and Tilt: developers can fill out a `.env.langfuse` file,
which is used to generate a stable Kubernetes secret for local
development. Documentation and Tiltfile logic were updated to support
this workflow.
(`infrastructure/kustomize/langfuse/.env.langfuse.template`,
`infrastructure/kustomize/langfuse/kustomization.yaml`, `Tiltfile`,
`README.md`, `infrastructure/README.md`,
[[1]](diffhunk://#diff-b2c7f0f443df5a8f90f932d8c1c326c35195f9e2758322412862ac844c83c257R1-R8)
[[2]](diffhunk://#diff-bd3d71bbf87e1ca957e44fdaf2c202225d57d281b5f6065f0d67eacc5e582485R1-R12)
[[3]](diffhunk://#diff-c2ee8653e1d6b85f0aadf87cd438a9250806c052877248442be4d434cbc52425R323-R330)
[[4]](diffhunk://#diff-b335630551682c19a781afebcf4d07bf978fb1f8ac04c6bf87428ed5106870f5R246-R251)
[[5]](diffhunk://#diff-d5b352058053e1306240bcd8ab265b3234d611212cd196b2001fbb9131048566R185-R190)

**Documentation Updates**

* Updated `README.md` and `infrastructure/README.md` to reflect the new
environment variable and secret structure, clarify dev/prod secret
management, and provide step-by-step instructions for local setup and
deployment. (`README.md`, `infrastructure/README.md`,
[[1]](diffhunk://#diff-b335630551682c19a781afebcf4d07bf978fb1f8ac04c6bf87428ed5106870f5L211-R237)
[[2]](diffhunk://#diff-b335630551682c19a781afebcf4d07bf978fb1f8ac04c6bf87428ed5106870f5R246-R251)
[[3]](diffhunk://#diff-d5b352058053e1306240bcd8ab265b3234d611212cd196b2001fbb9131048566R185-R190)
[[4]](diffhunk://#diff-d5b352058053e1306240bcd8ab265b3234d611212cd196b2001fbb9131048566R242-R255)
[[5]](diffhunk://#diff-d5b352058053e1306240bcd8ab265b3234d611212cd196b2001fbb9131048566L248-L253)
[[6]](diffhunk://#diff-d5b352058053e1306240bcd8ab265b3234d611212cd196b2001fbb9131048566L263-R312)

**Configuration and Template Changes**

* Updated Helm values and templates to match the new secret structure,
including support for referencing secrets and setting inline values for
all major providers (basic auth, Langfuse, S3, STACKIT, RAGAS).
(`infrastructure/README.md`,
`infrastructure/rag/templates/_admin_backend_and_extractor_helpers.tpl`,
`infrastructure/rag/templates/_backend_helpers.tpl`,
[[1]](diffhunk://#diff-9f487482fa54d28d71fff497724bbc6741cced8a1e35c9b8829d1c6bd01dca0aL137-R145)
[[2]](diffhunk://#diff-2b6f7f2ec4938055207faa53acf7a300e0ec235db31d1cfb6896703b97292348L125-R133)

**Minor Improvements**

* Added new environment variables for evaluation settings and improved
example values for clarity in documentation.
(`infrastructure/README.md`,
[infrastructure/README.mdL313-R353](diffhunk://#diff-d5b352058053e1306240bcd8ab265b3234d611212cd196b2001fbb9131048566L313-R353))

Let me know if you need more details about any specific change or how
these updates affect your workflow!

---------

Co-authored-by: Renovate Bot <renovate@whitesourcesoftware.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
This pull request introduces significant improvements to the development
and build workflows for both the backend services and Python libraries.
The main changes include a clearer separation between development and
production Docker builds, enhanced configuration for local development
via Tilt, and improved dependency management and testing setup for
Python libraries. These updates streamline live development, testing,
and linting processes, making them more reliable and easier to maintain.

**Build and workflow improvements:**

* Added explicit support for development mode in the `Tiltfile`,
allowing dynamic switching between `Dockerfile.dev` (for live code
updates and fast iteration) and production `Dockerfile` (for optimized
builds). Also updated Docker ignore lists for more targeted builds.
[[1]](diffhunk://#diff-c2ee8653e1d6b85f0aadf87cd438a9250806c052877248442be4d434cbc52425R10-R64)
[[2]](diffhunk://#diff-c2ee8653e1d6b85f0aadf87cd438a9250806c052877248442be4d434cbc52425L154-R208)
[[3]](diffhunk://#diff-c2ee8653e1d6b85f0aadf87cd438a9250806c052877248442be4d434cbc52425L196-R261)
[[4]](diffhunk://#diff-c2ee8653e1d6b85f0aadf87cd438a9250806c052877248442be4d434cbc52425L229-R315)
[[5]](diffhunk://#diff-c2ee8653e1d6b85f0aadf87cd438a9250806c052877248442be4d434cbc52425L274-R380)
[[6]](diffhunk://#diff-c2ee8653e1d6b85f0aadf87cd438a9250806c052877248442be4d434cbc52425L321-R422)
[[7]](diffhunk://#diff-c2ee8653e1d6b85f0aadf87cd438a9250806c052877248442be4d434cbc52425L335-R443)
* Updated GitHub Actions workflows to use `Dockerfile.dev` for service
builds during linting and testing, removed unnecessary build arguments,
and set Python version to 3.13 for consistency.
[[1]](diffhunk://#diff-9a979a1e38ba79e2c75e54c4bf21fe1a2a1b935e1736666565f992e634dadd0fL11-R11)
[[2]](diffhunk://#diff-9a979a1e38ba79e2c75e54c4bf21fe1a2a1b935e1736666565f992e634dadd0fL84-R84)
[[3]](diffhunk://#diff-9a979a1e38ba79e2c75e54c4bf21fe1a2a1b935e1736666565f992e634dadd0fL107-R116)
[[4]](diffhunk://#diff-ea3710a52b3ef06a333289cb6d30d80091cde61d7f198ca449e463a6a52e4d39L93-L113)

**Python library dependency and testing enhancements:**

* Refactored Poetry dependency groups in all Python libraries to
separate `test`, `lint`, and `dev` dependencies, added `setuptools
<80.9` for compatibility, and updated library versions. Also improved
`pytest` configuration for better logging and path setup.
[[1]](diffhunk://#diff-9c5aeb0db77c2eec077d07ddc3b3810ae1a4a1e50ee7061fba37a46706c513fbL7-R7)
[[2]](diffhunk://#diff-9c5aeb0db77c2eec077d07ddc3b3810ae1a4a1e50ee7061fba37a46706c513fbL68-R73)
[[3]](diffhunk://#diff-9c5aeb0db77c2eec077d07ddc3b3810ae1a4a1e50ee7061fba37a46706c513fbL93-R99)
[[4]](diffhunk://#diff-9c5aeb0db77c2eec077d07ddc3b3810ae1a4a1e50ee7061fba37a46706c513fbR115-R118)
[[5]](diffhunk://#diff-dede389bcfb615c4b45cd1da7ac14cbe9535305f41f19cce09e321c91a8bb323L7-R7)
[[6]](diffhunk://#diff-dede389bcfb615c4b45cd1da7ac14cbe9535305f41f19cce09e321c91a8bb323L73-L80)
[[7]](diffhunk://#diff-dede389bcfb615c4b45cd1da7ac14cbe9535305f41f19cce09e321c91a8bb323R103-R111)
[[8]](diffhunk://#diff-dede389bcfb615c4b45cd1da7ac14cbe9535305f41f19cce09e321c91a8bb323L130-R140)
[[9]](diffhunk://#diff-ddd05b1c3207b7c5f110a23524e106448461d9847d93c840c68412b9778ec3e6R59-R66)
[[10]](diffhunk://#diff-ddd05b1c3207b7c5f110a23524e106448461d9847d93c840c68412b9778ec3e6L80-R92)
[[11]](diffhunk://#diff-9c4162cc1c16dd4c7ec5e95e79df285e8c0882a1db7ff2892c746a0537d26c36L7-R7)

**Docker build improvements for Python libraries:**

* Updated `libs/Dockerfile` to use Poetry 2.1.3, improved conditional
installation logic for dev/test/lint dependencies, and ensured correct
installation of shared dependencies for interdependent libraries.

**Frontend workflow fixes:**

* Ensured `npm install` runs before frontend linting and testing in
Tilt, and expanded dependency tracking for these local resources.
[[1]](diffhunk://#diff-c2ee8653e1d6b85f0aadf87cd438a9250806c052877248442be4d434cbc52425L560-R669)
[[2]](diffhunk://#diff-c2ee8653e1d6b85f0aadf87cd438a9250806c052877248442be4d434cbc52425L570-R679)

**Dependency version updates:**

* Updated several library versions and dependency specifications,
including switching `fasttext` to a stable release and updating internal
library versions to 2.2.1.
[[1]](diffhunk://#diff-9c5aeb0db77c2eec077d07ddc3b3810ae1a4a1e50ee7061fba37a46706c513fbL7-R7)
[[2]](diffhunk://#diff-dede389bcfb615c4b45cd1da7ac14cbe9535305f41f19cce09e321c91a8bb323L7-R7)
[[3]](diffhunk://#diff-dede389bcfb615c4b45cd1da7ac14cbe9535305f41f19cce09e321c91a8bb323L73-L80)
[[4]](diffhunk://#diff-9c4162cc1c16dd4c7ec5e95e79df285e8c0882a1db7ff2892c746a0537d26c36L7-R7)

Let me know if you want to walk through any of these changes in detail
or discuss how they impact your local development workflow!

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Andreas Klos <aklos@outlook.de>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants