/nuxt-site-config

Unifying site config with powerful and flexible APIs, for module authors and users.

Primary LanguageTypeScript

nuxt-site-config

NPM version NPM Downloads GitHub stars

Site Config for Nuxt module authors.


Status: v2 Released 🎉
Please report any issues 🐛
Made possible by my Sponsor Program 💖
Follow me @harlan_zw 🐦 • Join Discord for help

Background

Site config can be considered config that is commonly used amongst modules but is not supported by the Nuxt core.

For example: url (canonical), env (dev, staging, prod), name, etc.

Without a single source of truth for these, modules have a hard time working together and end-users have to duplicate config across modules.

Nuxt Site Config aims to fix this using a new config solution that can be extended by anyone. Think of it as writable runtime config with extra features.

The end goal is to make it possible to build SEO multilingual / multi-tenancy sites that just work with modules.

Features

  • 😌 Zero-config, best practice site config defaults
  • 🎨 Site config from any source: Nuxt Config, Runtime Config, Environment Variables, App Config, Route Rules or Programmatically
  • 🚀 Powerful and runtime agnostic APIs for module authors useSiteConfig, createSitePathResolver, withSiteUrl, useNitroOrigin, etc
  • 🤖 Ledger capabilities
  • 🤝 Integrates with @nuxtjs/i18n

Documentation

📖 Read the full documentation for more information.

License

MIT License © 2023-PRESENT Harlan Wilton