Skip to the content.

Quick Start Guide

Get up and running in 5 minutes.

Installation & Setup

1. Prerequisites

2. Install dependencies (repository root)

npm ci
npm run db:migrate:local

3. Start the development server

npm run dev

The app will be available at http://localhost:4200


Basic Usage

Vue Components

<script setup lang="ts">
import { useCdn } from '#shared/utils/cdn';

const { cdnUrl, resolvePath, isEnabled } = useCdn();
const imageUrl = resolvePath('/images/hero.webp');
</script>

<template>
  <img v-if="isEnabled()" :src="imageUrl" alt="Hero" />
</template>

Server Code

import { resolveCdnPath } from '#shared/utils/cdn';

export default defineEventHandler((event) => {
  const config = useRuntimeConfig();
  const cdnUrl = config.public.cdnUrl;
  const logoUrl = resolveCdnPath('/images/logo.png', cdnUrl);
  return { logoUrl };
});

Common Commands

Command Purpose
npm run dev Start dev server
npm run build Build for production
npm run preview Preview built app (cd core/web && npm run preview after npm run build)
npm run test Run tests
npm run lint Prettier + lint all Nx packages with a lint target
npm run format Format code only
npm run lint:staged Prettier + Nx affected lint on staged files (same as pre-commit)

Git hooks (after npm install): lint (Prettier + Nx) on commit; npm test on push. See Git hooks.


With CDN

Enable CDN for faster asset delivery:

NUXT_APP_CDN_URL=https://cdn.example.com npm run dev

See CDN Guide for full documentation.


With HTTPS

For local HTTPS development:

# Generate SSL certificates (once)
npm run ssl:gen:windows  # or ssl:gen:linux for WSL/Linux

# Start HTTPS server
npm run start:ssl:4200

See SSL Setup for details.


Next Steps

  1. Explore the Project Structure
  2. Check Code Examples
  3. Read CDN Quick Start for CDN usage
  4. Review TypeScript Configuration

Need more help? See the full documentation index at docs/README.md