feat(airport-iq): add Airport IQ gallery template - #63
Open
KornAlexander wants to merge 2 commits into
Open
KornAlexander wants to merge 2 commits into
KornAlexander wants to merge 2 commits into
Conversation
Two 3D airport views on a Fabric static-hosting Rayfin app: Live Approach (CesiumJS globe, aircraft on approach/taxi/park) and Live-Ops (Three.js gate operations with delays and cascading gate conflicts), over real OpenStreetMap geometry. Ships fully synthetic, self-contained baked data; a single data-adapter seam swaps in opt-in live ADS-B (airplanes.live, non-commercial/no-SLA, off by default) or your own Fabric warehouse/lakehouse via ?data=. Includes manifest.json, rayfin-template.yml, rayfin/rayfin.yml, rayfin/data/schema.ts (BYO-data contract), lint/build/test scripts + a smoke test, a README with an embedded walkthrough video, screenshots and licensing notes, and updates the gallery manifests + README table. AI-assisted with GitHub Copilot; both views verified rendering locally and on a live Fabric deployment via Playwright (0 console errors); lint/build/test pass locally.
3 tasks
Preserve the existing template and all upstream gallery entries. No application source or dependency changes. Prepared with GitHub Copilot. Verified clean LF gallery generation, template metadata, lint, build, tests, and template scaffolding.
Contributor
Author
|
Hi Christopher Anderson (@christopheranderson), feel free to decline or close this PR if the template isn't a good fit for the gallery. No worries either way. Happy to address specific feedback if useful. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds the Airport IQ gallery template. Proposal: #62
Description
A Fabric static-hosting Rayfin app with two interactive 3D airport views, told from the perspective of a single airport operator:
Both render over real OpenStreetMap geometry. The template ships fully synthetic, self-contained data; a single
data-adapter.jsseam lets you switch to opt-in live ADS-B (airplanes.live) or your own Fabric warehouse / lakehouse via?data=.Type of change
Template checklist
package.jsonincludestemplate.name,template.displayName,template.descriptionmanifest.jsonhas correcttemplateIdandservicesflags (auth ✅, data —, staticHosting ✅)rayfin/rayfin.ymlid/namematch the directory nameREADME.mdincludes Getting Started, Project Structure, and Scripts sectionsnode scripts/generate-manifest.mjs(root + leaf manifests + README table updated)rayfin init -t . --template-name "Airport IQ"npm run lint,npm run build,npm testpassGallery checklist
node scripts/generate-manifest.mjs --checkpassesNotes for reviewers — a deliberate design choice
This is a static-hosting template (vanilla JS + CesiumJS/Three.js from CDN), not the React/Vite/Tailwind baseline. The two views are self-contained 3D apps where a bundler/framework adds weight without benefit, so
buildjust assemblesfabric-dist/. Accordingly,lintisnode --check(JavaScript syntax validation) andtestis a smoke test rather than ESLint/Vitest. This is intentional and documented in the template's Design notes section — flagging it so it reads as a conscious decision, not an oversight.Additional notes:
?data=liveand documented as non-commercial / no-SLA / 1 req/s.media/(linked from the README). Happy to move it to an external link if you'd prefer to keep binaries out of the repo.AI disclosure
Authored with GitHub Copilot. Both 3D views were verified by rendering locally and on a live Microsoft Fabric deployment via Playwright (0 console errors);
lint/build/test,generate-manifest --check, and therayfin initscaffold all pass locally.Closes #62