@donotdev/cli 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.md +48 -0
- package/README.md +291 -0
- package/dependencies-matrix.json +694 -0
- package/dist/bin/commands/build.d.ts +11 -0
- package/dist/bin/commands/build.d.ts.map +1 -0
- package/dist/bin/commands/build.js +8162 -0
- package/dist/bin/commands/build.js.map +1 -0
- package/dist/bin/commands/bump.d.ts +11 -0
- package/dist/bin/commands/bump.d.ts.map +1 -0
- package/dist/bin/commands/bump.js +8004 -0
- package/dist/bin/commands/bump.js.map +1 -0
- package/dist/bin/commands/cacheout.d.ts +11 -0
- package/dist/bin/commands/cacheout.d.ts.map +1 -0
- package/dist/bin/commands/cacheout.js +7630 -0
- package/dist/bin/commands/cacheout.js.map +1 -0
- package/dist/bin/commands/create-app.d.ts +11 -0
- package/dist/bin/commands/create-app.d.ts.map +1 -0
- package/dist/bin/commands/create-app.js +9032 -0
- package/dist/bin/commands/create-app.js.map +1 -0
- package/dist/bin/commands/create-project.d.ts +11 -0
- package/dist/bin/commands/create-project.d.ts.map +1 -0
- package/dist/bin/commands/create-project.js +9643 -0
- package/dist/bin/commands/create-project.js.map +1 -0
- package/dist/bin/commands/deploy.d.ts +11 -0
- package/dist/bin/commands/deploy.d.ts.map +1 -0
- package/dist/bin/commands/deploy.js +9007 -0
- package/dist/bin/commands/deploy.js.map +1 -0
- package/dist/bin/commands/dev.d.ts +11 -0
- package/dist/bin/commands/dev.d.ts.map +1 -0
- package/dist/bin/commands/dev.js +7892 -0
- package/dist/bin/commands/dev.js.map +1 -0
- package/dist/bin/commands/emu.d.ts +11 -0
- package/dist/bin/commands/emu.d.ts.map +1 -0
- package/dist/bin/commands/emu.js +8302 -0
- package/dist/bin/commands/emu.js.map +1 -0
- package/dist/bin/commands/format.d.ts +11 -0
- package/dist/bin/commands/format.d.ts.map +1 -0
- package/dist/bin/commands/format.js +8009 -0
- package/dist/bin/commands/format.js.map +1 -0
- package/dist/bin/commands/lint.d.ts +11 -0
- package/dist/bin/commands/lint.d.ts.map +1 -0
- package/dist/bin/commands/lint.js +7481 -0
- package/dist/bin/commands/lint.js.map +1 -0
- package/dist/bin/commands/preview.d.ts +11 -0
- package/dist/bin/commands/preview.d.ts.map +1 -0
- package/dist/bin/commands/preview.js +7909 -0
- package/dist/bin/commands/preview.js.map +1 -0
- package/dist/bin/commands/sync-secrets.d.ts +11 -0
- package/dist/bin/commands/sync-secrets.d.ts.map +1 -0
- package/dist/bin/commands/sync-secrets.js +8227 -0
- package/dist/bin/commands/sync-secrets.js.map +1 -0
- package/dist/bin/dndev.js +222 -0
- package/dist/bin/donotdev.js +222 -0
- package/dist/index.d.ts +8 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +12820 -0
- package/dist/index.js.map +1 -0
- package/package.json +71 -0
- package/templates/app-demo/index.html.example +20 -0
- package/templates/app-demo/public/favicon.ico.example +0 -0
- package/templates/app-demo/public/fonts/Roboto-400-cyrillic-ext.woff2.example +0 -0
- package/templates/app-demo/public/fonts/Roboto-400-cyrillic.woff2.example +0 -0
- package/templates/app-demo/public/fonts/Roboto-400-greek-ext.woff2.example +0 -0
- package/templates/app-demo/public/fonts/Roboto-400-greek.woff2.example +0 -0
- package/templates/app-demo/public/fonts/Roboto-400-latin-ext.woff2.example +0 -0
- package/templates/app-demo/public/fonts/Roboto-400-latin.woff2.example +0 -0
- package/templates/app-demo/public/fonts/Roboto-400-vietnamese.woff2.example +0 -0
- package/templates/app-demo/public/fonts/Roboto-700-cyrillic-ext.woff2.example +0 -0
- package/templates/app-demo/public/fonts/Roboto-700-cyrillic.woff2.example +0 -0
- package/templates/app-demo/public/fonts/Roboto-700-greek-ext.woff2.example +0 -0
- package/templates/app-demo/public/fonts/Roboto-700-greek.woff2.example +0 -0
- package/templates/app-demo/public/fonts/Roboto-700-latin-ext.woff2.example +0 -0
- package/templates/app-demo/public/fonts/Roboto-700-latin.woff2.example +0 -0
- package/templates/app-demo/public/fonts/Roboto-700-vietnamese.woff2.example +0 -0
- package/templates/app-demo/public/fonts/fonts.css.example +144 -0
- package/templates/app-demo/public/logo.png.example +0 -0
- package/templates/app-demo/public/logo.svg.example +1 -0
- package/templates/app-demo/public/manifest.json.example +10 -0
- package/templates/app-demo/src/App.tsx.example +17 -0
- package/templates/app-demo/src/Routes.tsx.example +20 -0
- package/templates/app-demo/src/components/ThemeToggle.tsx.example +48 -0
- package/templates/app-demo/src/globals.css.example +4 -0
- package/templates/app-demo/src/main.tsx.example +27 -0
- package/templates/app-demo/src/pages/DetailPage.tsx.example +103 -0
- package/templates/app-demo/src/pages/FullPage.tsx.example +142 -0
- package/templates/app-demo/src/pages/HomePage.tsx.example +79 -0
- package/templates/app-demo/src/pages/components/ComponentRenderer.tsx.example +511 -0
- package/templates/app-demo/src/pages/components/ComponentsData.tsx.example +152 -0
- package/templates/app-demo/src/pages/components/DemoLayout.tsx.example +266 -0
- package/templates/app-demo/src/pages/components/LayoutRoute.tsx.example +20 -0
- package/templates/app-demo/src/pages/components/componentConfig.ts.example +921 -0
- package/templates/app-demo/src/themes.css.example +179 -0
- package/templates/app-demo/tsconfig.json.example +9 -0
- package/templates/app-demo/vite.config.ts.example +53 -0
- package/templates/app-next/.env.example +92 -0
- package/templates/app-next/next.config.ts.example +8 -0
- package/templates/app-next/postcss.config.js.example +58 -0
- package/templates/app-next/service-account-key.json.example +2 -0
- package/templates/app-next/src/app/ClientLayout.tsx.example +39 -0
- package/templates/app-next/src/app/layout.tsx.example +52 -0
- package/templates/app-next/src/app/not-found.tsx.example +21 -0
- package/templates/app-next/src/config/app.ts.example +75 -0
- package/templates/app-next/src/config/legal.ts.example +170 -0
- package/templates/app-next/src/globals.css.example +15 -0
- package/templates/app-next/src/locales/dndev_en.json.example +516 -0
- package/templates/app-next/src/pages/HomePage.tsx.example +20 -0
- package/templates/app-next/src/pages/legal/LegalNoticePage.tsx.example +75 -0
- package/templates/app-next/src/pages/legal/PrivacyPage.tsx.example +69 -0
- package/templates/app-next/src/pages/legal/TermsPage.tsx.example +71 -0
- package/templates/app-next/src/themes.css.example +179 -0
- package/templates/app-next/tsconfig.json.example +11 -0
- package/templates/app-payload/.env.example +28 -0
- package/templates/app-payload/README.md.example +233 -0
- package/templates/app-payload/collections/Company.ts.example +125 -0
- package/templates/app-payload/collections/Hero.ts.example +62 -0
- package/templates/app-payload/collections/Media.ts.example +41 -0
- package/templates/app-payload/collections/Products.ts.example +115 -0
- package/templates/app-payload/collections/Services.ts.example +104 -0
- package/templates/app-payload/collections/Testimonials.ts.example +92 -0
- package/templates/app-payload/collections/Users.ts.example +35 -0
- package/templates/app-payload/src/server.ts.example +79 -0
- package/templates/app-payload/tsconfig.json.example +24 -0
- package/templates/app-vite/.env.example +77 -0
- package/templates/app-vite/index.html.example +127 -0
- package/templates/app-vite/service-account-key.json.example +2 -0
- package/templates/app-vite/src/App.tsx.example +39 -0
- package/templates/app-vite/src/Routes.tsx.example +16 -0
- package/templates/app-vite/src/config/app.ts.example +75 -0
- package/templates/app-vite/src/config/legal.ts.example +170 -0
- package/templates/app-vite/src/globals.css.example +11 -0
- package/templates/app-vite/src/locales/dndev_en.json.example +516 -0
- package/templates/app-vite/src/main.tsx.example +21 -0
- package/templates/app-vite/src/pages/HomePage.tsx.example +22 -0
- package/templates/app-vite/src/pages/NotFoundPage.tsx.example +33 -0
- package/templates/app-vite/src/pages/legal/LegalNoticePage.tsx.example +75 -0
- package/templates/app-vite/src/pages/legal/PrivacyPage.tsx.example +69 -0
- package/templates/app-vite/src/pages/legal/TermsPage.tsx.example +71 -0
- package/templates/app-vite/src/pages/locales/README.md.example +1 -0
- package/templates/app-vite/src/pages/locales/example_en.json.example +5 -0
- package/templates/app-vite/src/themes.css.example +179 -0
- package/templates/app-vite/tsconfig.json.example +9 -0
- package/templates/app-vite/vite.config.ts.example +9 -0
- package/templates/functions-firebase/README.md.example +129 -0
- package/templates/functions-firebase/build.mjs.example +52 -0
- package/templates/functions-firebase/functions-firebase/.env.example.example +45 -0
- package/templates/functions-firebase/functions-firebase/README.md.example +123 -0
- package/templates/functions-firebase/functions-firebase/build.mjs.example +52 -0
- package/templates/functions-firebase/functions-firebase/src/auth/getCustomClaims.ts.example +19 -0
- package/templates/functions-firebase/functions-firebase/src/auth/getUserAuthStatus.ts.example +21 -0
- package/templates/functions-firebase/functions-firebase/src/auth/index.ts.example +11 -0
- package/templates/functions-firebase/functions-firebase/src/auth/removeCustomClaims.ts.example +21 -0
- package/templates/functions-firebase/functions-firebase/src/auth/setCustomClaims.ts.example +21 -0
- package/templates/functions-firebase/functions-firebase/src/billing/handleStripeWebhook.ts.example +24 -0
- package/templates/functions-firebase/functions-firebase/src/billing/index.ts.example +10 -0
- package/templates/functions-firebase/functions-firebase/src/billing/processPaymentSuccess.ts.example +14 -0
- package/templates/functions-firebase/functions-firebase/src/billing/refreshSubscriptionStatus.ts.example +14 -0
- package/templates/functions-firebase/functions-firebase/src/crud/createEntity.ts.example +19 -0
- package/templates/functions-firebase/functions-firebase/src/crud/deleteEntity.ts.example +14 -0
- package/templates/functions-firebase/functions-firebase/src/crud/getEntity.ts.example +14 -0
- package/templates/functions-firebase/functions-firebase/src/crud/index.ts.example +12 -0
- package/templates/functions-firebase/functions-firebase/src/crud/listEntities.ts.example +14 -0
- package/templates/functions-firebase/functions-firebase/src/crud/updateEntity.ts.example +14 -0
- package/templates/functions-firebase/functions-firebase/src/index.ts.example +45 -0
- package/templates/functions-firebase/functions-firebase/src/oauth/checkGitHubAccess.ts.example +14 -0
- package/templates/functions-firebase/functions-firebase/src/oauth/disconnect.ts.example +14 -0
- package/templates/functions-firebase/functions-firebase/src/oauth/exchangeToken.ts.example +14 -0
- package/templates/functions-firebase/functions-firebase/src/oauth/getConnections.ts.example +14 -0
- package/templates/functions-firebase/functions-firebase/src/oauth/grantGitHubAccess.ts.example +14 -0
- package/templates/functions-firebase/functions-firebase/src/oauth/index.ts.example +17 -0
- package/templates/functions-firebase/functions-firebase/src/oauth/refreshToken.ts.example +14 -0
- package/templates/functions-firebase/functions-firebase/src/oauth/revokeGitHubAccess.ts.example +14 -0
- package/templates/functions-firebase/functions-firebase/tsconfig.json.example +21 -0
- package/templates/functions-firebase/functions.yaml.example +14 -0
- package/templates/functions-firebase/src/auth/getCustomClaims.ts.example +19 -0
- package/templates/functions-firebase/src/auth/getUserAuthStatus.ts.example +21 -0
- package/templates/functions-firebase/src/auth/index.ts.example +11 -0
- package/templates/functions-firebase/src/auth/removeCustomClaims.ts.example +21 -0
- package/templates/functions-firebase/src/auth/setCustomClaims.ts.example +21 -0
- package/templates/functions-firebase/src/billing/handleStripeWebhook.ts.example +24 -0
- package/templates/functions-firebase/src/billing/index.ts.example +10 -0
- package/templates/functions-firebase/src/billing/processPaymentSuccess.ts.example +14 -0
- package/templates/functions-firebase/src/billing/refreshSubscriptionStatus.ts.example +14 -0
- package/templates/functions-firebase/src/crud/createEntity.ts.example +19 -0
- package/templates/functions-firebase/src/crud/deleteEntity.ts.example +14 -0
- package/templates/functions-firebase/src/crud/getEntity.ts.example +14 -0
- package/templates/functions-firebase/src/crud/index.ts.example +12 -0
- package/templates/functions-firebase/src/crud/listEntities.ts.example +14 -0
- package/templates/functions-firebase/src/crud/updateEntity.ts.example +14 -0
- package/templates/functions-firebase/src/index.ts.example +45 -0
- package/templates/functions-firebase/src/oauth/checkGitHubAccess.ts.example +14 -0
- package/templates/functions-firebase/src/oauth/disconnect.ts.example +14 -0
- package/templates/functions-firebase/src/oauth/exchangeToken.ts.example +14 -0
- package/templates/functions-firebase/src/oauth/getConnections.ts.example +14 -0
- package/templates/functions-firebase/src/oauth/grantGitHubAccess.ts.example +14 -0
- package/templates/functions-firebase/src/oauth/index.ts.example +17 -0
- package/templates/functions-firebase/src/oauth/refreshToken.ts.example +14 -0
- package/templates/functions-firebase/src/oauth/revokeGitHubAccess.ts.example +14 -0
- package/templates/functions-firebase/tsconfig.json.example +24 -0
- package/templates/functions-vercel/README.md.example +116 -0
- package/templates/functions-vercel/build.mjs.example +52 -0
- package/templates/functions-vercel/functions-vercel/.env.example.example +37 -0
- package/templates/functions-vercel/functions-vercel/README.md.example +116 -0
- package/templates/functions-vercel/functions-vercel/build.mjs.example +52 -0
- package/templates/functions-vercel/functions-vercel/src/api/auth/getCustomClaims.ts.example +20 -0
- package/templates/functions-vercel/functions-vercel/src/api/auth/getUserAuthStatus.ts.example +20 -0
- package/templates/functions-vercel/functions-vercel/src/api/auth/removeCustomClaims.ts.example +20 -0
- package/templates/functions-vercel/functions-vercel/src/api/auth/setCustomClaims.ts.example +20 -0
- package/templates/functions-vercel/functions-vercel/src/api/billing/handleStripeWebhook.ts.example +20 -0
- package/templates/functions-vercel/functions-vercel/src/api/billing/processPaymentSuccess.ts.example +20 -0
- package/templates/functions-vercel/functions-vercel/src/api/billing/refreshSubscriptionStatus.ts.example +20 -0
- package/templates/functions-vercel/functions-vercel/src/api/crud/createEntity.ts.example +20 -0
- package/templates/functions-vercel/functions-vercel/src/api/crud/deleteEntity.ts.example +20 -0
- package/templates/functions-vercel/functions-vercel/src/api/crud/getEntity.ts.example +20 -0
- package/templates/functions-vercel/functions-vercel/src/api/crud/listEntities.ts.example +20 -0
- package/templates/functions-vercel/functions-vercel/src/api/crud/updateEntity.ts.example +20 -0
- package/templates/functions-vercel/functions-vercel/src/api/oauth/checkGitHubAccess.ts.example +20 -0
- package/templates/functions-vercel/functions-vercel/src/api/oauth/disconnect.ts.example +20 -0
- package/templates/functions-vercel/functions-vercel/src/api/oauth/exchangeToken.ts.example +20 -0
- package/templates/functions-vercel/functions-vercel/src/api/oauth/getConnections.ts.example +20 -0
- package/templates/functions-vercel/functions-vercel/src/api/oauth/grantGitHubAccess.ts.example +20 -0
- package/templates/functions-vercel/functions-vercel/src/api/oauth/refreshToken.ts.example +20 -0
- package/templates/functions-vercel/functions-vercel/src/api/oauth/revokeGitHubAccess.ts.example +20 -0
- package/templates/functions-vercel/functions-vercel/tsconfig.json.example +21 -0
- package/templates/functions-vercel/functions-vercel/vercel.json.example +14 -0
- package/templates/functions-vercel/src/api/auth/getCustomClaims.ts.example +20 -0
- package/templates/functions-vercel/src/api/auth/getUserAuthStatus.ts.example +20 -0
- package/templates/functions-vercel/src/api/auth/removeCustomClaims.ts.example +20 -0
- package/templates/functions-vercel/src/api/auth/setCustomClaims.ts.example +20 -0
- package/templates/functions-vercel/src/api/billing/handleStripeWebhook.ts.example +20 -0
- package/templates/functions-vercel/src/api/billing/processPaymentSuccess.ts.example +20 -0
- package/templates/functions-vercel/src/api/billing/refreshSubscriptionStatus.ts.example +20 -0
- package/templates/functions-vercel/src/api/crud/createEntity.ts.example +20 -0
- package/templates/functions-vercel/src/api/crud/deleteEntity.ts.example +20 -0
- package/templates/functions-vercel/src/api/crud/getEntity.ts.example +20 -0
- package/templates/functions-vercel/src/api/crud/listEntities.ts.example +20 -0
- package/templates/functions-vercel/src/api/crud/updateEntity.ts.example +20 -0
- package/templates/functions-vercel/src/api/oauth/checkGitHubAccess.ts.example +20 -0
- package/templates/functions-vercel/src/api/oauth/disconnect.ts.example +20 -0
- package/templates/functions-vercel/src/api/oauth/exchangeToken.ts.example +20 -0
- package/templates/functions-vercel/src/api/oauth/getConnections.ts.example +20 -0
- package/templates/functions-vercel/src/api/oauth/grantGitHubAccess.ts.example +20 -0
- package/templates/functions-vercel/src/api/oauth/refreshToken.ts.example +20 -0
- package/templates/functions-vercel/src/api/oauth/revokeGitHubAccess.ts.example +20 -0
- package/templates/functions-vercel/tsconfig.json.example +24 -0
- package/templates/functions-vercel/vercel.json.example +14 -0
- package/templates/github/github/workflows/firebase-deploy.yml.example +79 -0
- package/templates/github/workflows/firebase-deploy.yml.example +79 -0
- package/templates/root-consumer/.env.example +19 -0
- package/templates/root-consumer/.gitignore.example +82 -0
- package/templates/root-consumer/.prettierrc.cjs.example +12 -0
- package/templates/root-consumer/CLAUDE.md.example +73 -0
- package/templates/root-consumer/README.md.example +295 -0
- package/templates/root-consumer/bunfig.toml.example +68 -0
- package/templates/root-consumer/eslint.config.js.example +336 -0
- package/templates/root-consumer/firebase.json.example +348 -0
- package/templates/root-consumer/guides/AGENT_START_HERE.md.example +98 -0
- package/templates/root-consumer/guides/APP_CHECK_SETUP.md.example +111 -0
- package/templates/root-consumer/guides/AUTH_SETUP.md.example +92 -0
- package/templates/root-consumer/guides/BILLING_SETUP.md.example +120 -0
- package/templates/root-consumer/guides/CLI.md.example +293 -0
- package/templates/root-consumer/guides/COMPONENTS.md.example +875 -0
- package/templates/root-consumer/guides/CONFIG_SETUP.md.example +132 -0
- package/templates/root-consumer/guides/EMULATOR_SETUP.md.example +48 -0
- package/templates/root-consumer/guides/FEATURES.md.example +286 -0
- package/templates/root-consumer/guides/FRAMEWORK_OVERVIEW.md.example +97 -0
- package/templates/root-consumer/guides/FUNCTIONS.md.example +177 -0
- package/templates/root-consumer/guides/GETTING_STARTED.md.example +451 -0
- package/templates/root-consumer/guides/HOW_TO_USE.md.example +296 -0
- package/templates/root-consumer/guides/I18N_SETUP.md.example +204 -0
- package/templates/root-consumer/guides/IMPORT_PATTERNS.md.example +79 -0
- package/templates/root-consumer/guides/INDEX.md.example +50 -0
- package/templates/root-consumer/guides/INSTALLATION.md.example +296 -0
- package/templates/root-consumer/guides/LAYOUTS.md.example +310 -0
- package/templates/root-consumer/guides/PAGES_SETUP.md.example +123 -0
- package/templates/root-consumer/guides/STYLING.md.example +273 -0
- package/templates/root-consumer/guides/THEMING_SETUP.md.example +119 -0
- package/templates/root-consumer/guides/VERSION_CONTROL.md.example +181 -0
- package/templates/root-consumer/tsconfig.functions.json.example +15 -0
- package/templates/root-consumer/tsconfig.json.example +18 -0
- package/templates/root-consumer/turbo.json.example +46 -0
- package/templates/root-consumer/vercel.json.example +124 -0
|
@@ -0,0 +1,273 @@
|
|
|
1
|
+
# Styling Your App
|
|
2
|
+
|
|
3
|
+
**Guide for:** DoNotDev framework consumers
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Quick Start: Zero CSS Required
|
|
8
|
+
|
|
9
|
+
DoNotDev components work out of the box. Just pass props:
|
|
10
|
+
|
|
11
|
+
```tsx
|
|
12
|
+
import { Card, Button, Section } from '@donotdev/components';
|
|
13
|
+
import { PageContainer } from '@donotdev/ui';
|
|
14
|
+
|
|
15
|
+
<PageContainer>
|
|
16
|
+
<Section gridCols={3}>
|
|
17
|
+
<Card title="Feature 1" content="Description" />
|
|
18
|
+
<Card title="Feature 2" content="Description" />
|
|
19
|
+
<Card title="Feature 3" content="Description" />
|
|
20
|
+
</Section>
|
|
21
|
+
</PageContainer>;
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
**Result:** Responsive, accessible, themed. No CSS written.
|
|
25
|
+
|
|
26
|
+
---
|
|
27
|
+
|
|
28
|
+
## Page Structure (90% of use cases)
|
|
29
|
+
|
|
30
|
+
```tsx
|
|
31
|
+
<PageContainer>
|
|
32
|
+
<HeroSection title="Title" subtitle="Subtitle" />
|
|
33
|
+
|
|
34
|
+
<Section gridCols={3} title="Features">
|
|
35
|
+
<Card title="Feature 1" />
|
|
36
|
+
<Card title="Feature 2" />
|
|
37
|
+
<Card title="Feature 3" />
|
|
38
|
+
</Section>
|
|
39
|
+
|
|
40
|
+
<CallToAction title="Get Started" primaryAction={<Button>Action</Button>} />
|
|
41
|
+
</PageContainer>
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
**PageContainer handles:**
|
|
45
|
+
|
|
46
|
+
- Width constraints (`variant`: `full`, `standard`, `narrow`, `text`, `form`, `table`, `dashboard`)
|
|
47
|
+
- Spacing and typography via density system (`density`: `compact`, `standard`, `expressive`)
|
|
48
|
+
|
|
49
|
+
**Section handles:**
|
|
50
|
+
|
|
51
|
+
- Full-width backgrounds (`tone`: `base`, `muted`, `elevated`, `contrast`, `accent`)
|
|
52
|
+
- Grid layout (`gridCols`: `1`, `2`, `3`, `4`)
|
|
53
|
+
- Grid gap (`gridGap`: `none`, `tight`, `medium`, `large`)
|
|
54
|
+
|
|
55
|
+
---
|
|
56
|
+
|
|
57
|
+
## Density System
|
|
58
|
+
|
|
59
|
+
Control spacing and typography globally:
|
|
60
|
+
|
|
61
|
+
```tsx
|
|
62
|
+
<PageContainer density="expressive">
|
|
63
|
+
{/* All components automatically use expressive scale */}
|
|
64
|
+
<HeroSection title="Large Hero" />
|
|
65
|
+
<Section gridCols={3}>
|
|
66
|
+
<Card title="Card" />
|
|
67
|
+
</Section>
|
|
68
|
+
</PageContainer>
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
**Three densities:**
|
|
72
|
+
|
|
73
|
+
- **compact** - Dense layouts (admin, dashboards) - Minor Third (1.2×)
|
|
74
|
+
- **standard** - DEFAULT, balanced (docs, SaaS) - Major Third (1.25×)
|
|
75
|
+
- **expressive** - Spacious (marketing) - Perfect Fourth (1.333×)
|
|
76
|
+
|
|
77
|
+
All spacing (`--gap-sm/md/lg`) and typography (`--font-size-*`) adjust automatically based on musical scale ratios.
|
|
78
|
+
|
|
79
|
+
---
|
|
80
|
+
|
|
81
|
+
## Breakthrough Components
|
|
82
|
+
|
|
83
|
+
Some components break out of PageContainer width constraints to achieve full-width backgrounds:
|
|
84
|
+
|
|
85
|
+
```tsx
|
|
86
|
+
<PageContainer variant="standard">
|
|
87
|
+
{' '}
|
|
88
|
+
{/* 1480px max */}
|
|
89
|
+
<Section tone="muted" gridCols={3}>
|
|
90
|
+
{/* Section has full-width gray background */}
|
|
91
|
+
{/* But content is constrained to 1480px */}
|
|
92
|
+
<Card title="Card 1" />
|
|
93
|
+
<Card title="Card 2" />
|
|
94
|
+
<Card title="Card 3" />
|
|
95
|
+
</Section>
|
|
96
|
+
<CallToAction
|
|
97
|
+
title="Get Started"
|
|
98
|
+
subtitle="Ready to build?"
|
|
99
|
+
primaryAction={<Button>Start Now</Button>}
|
|
100
|
+
/>
|
|
101
|
+
{/* CTA has full-width background, constrained content */}
|
|
102
|
+
</PageContainer>
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
**Breakthrough components:**
|
|
106
|
+
|
|
107
|
+
- `Section` - Full-width backgrounds with grid layout
|
|
108
|
+
- `HeroSection` - Full-width hero sections
|
|
109
|
+
- `CallToAction` - Full-width conversion sections
|
|
110
|
+
|
|
111
|
+
**Why?** Marketing pages need full-width colored backgrounds while keeping text readable (constrained width).
|
|
112
|
+
|
|
113
|
+
---
|
|
114
|
+
|
|
115
|
+
## Overriding Styles
|
|
116
|
+
|
|
117
|
+
### Via className
|
|
118
|
+
|
|
119
|
+
```tsx
|
|
120
|
+
// Default styling
|
|
121
|
+
<Card title="Feature" />
|
|
122
|
+
|
|
123
|
+
// Tighter gap
|
|
124
|
+
<Card title="Feature" className="dndev-gap-sm" />
|
|
125
|
+
|
|
126
|
+
// Custom layout
|
|
127
|
+
<div className="dndev-flex dndev-gap-md">
|
|
128
|
+
<Card title="Left" />
|
|
129
|
+
<Card title="Right" />
|
|
130
|
+
</div>
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
**Available utilities:**
|
|
134
|
+
|
|
135
|
+
- Gap: `dndev-gap-none`, `dndev-gap-sm`, `dndev-gap-md`, `dndev-gap-lg`
|
|
136
|
+
- Layout: `dndev-flex`, `dndev-flex-col`, `dndev-grid`, `dndev-center`
|
|
137
|
+
- Padding: `dndev-p-{none|tight|medium|large}`
|
|
138
|
+
|
|
139
|
+
### Via Data Attributes
|
|
140
|
+
|
|
141
|
+
**Text Alignment:**
|
|
142
|
+
```tsx
|
|
143
|
+
<HeroSection data-text-align="center" title="Centered Hero" />
|
|
144
|
+
<CallToAction data-text-align="center" title="Centered CTA" />
|
|
145
|
+
<div data-text-align="end">Right-aligned text</div>
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
**Universal data attributes:**
|
|
149
|
+
- `data-text-align="start|center|end"` - Text alignment (RTL-aware)
|
|
150
|
+
- `data-gap="none|tight|medium|large"` - Gap spacing
|
|
151
|
+
- `data-radius="none|md|full"` - Border radius
|
|
152
|
+
- `data-cols="1|2|3|4"` - Grid columns (when using grid utilities)
|
|
153
|
+
|
|
154
|
+
**Why data attributes?**
|
|
155
|
+
- DRY: Single CSS rule handles all components
|
|
156
|
+
- No prop conflicts: `align` prop in Stack/Grid is for flex alignment, not text alignment
|
|
157
|
+
- No nesting issues: Each element controls its own styling
|
|
158
|
+
- Works with any element, not just framework components
|
|
159
|
+
|
|
160
|
+
### Via inline styles
|
|
161
|
+
|
|
162
|
+
```tsx
|
|
163
|
+
<Button style={{ minWidth: '200px' }}>
|
|
164
|
+
Wide Button
|
|
165
|
+
</Button>
|
|
166
|
+
|
|
167
|
+
<div style={{
|
|
168
|
+
display: 'grid',
|
|
169
|
+
gridTemplateColumns: '2fr 1fr',
|
|
170
|
+
gap: 'var(--gap-md)'
|
|
171
|
+
}}>
|
|
172
|
+
<Card title="Main" />
|
|
173
|
+
<Card title="Sidebar" />
|
|
174
|
+
</div>
|
|
175
|
+
```
|
|
176
|
+
|
|
177
|
+
---
|
|
178
|
+
|
|
179
|
+
## CSS Variables
|
|
180
|
+
|
|
181
|
+
All design tokens available as CSS variables:
|
|
182
|
+
|
|
183
|
+
```css
|
|
184
|
+
/* Your custom styles */
|
|
185
|
+
.my-component {
|
|
186
|
+
padding: var(--gap-md);
|
|
187
|
+
background: var(--color-surface);
|
|
188
|
+
border-radius: var(--radius-md);
|
|
189
|
+
box-shadow: var(--shadow-md);
|
|
190
|
+
}
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
**Common variables:**
|
|
194
|
+
|
|
195
|
+
- **Gap:** `--gap-none`, `--gap-sm`, `--gap-md`, `--gap-lg`
|
|
196
|
+
- **Radius:** `--radius-none`, `--radius-md`, `--radius-full`
|
|
197
|
+
- **Shadows:** `--shadow-sm`, `--shadow-md`, `--shadow-lg`, `--shadow-xl`
|
|
198
|
+
- **Colors:** `--color-primary`, `--color-surface`, `--color-text`
|
|
199
|
+
|
|
200
|
+
---
|
|
201
|
+
|
|
202
|
+
## Theming
|
|
203
|
+
|
|
204
|
+
Override CSS variables in your `themes.css`:
|
|
205
|
+
|
|
206
|
+
```css
|
|
207
|
+
[data-theme='custom'] {
|
|
208
|
+
--color-primary: #ff6b6b;
|
|
209
|
+
--gap-md: 1.5rem;
|
|
210
|
+
--radius-md: 1rem;
|
|
211
|
+
}
|
|
212
|
+
```
|
|
213
|
+
|
|
214
|
+
See [THEMING.md](./THEMING.md) for complete guide.
|
|
215
|
+
|
|
216
|
+
---
|
|
217
|
+
|
|
218
|
+
## Advanced: Using Primitives
|
|
219
|
+
|
|
220
|
+
For complex UI, use primitives directly:
|
|
221
|
+
|
|
222
|
+
```tsx
|
|
223
|
+
import {
|
|
224
|
+
TooltipPrimitive,
|
|
225
|
+
TooltipTriggerPrimitive,
|
|
226
|
+
TooltipContentPrimitive,
|
|
227
|
+
} from '@donotdev/components';
|
|
228
|
+
|
|
229
|
+
<TooltipPrimitive>
|
|
230
|
+
<TooltipTriggerPrimitive asChild>
|
|
231
|
+
<Button>Hover</Button>
|
|
232
|
+
</TooltipTriggerPrimitive>
|
|
233
|
+
<TooltipContentPrimitive>
|
|
234
|
+
<div className="dndev-flex-col dndev-gap-sm">
|
|
235
|
+
<h4>Title</h4>
|
|
236
|
+
<p>Description</p>
|
|
237
|
+
<Button>Action</Button>
|
|
238
|
+
</div>
|
|
239
|
+
</TooltipContentPrimitive>
|
|
240
|
+
</TooltipPrimitive>;
|
|
241
|
+
```
|
|
242
|
+
|
|
243
|
+
**When to use:**
|
|
244
|
+
|
|
245
|
+
- Simple content → Props-based components
|
|
246
|
+
- Complex/interactive content → Primitives
|
|
247
|
+
|
|
248
|
+
---
|
|
249
|
+
|
|
250
|
+
## Styling Approaches (All Valid)
|
|
251
|
+
|
|
252
|
+
The framework is flexible. Use what works:
|
|
253
|
+
|
|
254
|
+
✅ Utility classes
|
|
255
|
+
✅ Inline styles
|
|
256
|
+
✅ CSS modules
|
|
257
|
+
✅ Tailwind (if you prefer)
|
|
258
|
+
✅ Styled components
|
|
259
|
+
✅ Emotion
|
|
260
|
+
|
|
261
|
+
**Build your way.**
|
|
262
|
+
|
|
263
|
+
---
|
|
264
|
+
|
|
265
|
+
## Related
|
|
266
|
+
|
|
267
|
+
- [COMPONENTS.md](./COMPONENTS.md) - Component catalog
|
|
268
|
+
- [LAYOUTS.md](./LAYOUTS.md) - Layout patterns
|
|
269
|
+
- [THEMING.md](./THEMING.md) - Theme customization
|
|
270
|
+
|
|
271
|
+
---
|
|
272
|
+
|
|
273
|
+
**Last Updated:** 2025-12-03
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
# Theming Setup
|
|
2
|
+
|
|
3
|
+
**For AI Agents:** Override `src/themes.css`. CSS variables control everything.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## 1. Theme File
|
|
8
|
+
|
|
9
|
+
**Scaffolded:** `src/themes.css` (already imported in your app)
|
|
10
|
+
|
|
11
|
+
```css
|
|
12
|
+
/* src/themes.css */
|
|
13
|
+
.light {
|
|
14
|
+
--theme-icon: 'Sun';
|
|
15
|
+
--theme-label: 'Light';
|
|
16
|
+
--primary: #3b82f6;
|
|
17
|
+
--background: #ffffff;
|
|
18
|
+
--foreground: #0a0a0a;
|
|
19
|
+
/* ... more variables with JSDoc in scaffolded file */
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
.dark {
|
|
23
|
+
--theme-icon: 'Moon';
|
|
24
|
+
--theme-label: 'Dark';
|
|
25
|
+
--primary: #60a5fa;
|
|
26
|
+
--background: #0a0a0a;
|
|
27
|
+
--foreground: #fafafa;
|
|
28
|
+
}
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
---
|
|
32
|
+
|
|
33
|
+
## 2. Add Custom Theme
|
|
34
|
+
|
|
35
|
+
```css
|
|
36
|
+
.ocean {
|
|
37
|
+
--theme-icon: 'Waves';
|
|
38
|
+
--theme-label: 'Ocean';
|
|
39
|
+
--primary: #0ea5e9;
|
|
40
|
+
--background: #001a33;
|
|
41
|
+
--foreground: #e0f2fe;
|
|
42
|
+
}
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
Framework auto-discovers themes. ThemeToggle auto-populated.
|
|
46
|
+
|
|
47
|
+
---
|
|
48
|
+
|
|
49
|
+
## 3. Key Variables
|
|
50
|
+
|
|
51
|
+
**Base colors:**
|
|
52
|
+
- `--background` / `--foreground`
|
|
53
|
+
- `--primary` / `--primary-foreground`
|
|
54
|
+
- `--secondary` / `--secondary-foreground`
|
|
55
|
+
|
|
56
|
+
**Containers:**
|
|
57
|
+
- `--card` / `--card-foreground`
|
|
58
|
+
- `--popover` / `--popover-foreground`
|
|
59
|
+
|
|
60
|
+
**Status:**
|
|
61
|
+
- `--destructive`, `--success`, `--warning`
|
|
62
|
+
|
|
63
|
+
**Radius:**
|
|
64
|
+
- `--radius-surface` - Cards (rounded)
|
|
65
|
+
- `--radius-floating` - Dropdowns (square)
|
|
66
|
+
- `--radius-interactive` - Buttons (square)
|
|
67
|
+
|
|
68
|
+
---
|
|
69
|
+
|
|
70
|
+
## 4. Using Theme Colors
|
|
71
|
+
|
|
72
|
+
**In CSS:**
|
|
73
|
+
```css
|
|
74
|
+
.my-component {
|
|
75
|
+
background: var(--background);
|
|
76
|
+
color: var(--foreground);
|
|
77
|
+
}
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
**In components:**
|
|
81
|
+
All framework components auto-use theme colors.
|
|
82
|
+
|
|
83
|
+
---
|
|
84
|
+
|
|
85
|
+
## 5. Theme Switching
|
|
86
|
+
|
|
87
|
+
**Automatic (built-in):**
|
|
88
|
+
```tsx
|
|
89
|
+
import { ThemeToggle } from '@donotdev/ui';
|
|
90
|
+
|
|
91
|
+
// Auto-included in layout presets
|
|
92
|
+
// Hides if 1 theme, icon if 2, dropdown if 3+
|
|
93
|
+
<ThemeToggle />
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
**Manual:**
|
|
97
|
+
```tsx
|
|
98
|
+
import { useThemeStore } from '@donotdev/core';
|
|
99
|
+
|
|
100
|
+
const { theme, setTheme } = useThemeStore();
|
|
101
|
+
setTheme('dark');
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
---
|
|
105
|
+
|
|
106
|
+
## 6. Configuration
|
|
107
|
+
|
|
108
|
+
```typescript
|
|
109
|
+
// src/config/app.ts
|
|
110
|
+
export const appConfig: AppConfig = {
|
|
111
|
+
theme: {
|
|
112
|
+
defaultTheme: 'light',
|
|
113
|
+
},
|
|
114
|
+
};
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
---
|
|
118
|
+
|
|
119
|
+
**Zero config. Infinite themes. Read JSDoc in scaffolded file for all variables.**
|
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
# Version Control Guide
|
|
2
|
+
|
|
3
|
+
**How to upgrade DoNotDev framework packages in your project**
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Quick Start
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
# Check for available updates
|
|
11
|
+
dndev bump --check
|
|
12
|
+
|
|
13
|
+
# Apply safe updates (minor/patch versions)
|
|
14
|
+
dndev bump
|
|
15
|
+
|
|
16
|
+
# Preview changes without applying
|
|
17
|
+
dndev bump --dry-run
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
## How It Works
|
|
23
|
+
|
|
24
|
+
### Automatic Updates
|
|
25
|
+
|
|
26
|
+
**Patch versions (0.0.x):**
|
|
27
|
+
- Handled automatically by `bun install`
|
|
28
|
+
- No action needed - `^` ranges allow automatic patch updates
|
|
29
|
+
- Example: `^0.0.2` → `0.0.3`, `0.0.4`, etc.
|
|
30
|
+
|
|
31
|
+
**Minor versions (0.x.y):**
|
|
32
|
+
- Handled automatically by `dndev bump`
|
|
33
|
+
- **RISK FREE:** All changes are backward compatible via deprecation
|
|
34
|
+
- No breaking changes in 0.x.y range
|
|
35
|
+
- Example: `^0.0.2` → `^0.1.0` (auto-updated, safe)
|
|
36
|
+
|
|
37
|
+
### Manual Validation Required
|
|
38
|
+
|
|
39
|
+
**Major versions (0.*.* → 1.x.y):**
|
|
40
|
+
- `dndev bump` detects major version changes
|
|
41
|
+
- Shows migration guide with breaking changes
|
|
42
|
+
- **You must validate manually** before updating
|
|
43
|
+
- **Only place where breaking changes occur**
|
|
44
|
+
- Example: `^0.1.0` → `^1.0.0` (requires validation)
|
|
45
|
+
|
|
46
|
+
---
|
|
47
|
+
|
|
48
|
+
## Upgrade Process
|
|
49
|
+
|
|
50
|
+
### Step 1: Check for Updates
|
|
51
|
+
|
|
52
|
+
```bash
|
|
53
|
+
dndev bump --check
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
This shows:
|
|
57
|
+
- Available updates for `@donotdev/*` packages (from npm)
|
|
58
|
+
- Available updates for external peer dependencies (from matrix)
|
|
59
|
+
- Major version changes (with migration guides)
|
|
60
|
+
|
|
61
|
+
### Step 2: Review Migration Guides
|
|
62
|
+
|
|
63
|
+
If major version changes are detected:
|
|
64
|
+
- Read the migration guide shown in the output
|
|
65
|
+
- Check for breaking changes that affect your code
|
|
66
|
+
- Review the migration guide file (path shown in output)
|
|
67
|
+
|
|
68
|
+
### Step 3: Apply Updates
|
|
69
|
+
|
|
70
|
+
```bash
|
|
71
|
+
# Safe updates (minor/patch) - auto-applied
|
|
72
|
+
dndev bump
|
|
73
|
+
|
|
74
|
+
# Or preview first
|
|
75
|
+
dndev bump --dry-run
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
**What gets updated:**
|
|
79
|
+
- `@donotdev/*` packages: Updated to latest compatible version
|
|
80
|
+
- External peer dependencies: Updated to matrix versions
|
|
81
|
+
- All `package.json` files in your project
|
|
82
|
+
|
|
83
|
+
---
|
|
84
|
+
|
|
85
|
+
## Understanding Version Ranges
|
|
86
|
+
|
|
87
|
+
### `^` Range (Caret)
|
|
88
|
+
|
|
89
|
+
**What it means:**
|
|
90
|
+
- Allows updates to latest minor/patch version
|
|
91
|
+
- Same major version required
|
|
92
|
+
- Example: `^0.0.2` allows `0.0.2` through `0.0.9`, but not `0.1.0`
|
|
93
|
+
|
|
94
|
+
**Why we use it:**
|
|
95
|
+
- Automatic patch updates via `bun install`
|
|
96
|
+
- Safe minor updates via `dndev bump`
|
|
97
|
+
- Prevents accidental major version updates
|
|
98
|
+
|
|
99
|
+
### Version Format
|
|
100
|
+
|
|
101
|
+
```json
|
|
102
|
+
{
|
|
103
|
+
"dependencies": {
|
|
104
|
+
"@donotdev/core": "^0.0.2",
|
|
105
|
+
"react": "^19.2.3"
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
- `^0.0.2` = allows `0.0.2` to `0.0.x` (patch updates)
|
|
111
|
+
- `^0.1.0` = allows `0.1.0` to `0.x.x` (minor updates)
|
|
112
|
+
- `^1.0.0` = allows `1.0.0` to `1.x.x` (minor updates, not `2.0.0`)
|
|
113
|
+
|
|
114
|
+
---
|
|
115
|
+
|
|
116
|
+
## Migration Guides
|
|
117
|
+
|
|
118
|
+
When upgrading major versions, migration guides are provided:
|
|
119
|
+
|
|
120
|
+
**Location:** Shown in `dndev bump` output
|
|
121
|
+
|
|
122
|
+
**Contains:**
|
|
123
|
+
- List of breaking changes
|
|
124
|
+
- Step-by-step migration instructions
|
|
125
|
+
- Code examples for updated APIs
|
|
126
|
+
|
|
127
|
+
**Example:**
|
|
128
|
+
```
|
|
129
|
+
⚠️ Major version update detected: @donotdev/core 0.1.0 → 1.0.0
|
|
130
|
+
|
|
131
|
+
Migration guide: docs/migration/v0.1-to-v1.0.md
|
|
132
|
+
|
|
133
|
+
Breaking changes:
|
|
134
|
+
- Removed useAuth() - use useAuthentication() instead
|
|
135
|
+
- Theme API changed - see migration guide
|
|
136
|
+
|
|
137
|
+
Review the migration guide before updating.
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
---
|
|
141
|
+
|
|
142
|
+
## Troubleshooting
|
|
143
|
+
|
|
144
|
+
### "No updates available"
|
|
145
|
+
|
|
146
|
+
- All packages are up to date
|
|
147
|
+
- Or you're already on latest version
|
|
148
|
+
|
|
149
|
+
### "Major version change detected"
|
|
150
|
+
|
|
151
|
+
- Review migration guide
|
|
152
|
+
- Check breaking changes
|
|
153
|
+
- Update code if needed
|
|
154
|
+
- Run `dndev bump` again to apply
|
|
155
|
+
|
|
156
|
+
### "Package not found on npm"
|
|
157
|
+
|
|
158
|
+
- Package may not be published yet
|
|
159
|
+
- Check package name spelling
|
|
160
|
+
- Verify you're using correct registry
|
|
161
|
+
|
|
162
|
+
---
|
|
163
|
+
|
|
164
|
+
## Best Practices
|
|
165
|
+
|
|
166
|
+
1. **Regular updates:** Run `dndev bump --check` monthly
|
|
167
|
+
2. **Test after updates:** Run your test suite after applying updates
|
|
168
|
+
3. **Review major changes:** Always read migration guides for major versions
|
|
169
|
+
4. **Use `--dry-run`:** Preview changes before applying
|
|
170
|
+
5. **Commit changes:** Commit updated `package.json` files after successful updates
|
|
171
|
+
|
|
172
|
+
---
|
|
173
|
+
|
|
174
|
+
## Related
|
|
175
|
+
|
|
176
|
+
- **[Dependency System](../../docs/development/DEPENDENCY_SYSTEM.md)** - How dependency management works
|
|
177
|
+
- **[Architecture Hub](../../docs/architecture/INDEX.md)** - Framework structure
|
|
178
|
+
|
|
179
|
+
---
|
|
180
|
+
|
|
181
|
+
**Keep your dependencies up to date. Stay secure. Stay compatible.**
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
{
|
|
2
|
+
"extends": "./tsconfig.json",
|
|
3
|
+
"compilerOptions": {
|
|
4
|
+
"module": "NodeNext",
|
|
5
|
+
"moduleResolution": "NodeNext",
|
|
6
|
+
"lib": ["ES2022"],
|
|
7
|
+
"types": ["node"],
|
|
8
|
+
"noEmit": false,
|
|
9
|
+
"outDir": "./functions/lib",
|
|
10
|
+
"rootDir": "./functions/src"
|
|
11
|
+
},
|
|
12
|
+
"include": ["functions/src/**/*", "entities/**/*"],
|
|
13
|
+
"exclude": ["node_modules", "**/node_modules", "**/dist", "**/.next", "**/lib"]
|
|
14
|
+
}
|
|
15
|
+
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
{
|
|
2
|
+
"compilerOptions": {
|
|
3
|
+
"target": "ES2022",
|
|
4
|
+
"module": "preserve",
|
|
5
|
+
"moduleResolution": "bundler",
|
|
6
|
+
"lib": ["ESNext", "DOM", "DOM.Iterable"],
|
|
7
|
+
"strict": true,
|
|
8
|
+
"skipLibCheck": true,
|
|
9
|
+
"esModuleInterop": true,
|
|
10
|
+
"resolveJsonModule": true,
|
|
11
|
+
"isolatedModules": true,
|
|
12
|
+
"jsx": "react-jsx",
|
|
13
|
+
"forceConsistentCasingInFileNames": true
|
|
14
|
+
},
|
|
15
|
+
"include": ["apps/*/tsconfig.json"],
|
|
16
|
+
"exclude": ["node_modules", "**/node_modules", "dist", "**/dist", "**/.next", "**/lib"]
|
|
17
|
+
}
|
|
18
|
+
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://turbo.build/schema.json",
|
|
3
|
+
"globalDependencies": [
|
|
4
|
+
"**/.env.*local"
|
|
5
|
+
],
|
|
6
|
+
"tasks": {
|
|
7
|
+
"build": {
|
|
8
|
+
"dependsOn": [
|
|
9
|
+
"^build"
|
|
10
|
+
],
|
|
11
|
+
"outputs": [
|
|
12
|
+
"*/dist/**",
|
|
13
|
+
"!**/node_modules/**"
|
|
14
|
+
]
|
|
15
|
+
},
|
|
16
|
+
"type-check": {
|
|
17
|
+
"dependsOn": [
|
|
18
|
+
"^type-check"
|
|
19
|
+
],
|
|
20
|
+
"cache": true
|
|
21
|
+
},
|
|
22
|
+
"preview": {
|
|
23
|
+
"dependsOn": ["build"],
|
|
24
|
+
"cache": false,
|
|
25
|
+
"persistent": true
|
|
26
|
+
},
|
|
27
|
+
"test": {
|
|
28
|
+
"dependsOn": [
|
|
29
|
+
"^build"
|
|
30
|
+
],
|
|
31
|
+
"outputs": [
|
|
32
|
+
"coverage/**"
|
|
33
|
+
]
|
|
34
|
+
},
|
|
35
|
+
"lint": {
|
|
36
|
+
"outputs": []
|
|
37
|
+
},
|
|
38
|
+
"dev": {
|
|
39
|
+
"cache": false,
|
|
40
|
+
"persistent": true
|
|
41
|
+
},
|
|
42
|
+
"clean": {
|
|
43
|
+
"cache": false
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|