README.md
January 27, 2026 ยท View on GitHub
Running Daffodil Demo
Getting Started
- Build demo app:
npx nx run @daffodil/demo:build
- Serve app:
npx ng serve demo
If you're using a dev container, you'll need to run:
npx ng serve demo --host 0.0.0.0
- Navigate to
localhost:4200in your browser of choice
Running with Magento
If you run demo with Magento drivers, Apollo will try to load fragment data from a file. This fragment data file can be generated by running:
ng run demo:generateFragmentTypes -c magento-local
Note: You might need to allow self-signed certificates during this command by setting env var NODE_TLS_REJECT_UNAUTHORIZED=0.
Project Overview
Daffodil is structured as a monorepo. We utilize nx to manage all the child packages that are generated by the repo as well as install their dependencies when needed. npx nx run-many -t build will compile all the internal @daffodil packages that the demo depends on.
Contributing to demo
Generally speaking, you don't want to depend directly on the source of a dependency when developing, as that can cause unexpected issues at build and deployment time, as well as downstream effects for the developers that depend on your libraries. Yet, there are instances when quick development cycles that don't require a full rebuild can drastically improve development efficiency. E.g. changing styles in a component library.
For this reason, we have opted to create a secondary project demo-dev which depends directly on the @daffodil libraries source. This can be utilized for rapid feature prototyping, but should be used sparingly.
demo-dev does not support
linting orbuilding, it only serves the purposes of the internal@daffodildevelopment team.
You can run this project via:
ng serve --project=demo-dev