Skip to content

Skapa ett uv projekt

När man jobbar i projekt som har att göra med programmeringsspråket Python så kan man använda uv som ett sätt att hantera projektet och installera verktyg och extra kodmoduler och hjälpverktyg vid behov. För att det skall fungera så behöver man initiera repot som ett uv projekt via kommandot uv init. Då skapas följande filer:

  • .python-version - en fil som innehåller vilken version av Python som skall användas i projektet.
  • main.py - en exempel-fil med python kod.
  • pyproject.toml - en fil som innehåller inställningar för projektet och eventuella beroenden (dependencies).
  • uv.lock - en fil som innehåller alla extra verktyg/moduler/paket vi har installerat i projektet med uv add och vilken version de har.
  • .venv - en katalog som innehåller en virtuell miljö för Python, där alla moduler installeras lokalt för projektet. Den ska inte vara en del av repot och därför har vi lagt till den i .gitignore. Den katalogen kan alltid återskapas utifrån informationen i uv.lock via kommandot uv sync.

Initiera som uv projekt

Vi börjar med kommandot uv init för att initiera projektet.

Initiera projektet med uv init.
# Just init the project
uv init

Det kan se ut så här om du gör detta i vscode och terminalen. PS om termnialen inte är öppen så kan du öppna den med Ctrl + ö (Windows) eller Cmd + ö (Mac).

Image description
Bild: Filen pyproject.toml m.m. är skapad i ditt repo.

För att skapa en virtuell miljö och installera de verktyg som behövs i den, så kör vi kommandot uv sync. Det kommer att skapa en katalog .venv där alla verktyg och moduler installeras lokalt för projektet.

Installera verktyg och moduler i den virtuella miljön
uv sync
Image description
Bild: uv.lock och .venv är skapad i ditt repo.

Testa exekvera main.py för att se att allt fungerar som det skall.

Exekvera main.py
uv run main.py
Image description
Bild: Exekvera main.py.

Nu när allt funkar ska vi radera main.py. Vi ska skapa andra filer och kataloger senare.

Radera main.py
rm main.py

Lägg till filen i ditt repo och pusha

Avsluta med att lägga till filerna .python-version, pyproject.toml och uv.lock som en del av ditt repo och pusha dem. Dubbelkolla att den finns på GitHub innan du är helt klar.