Try Weaver on a small Fabric project
The Sales example creates a Lakehouse table, a Warehouse table, a shortcut between them and two checks. You can see the whole path without designing a project first.
1. Check the prerequisites
- A Microsoft Fabric workspace on a running capacity.
- Permission to use or create the Lakehouse, Warehouse and Environment named during setup.
- Python 3.11 or later when working from your own machine. Fabric notebooks already provide Python.
- A Fabric sign-in. The desktop CLI can use Azure CLI credentials, a configured service principal or Microsoft sign-in in a browser.
2. Install Weaver
pip install weaverstack weaver doctor --workspace Analytics
doctor checks your sign-in and access to the workspace before setup.
Inside a Fabric notebook, install the same package with %pip install weaverstack and use the Python functions instead of the CLI.
3. Create the example project
Run the setup wizard and choose the Sales example. It asks where to write the project and which Lakehouse, Warehouse, Environment and Catalogue Warehouse to use.
weaver initialise --workspace Analytics
initialise writes the project and creates or reuses the Fabric items you select. It does not build the objects or load data yet.
Repeat the setup without prompts
weaver initialise --workspace Analytics \ --project-folder ./Analytics \ --catalogue Catalogue \ --environment Weaver \ --lakehouse Landing \ --warehouse Curated \ --example --non-interactive
4. Look at the project
The files are grouped by the Lakehouse or Warehouse that owns them. Python imports, SQL references and the shortcut declaration tell Weaver what order to use.
README.md workspace-config.yml workflow.yml Environment/Weaver.Environment/ Lakehouse/Landing/ ├── Files/ │ └── Sales__Customers.py ├── Tables/ │ └── Sales__Customer.py └── assumptions/ └── Sales__CustomerValid.py Warehouse/Curated/ ├── shortcuts.yml ├── Sales.Region.sql ├── Sales.CustomerByRegion.sql └── assumptions/ └── Sales.CustomerByRegionValid.sql
This small file maps the project names to real Fabric items:
workspace: Analytics environment: Weaver catalogue: Warehouse/Catalogue targets: Lakehouse/Landing: Landing Warehouse/Curated: Curated
Use another copy of this configuration for production. The Python and SQL still refer to Lakehouse/Landing and Warehouse/Curated.
5. Publish and run it
Publish the generated Environment before the first Python load:
cd Analytics weaver fabric environment publish --path Environment/Weaver.Environment weaver workflow full
The full workflow creates the Fabric objects, loads the data in the right order, runs the two checks and reports the result.
You can also run each step separately:
weaver build weaver load weaver test weaver health
What you should see
- The customer file lands in the Lakehouse.
- The Delta table loads from that file.
- The Warehouse reads the table through a shortcut and runs the regional join afterwards.
- The two checks pass, and health reports the project as current.