Setup and Run¶
This page explains how to set up and run the uxi-landing demo site in a development environment.
Prerequisites¶
- Node.js 18+ and npm (for the Next.js app)
- Python 3.8+ and pip (for the mkdocs documentation site)
- Git (to clone or pull the repository)
Setup: Next.js Demo Site¶
The main UXI landing demo is a Next.js application located at uxi-landing/.
1. Install Dependencies¶
From the uxi-landing root:
cd uxi-landing
npm install
2. Run the Development Server¶
npm run dev
The demo site will be served at http://localhost:3000 by default.
- Homepage:
http://localhost:3000/ - Mobility page:
http://localhost:3000/mobility
3. Build for Production (Optional)¶
npm run build
npm start
This creates an optimized production build and serves it.
Setup: MkDocs Documentation Site¶
The documentation for the UXI architecture and implementation is built using mkdocs with the mkdocs-template package.
1. Install Python Dependencies¶
From the uxi-landing root:
pip install -r requirements.txt
This installs:
- mkdocs
- mkdocs-material
- pymdown-extensions
Additionally, install the mkdocs-template package (local editable install from the monorepo):
cd ../mkdocs-template
pip install -e .
cd ../uxi-landing
2. Run the Documentation Server¶
Use the custom KRR (Kill, Rebuild, Restart) command:
mkdocs-oves-krr
This will: - Kill any existing processes on port 8000 - Clean build artifacts - Build the mkdocs site - Start the server
The documentation site will be available at http://127.0.0.1:8000.
Alternatively, to run without KRR:
mkdocs serve
3. Build Static Documentation (Optional)¶
mkdocs build
Static HTML files will be generated in site/.
What You'll See¶
Next.js Demo (localhost:3000)¶
- Homepage: UXI blocks demonstrating hero, feature grids, stats strip, story timeline, and CTA.
- Mobility page: Same UXI blocks configured for mobility use case, with a Cloudinary background video.
- All content driven by JSON in
content/pages/home.jsonandcontent/pages/mobility.json.
MkDocs Documentation (localhost:8000)¶
- Home: Overview of the UXI Landing repo.
- UXI Architecture: Full architectural blueprint from the
uxi-architecture.mdfile. - Implementation: How the repo implements the UXI pattern (blocks, media registry, JSON-driven pages).
- Footer displays version, editor, revision summary, and date as configured in
mkdocs.yml.
Troubleshooting¶
- Port conflicts: If port 3000 or 8000 is in use, stop the conflicting process or change the port in Next.js (
package.jsonscripts) or mkdocs config. - Missing dependencies: Re-run
npm installorpip install -r requirements.txt. - Template overrides not loading: Ensure
mkdocs-templateis installed (pip install -e ../mkdocs-template) andmkdocs.ymlreferences the correctcustom_dir.