JSPM

@cmdoss/cryptoguard-manifest-nuxt

0.1.0
    • ESM via JSPM
    • ES Module Entrypoint
    • Export Map
    • Keywords
    • License
    • Repository URL
    • TypeScript Types
    • README
    • Created
    • Published
    • Downloads 4
    • Score
      100M100P100Q55600F
    • License MIT

    Nuxt plugin for CryptoGuard manifest generation

    Package Exports

    • @cmdoss/cryptoguard-manifest-nuxt
    • @cmdoss/cryptoguard-manifest-nuxt/dist/index.js

    This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@cmdoss/cryptoguard-manifest-nuxt) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

    Readme

    @cryptoguard/manifest-nuxt

    Nuxt module for CryptoGuard manifest generation. Enables binary transparency verification for Nuxt applications.

    Installation

    npm install --save-dev @cryptoguard/manifest-nuxt
    # or
    pnpm add -D @cryptoguard/manifest-nuxt
    # or
    yarn add -D @cryptoguard/manifest-nuxt

    Quick Start

    1. Add Module to Nuxt Config

    // nuxt.config.ts
    export default defineNuxtConfig({
      modules: ['@cryptoguard/manifest-nuxt'],
    
      // Optional: Configure manifest generation
      cryptoGuardManifest: {
        verbose: true,  // Enable logging
        disabled: false, // Disable generation
      },
    });

    2. Build Your Application

    npm run build

    The module will automatically generate manifest.json in your project root.

    3. Commit the Manifest

    git add manifest.json nuxt.config.ts
    git commit -m "Add CryptoGuard manifest"

    How It Works

    The module hooks into Nuxt's build process and:

    1. Reads your config values (app.baseURL, etc.)
    2. Detects Nuxt version from package.json
    3. Generates manifest.json with source mappings
    4. Writes to project root (only if changed)

    Generated Manifest

    Example manifest.json:

    {
      "version": "1.0",
      "framework": "nuxt",
      "frameworkVersion": "3.13.0",
      "sources": [
        {
          "dir": ".output/public/_nuxt",
          "serveAt": "/_nuxt"
        },
        {
          "dir": ".output/public",
          "serveAt": "/"
        }
      ]
    }

    Supported Configurations

    Custom Base URL

    export default defineNuxtConfig({
      modules: ['@cryptoguard/manifest-nuxt'],
    
      app: {
        baseURL: '/docs/', // Deploy in subdirectory
      },
    });

    Generated manifest:

    {
      "sources": [
        { "dir": ".output/public/_nuxt", "serveAt": "/docs/_nuxt" },
        { "dir": ".output/public", "serveAt": "/docs" }
      ]
    }

    Configuration Options

    export default defineNuxtConfig({
      cryptoGuardManifest: {
        verbose: true,              // Enable logging
        projectRoot: process.cwd(), // Custom project root
        disabled: false,            // Disable manifest generation
      },
    });

    Environment Variables

    # Enable verbose logging
    NUXT_PUBLIC_CRYPTOGUARD_VERBOSE=true npm run build
    
    # Disable manifest generation
    NUXT_PUBLIC_CRYPTOGUARD_DISABLED=true npm run build

    Requirements

    • Node.js: ≥18.0.0
    • Nuxt: ≥3.0.0 (officially supported)
    • TypeScript: ≥5.0.0 (recommended)

    Troubleshooting

    Manifest Not Generated

    Problem: No manifest.json created after build.

    Solution:

    1. Ensure module is in modules array
    2. Check for error messages during build
    3. Try verbose mode: verbose: true

    Build Fails

    Problem: Build fails with manifest error.

    Solution:

    1. Check error message in console
    2. Verify Nuxt version is ≥3.0.0
    3. Ensure package.json contains Nuxt dependency
    4. Try disabling: disabled: true

    License

    MIT