{"id":6580,"library":"dagit","title":"Dagit Web UI","description":"Dagit is the web-based user interface for Dagster, providing observability, operational control, and debugging capabilities for data pipelines. It allows users to visualize assets, jobs, runs, schedules, and sensors defined within a Dagster project. Dagit's versioning is tightly coupled with the core Dagster library, typically released in sync with major and minor Dagster updates.","status":"active","version":"1.13.0","language":"en","source_language":"en","source_url":"https://github.com/dagster-io/dagster","tags":["web-ui","data-orchestration","observability","data-pipeline","mlobs"],"install":[{"cmd":"pip install dagit","lang":"bash","label":"Install Dagit"}],"dependencies":[{"reason":"Provides the core web server and Dagit executable functionality.","package":"dagster-webserver","optional":false},{"reason":"Provides the core Dagster framework for defining assets and operations, which Dagit visualizes.","package":"dagster","optional":false}],"imports":[{"note":"The `dagit` package primarily provides the `dagit` command-line executable, which launches the Dagster UI. Users typically run `dagit` from the terminal rather than importing symbols from it in Python code.","symbol":"N/A","correct":"dagit is a CLI tool, not a Python library for direct import."}],"quickstart":{"code":"from dagster import asset, Definitions, job\n\n@asset\ndef hello_asset():\n    return \"Hello, Dagster World!\"\n\n@job\ndef my_simple_job():\n    hello_asset()\n\ndefs = Definitions(assets=[hello_asset], jobs=[my_simple_job])\n\n# Save this as `my_repo.py` then run `dagit -f my_repo.py` in your terminal.\n","lang":"python","description":"To start Dagit, first define some Dagster assets or jobs in a Python file (e.g., `my_repo.py`). Then, launch Dagit from your terminal, pointing it to your definitions file. This will open the Dagster UI in your browser."},"warnings":[{"fix":"Always install `dagit` and `dagster` with matching major and minor versions (e.g., `pip install 'dagster==1.13.*' 'dagit==1.13.*'`).","message":"Dagit (and the underlying `dagster-webserver` package) versions must closely match the `dagster` core library version. Mismatched versions (e.g., `dagster==1.12.0` and `dagit==1.13.0`) can lead to runtime errors or unexpected UI behavior.","severity":"breaking","affected_versions":"All versions"},{"fix":"Interact with Dagit via the command line. Define your Dagster assets, ops, and jobs using the `dagster` library, and then use `dagit -f path/to/your_definitions.py` to view them in the UI.","message":"Dagit is primarily a CLI executable (`dagit`) used to launch the Dagster UI. It is not designed to be imported as a Python module within user-defined Dagster code (e.g., `import dagit`).","severity":"gotcha","affected_versions":"All versions"},{"fix":"If you use `dagster-postgres`, explicitly add `pip install psycopg2-binary` to your project's dependencies.","message":"Since `dagster` version 1.12.18, `psycopg2-binary` is no longer a transitive dependency of `dagster-postgres`. If your Dagster project utilizes `dagster-postgres` and relies on `psycopg2-binary`, you must explicitly install it.","severity":"breaking","affected_versions":">=1.12.18"},{"fix":"Always provide a target for Dagit to load definitions from. For local development, use `dagit -f your_definitions.py` or `dagit -m your_package`.","message":"Running `dagit` without specifying any Dagster definitions (e.g., via `-f`, `-m`, or a `workspace.yaml` file) will result in an empty UI. Dagit needs to know where to find your code.","severity":"gotcha","affected_versions":"All versions"}],"env_vars":null,"last_verified":"2026-04-15T00:00:00.000Z","next_check":"2026-07-14T00:00:00.000Z","problems":[]}