Ga naar hoofdinhoud

🧪 Handleiding voor de ontwikkelbranch

Wilt u de nieuwste functies proberen voordat ze officieel worden uitgebracht? De branch dev bevat de allernieuwste verbeteringen en experimentele functies die uiteindelijk in de hoofdrelease terechtkomen.

Experimentele software

De branch dev is experimenteel en kan fouten, onvolledige functies of incompatibele wijzigingen bevatten. Gebruik hem alleen als u mogelijke instabiliteit accepteert en Libre WebUI wilt helpen verbeteren.

🎯 Wat is de dev-branch?

De ontwikkelbranch (dev) is de plek waar nieuwe functies worden getest voordat ze in de stabiele branch main worden samengevoegd. Hij bevat:

  • Nieuwste functies die nog niet in stabiele releases zitten
  • Foutoplossingen die worden getest
  • Experimentele verbeteringen aan de interface en functionaliteit
  • Prestatie-optimalisaties die nog worden ontwikkeld

🚀 De dev-branch gebruiken

Docker-configuratie (aanbevolen)

De Compose-bestanden voor ontwikkeling koppelen de Docker-socket van de host, zodat Work standaard functioneert wanneer Docker beschikbaar is. Taakcontainers draaien op de hostdaemon en verschijnen in docker ps. Stel op Linux eerst DOCKER_GID in .env in.

Met externe Ollama:

# Clone the repository
git clone https://github.com/libre-webui/libre-webui.git
cd libre-webui

# Switch to dev branch
git checkout dev

# Start the dev image with external Ollama
docker compose -f docker-compose.dev.external-ollama.yml up -d

Eenvoudige Docker:

# Use the dev branch image
docker run -d -p 3000:3001 -v libre-webui:/app/backend/data --name libre-webui-dev --restart always ghcr.io/libre-webui/libre-webui:dev

Vanuit de broncode

# Clone and switch to dev branch
git clone https://github.com/libre-webui/libre-webui.git
cd libre-webui
git checkout dev

# Install dependencies
npm install

# Start development server
npm run dev

Work testen

  1. Start Docker en controleer dat docker info slaagt als dezelfde gebruiker die de backend uitvoert.
  2. Start Libre WebUI vanuit de broncode met npm run dev.
  3. Meld u aan als beheerder.
  4. Selecteer Work en gebruik een Ollama- of Ollama Cloud-model met toolondersteuning, of een geconfigureerd model via een plug-in.

Voer de gerichte tests voor backendproviders en containerbeleid uit met:

npm run test:work

De tests controleren het gegenereerde Docker-beleid, padinsluiting, levenscyclus- en capaciteitsgedrag en de OpenAI-compatibele, Anthropic- en Gemini-tooladapters. Zie Work: geïsoleerde werkruimten voor de volledige runtimegrens.

🔄 Actueel blijven

De dev-branch wordt vaak bijgewerkt. Zo haalt u de nieuwste wijzigingen op:

# Update your local dev branch
git pull origin dev

# Refresh the dev Compose stack
docker compose -f docker-compose.dev.external-ollama.yml pull
docker compose -f docker-compose.dev.external-ollama.yml up -d

# Or restart simple Docker
docker pull ghcr.io/libre-webui/libre-webui:dev
docker stop libre-webui-dev && docker rm libre-webui-dev
docker run -d -p 3000:3001 -v libre-webui:/app/backend/data --name libre-webui-dev --restart always ghcr.io/libre-webui/libre-webui:dev

🐛 Een fout gevonden? Help ons verbeteren!

Uw foutmeldingen zijn bijzonder waardevol. Zo meldt u problemen doeltreffend:

Vóór u een melding maakt

  1. Controleer bestaande issues: doorzoek GitHub Issues om duplicaten te voorkomen
  2. Probeer de stabiele versie: bevestig dat de fout alleen in dev bestaat (niet in de main-branch)
  3. Reproduceer consequent: kunt u de fout opnieuw laten optreden?

Fouten melden

🐛 Meld een fout op GitHub

Neem deze informatie op:

**Environment:**

- Branch: dev
- Version: [git commit hash or date]
- OS: [Windows/macOS/Linux]
- Browser: [Chrome/Firefox/Safari version]
- Setup: [Docker/Source/etc.]
- Docker: [version and whether `docker info` succeeds, for Work issues]
- Work model/provider: [exact route, when applicable]

**Bug Description:**
Clear description of what went wrong

**Steps to Reproduce:**

1. Go to...
2. Click on...
3. See error...

**Expected Behavior:**
What should have happened

**Actual Behavior:**
What actually happened

**Screenshots/Logs:**
[If applicable, add screenshots or error logs]

**Work Activity:**
[Relevant tool call/result or preview output, with secrets removed]

Uw Git-commit-hash opvragen

# Find your current dev branch commit
git rev-parse HEAD

# Or get a short version
git rev-parse --short HEAD

🏆 Bijdragen en erkenning

Als u de dev-branch gebruikt, maakt u deel uit van onze testgemeenschap. Bijdragers krijgen op verschillende manieren erkenning:

Erkenning voor bijdragers

  • Vermelding in CONTRIBUTORS.md
  • Vermelding in releaseopmerkingen voor belangrijke bijdragen
  • Toekenning als coauteur in commitberichten
  • Speciale dank in projectaankondigingen

Huidige bijdragers

Onze geweldige gemeenschap bestaat onder meer uit:

  • rob - Projectbeheerder
  • jm - Verbetering van netwerktoegang
  • En meer bijdragers! Bekijk de volledige lijst

Wilt u code bijdragen?

  1. Fork de repository
  2. Maak een featurebranch vanaf dev: git checkout -b feature/amazing-feature dev
  3. Breng uw wijzigingen aan
  4. Dien een Pull Request in voor de branch dev

Bekijk onze richtlijnen voor bijdragen voor gedetailleerde instructies en ons Community Charter voor de ethische richtlijnen en het governancemodel van het project.

Pull Request-controles

Elke pull request, ook een gestapelde pull request naar een tussenliggende feature- of fixbranch, voert de workflow Format & Lint uit. De onafhankelijke taken controleren opmaak, linting van frontend en backend, TypeScript-typen, pakket- en regressietests en de Playwright-browsersuite. Mislukte browseruitvoeringen uploaden hun Playwright-resultaten voor foutopsporing.

De workflow Electron Dev Build verpakt ook artefacten voor macOS, Windows en Linux. macOS-builds voor pull requests behouden de ad-hocondertekening zonder referenties van het project, zodat de verpakte toepassing vóór het uploaden kan worden geverifieerd. De pull-requestworkflow ontvangt geen Developer ID- of notarisreferenties.

De workflow Docker Build Test and Push bouwt voor elke pull request zowel amd64- als arm64-images, inclusief gestapelde pull requests naar tussenliggende branches. Pull-requestbuilds melden zich niet aan bij een containerregister en pushen geen imagedigests of multi-architectuurmanifest.

Voer dezelfde controles op applicatieniveau lokaal uit voordat u een pull request opent:

npm run format:check
npm run lint
npm run test:package
npm run test:e2e

⚠️ Belangrijke opmerkingen

Gegevensveiligheid

  • Maak een back-up van uw gegevens voordat u naar de dev-branch overschakelt
  • Bestanden van Work-taken staan in afzonderlijke benoemde Docker-volumes libre-work-*. Maak daarvan los van de SQLite-gegevensmap een back-up voordat u destructieve wijzigingen aan de levenscyclus van taken of gebruikers test.
  • Gebruik een afzonderlijk Docker-volume voor dev-tests:
    # Use different volume name for dev
    docker run -d -p 3000:3001 -v libre-webui-dev:/app/backend/data --name libre-webui-dev ghcr.io/libre-webui/libre-webui:dev

Mogelijke problemen

  • Incompatibele wijzigingen kunnen configuratie-updates vereisen
  • Functies kunnen onvolledig zijn of zonder voorafgaande waarschuwing veranderen
  • Prestaties kunnen variëren terwijl optimalisaties worden getest
  • Interface-elementen kunnen er anders uitzien of zich onverwacht gedragen

Wanneer u stabiel moet gebruiken

Ga terug naar de stabiele branch main als u:

  • Betrouwbaarheid voor belangrijk werk nodig hebt
  • Te veel fouten ondervindt
  • Een geteste, stabiele ervaring wilt
# Switch back to stable
git checkout main
docker compose -f docker-compose.external-ollama.yml pull
docker compose -f docker-compose.external-ollama.yml up -d

🌟 Word lid van de gemeenschap


Klaar om de toekomst van Libre WebUI mede vorm te geven? 🚀

Uw tests, feedback en bijdragen op de dev-branch verbeteren rechtstreeks de ervaring voor alle gebruikers. Bedankt dat u deel uitmaakt van onze ontwikkelgemeenschap!