Configuration
Know which source owns each kind of setting.
VibeKit keeps configuration in clear owners.
PRODUCT.mdstores product requirements and decisions.PRODUCT.jsonstores validated structured product intent.DESIGN.mdstores visual and interaction rules.config.tsprojects shared runtime defaults fromPRODUCT.json; do not create a second product config..envstores local secrets and deployment values. Never commit it.- Admin Setup can store supported provider selections and encrypted credentials.
For normal product work, describe the outcome instead of editing settings by hand.
Configure email and storage for this product. Reuse supported providers first.
Keep local development on mock services until real provider checks are needed.Environment values can override saved provider settings. Browser visible values start with NEXT_PUBLIC_ and need a new build when they change.
Billing plans in PRODUCT.json use amountMinor: a safe, nonnegative integer in the payment provider's minor units. The manifest validates plan/variant IDs, currency, and one-time/subscription model coherence before config.payments.plans projects the catalog.
A customer product must keep VIBEKIT_SOURCE_STORE disabled and must not set VibeKit seller Stripe price/coupon, source repository, or GitHub release credential variables. Product identity, mail sender, AI defaults, and empty changelog defaults derive from the product contract; a product checkout never needs a source token or network call for its offline validation.
Use Provider setup when connecting services.