create-domis 1.0.45 → 1.0.46
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/package.json +14 -4
- package/templates/domisdocs-free/.firebaserc +5 -0
- package/templates/domisdocs-free/README.md +70 -0
- package/templates/domisdocs-free/firebase.json +29 -0
- package/templates/domisdocs-free/package.json +10 -0
- package/templates/domisdocs-lite/.firebaserc +5 -0
- package/templates/domisdocs-lite/README.md +229 -0
- package/templates/domisdocs-lite/domisdocs-602fc/hosting/404.html +155 -0
- package/templates/domisdocs-lite/domisdocs-602fc/hosting/_next/static/NQ3kax0_fweCAqnNXt6Ej/_buildManifest.js +81 -0
- package/templates/domisdocs-lite/domisdocs-602fc/hosting/_next/static/NQ3kax0_fweCAqnNXt6Ej/_ssgManifest.js +2 -0
- package/templates/domisdocs-lite/domisdocs-602fc/hosting/_next/static/chunks/341.df3329d77a5faa19.js +369 -0
- package/templates/domisdocs-lite/domisdocs-602fc/hosting/_next/static/chunks/472.a3826d29d6854395.js +37 -0
- package/templates/domisdocs-lite/domisdocs-602fc/hosting/_next/static/chunks/4bd1b696-67ee12fb04071d3b.js +11130 -0
- package/templates/domisdocs-lite/domisdocs-602fc/hosting/_next/static/chunks/684-71b0b1461a73105d.js +9987 -0
- package/templates/domisdocs-lite/domisdocs-602fc/hosting/_next/static/chunks/874-992333f59fd2c78c.js +525 -0
- package/templates/domisdocs-lite/domisdocs-602fc/hosting/_next/static/chunks/app/_not-found/page-f08302ee705a96b1.js +113 -0
- package/templates/domisdocs-lite/domisdocs-602fc/hosting/_next/static/chunks/app/dashboard/page-bd672c78e74e0ca7.js +12 -0
- package/templates/domisdocs-lite/domisdocs-602fc/hosting/_next/static/chunks/app/layout-1415b7c12bd25ba1.js +13 -0
- package/templates/domisdocs-lite/domisdocs-602fc/hosting/_next/static/chunks/app/page-202ca2a6f090766b.js +12 -0
- package/templates/domisdocs-lite/domisdocs-602fc/hosting/_next/static/chunks/framework-859199dea06580b0.js +11894 -0
- package/templates/domisdocs-lite/domisdocs-602fc/hosting/_next/static/chunks/main-9d4372fbc380071d.js +6431 -0
- package/templates/domisdocs-lite/domisdocs-602fc/hosting/_next/static/chunks/main-app-9e36547c97a174da.js +20 -0
- package/templates/domisdocs-lite/domisdocs-602fc/hosting/_next/static/chunks/pages/_app-a66f9296699c5863.js +49 -0
- package/templates/domisdocs-lite/domisdocs-602fc/hosting/_next/static/chunks/pages/_error-7688f4c9a69e67c8.js +386 -0
- package/templates/domisdocs-lite/domisdocs-602fc/hosting/_next/static/chunks/polyfills-42372ed130431b0a.js +7940 -0
- package/templates/domisdocs-lite/domisdocs-602fc/hosting/_next/static/chunks/webpack-880aef799750a911.js +209 -0
- package/templates/domisdocs-lite/domisdocs-602fc/hosting/_next/static/css/f913f2bf40d109a3.css +1056 -0
- package/templates/domisdocs-lite/domisdocs-602fc/hosting/dashboard.html +520 -0
- package/templates/domisdocs-lite/domisdocs-602fc/hosting/index.html +129 -0
- package/templates/domisdocs-lite/domispacks/hosting/404.html +155 -0
- package/templates/domisdocs-lite/domispacks/hosting/_next/static/FUOO1M6iev6fYpEjnXpyc/_buildManifest.js +81 -0
- package/templates/domisdocs-lite/domispacks/hosting/_next/static/FUOO1M6iev6fYpEjnXpyc/_ssgManifest.js +2 -0
- package/templates/domisdocs-lite/domispacks/hosting/_next/static/chunks/341.df3329d77a5faa19.js +369 -0
- package/templates/domisdocs-lite/domispacks/hosting/_next/static/chunks/472.a3826d29d6854395.js +37 -0
- package/templates/domisdocs-lite/domispacks/hosting/_next/static/chunks/4bd1b696-67ee12fb04071d3b.js +11130 -0
- package/templates/domisdocs-lite/domispacks/hosting/_next/static/chunks/684-71b0b1461a73105d.js +9987 -0
- package/templates/domisdocs-lite/domispacks/hosting/_next/static/chunks/874-992333f59fd2c78c.js +525 -0
- package/templates/domisdocs-lite/domispacks/hosting/_next/static/chunks/app/_not-found/page-f08302ee705a96b1.js +113 -0
- package/templates/domisdocs-lite/domispacks/hosting/_next/static/chunks/app/dashboard/page-bd672c78e74e0ca7.js +12 -0
- package/templates/domisdocs-lite/domispacks/hosting/_next/static/chunks/app/layout-1415b7c12bd25ba1.js +13 -0
- package/templates/domisdocs-lite/domispacks/hosting/_next/static/chunks/app/page-202ca2a6f090766b.js +12 -0
- package/templates/domisdocs-lite/domispacks/hosting/_next/static/chunks/framework-859199dea06580b0.js +11894 -0
- package/templates/domisdocs-lite/domispacks/hosting/_next/static/chunks/main-9d4372fbc380071d.js +6431 -0
- package/templates/domisdocs-lite/domispacks/hosting/_next/static/chunks/main-app-9e36547c97a174da.js +20 -0
- package/templates/domisdocs-lite/domispacks/hosting/_next/static/chunks/pages/_app-a66f9296699c5863.js +49 -0
- package/templates/domisdocs-lite/domispacks/hosting/_next/static/chunks/pages/_error-7688f4c9a69e67c8.js +386 -0
- package/templates/domisdocs-lite/domispacks/hosting/_next/static/chunks/polyfills-42372ed130431b0a.js +7940 -0
- package/templates/domisdocs-lite/domispacks/hosting/_next/static/chunks/webpack-880aef799750a911.js +209 -0
- package/templates/domisdocs-lite/domispacks/hosting/_next/static/css/f913f2bf40d109a3.css +1056 -0
- package/templates/domisdocs-lite/domispacks/hosting/dashboard.html +520 -0
- package/templates/domisdocs-lite/domispacks/hosting/index.html +129 -0
- package/templates/domisdocs-lite/firebase.json +29 -0
- package/templates/domisdocs-lite/hosting.LmZpcmViYXNlXGRvbWlzZG9jcy02MDJmY1xob3N0aW5n.cache +22 -0
- package/templates/domisdocs-lite/hosting.LmZpcmViYXNlXGRvbWlzcGFja3NcaG9zdGluZw.cache +22 -0
- package/templates/domisdocs-lite/next-env.d.ts +5 -0
- package/templates/domisdocs-lite/next.config.ts +9 -0
- package/templates/domisdocs-lite/package-lock.json +1783 -0
- package/templates/domisdocs-lite/package.json +25 -0
- package/templates/domisdocs-lite/postcss.config.mjs +3 -0
- package/templates/domisdocs-lite/tsconfig.json +22 -0
package/package.json
CHANGED
|
@@ -1,16 +1,26 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "create-domis",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.46",
|
|
4
4
|
"description": "CLI Oficial DomisPacks - Acelerador Next.js 15 + Tailwind v4 + SaaS Boilerplate",
|
|
5
5
|
"type": "module",
|
|
6
|
-
"bin": {
|
|
7
|
-
|
|
6
|
+
"bin": {
|
|
7
|
+
"create-domis": "./dist/index.js"
|
|
8
|
+
},
|
|
9
|
+
"files": [
|
|
10
|
+
"dist",
|
|
11
|
+
"templates"
|
|
12
|
+
],
|
|
8
13
|
"scripts": {
|
|
9
14
|
"build": "tsup src/index.ts --format esm --dts",
|
|
10
15
|
"dev": "tsx src/index.ts",
|
|
11
16
|
"prepublishOnly": "npm run build"
|
|
12
17
|
},
|
|
13
|
-
"keywords": [
|
|
18
|
+
"keywords": [
|
|
19
|
+
"firebase",
|
|
20
|
+
"domis",
|
|
21
|
+
"create-domis",
|
|
22
|
+
"cli"
|
|
23
|
+
],
|
|
14
24
|
"author": "Domisnnet",
|
|
15
25
|
"license": "LICENSE",
|
|
16
26
|
"dependencies": {
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+

|
|
2
|
+

|
|
3
|
+

|
|
4
|
+

|
|
5
|
+

|
|
6
|
+
[](https://github.com/Domisnnet/DomisPacks-Technical/blob/main/LICENSE)
|
|
7
|
+
|
|
8
|
+
## 1. 🚀 DomisDocs Free — Technical Preview
|
|
9
|
+
|
|
10
|
+
> Bem-vindo ao Pack: **Free Oficial Domis.** Você rodou `npm create domis@latest`.
|
|
11
|
+
|
|
12
|
+
Esta é a versão pública, gratuita e sem PRO_KEY. Contém apenas 4 arquivos de degustação.
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## 2. 📦 O que vem no Free?
|
|
17
|
+
|
|
18
|
+
```
|
|
19
|
+
domisdocs-free/
|
|
20
|
+
├── firebase.json → básico
|
|
21
|
+
├── .firebaserc → básico
|
|
22
|
+
├── package.json → básico
|
|
23
|
+
└── README.md → básico
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
É o suficiente para dar `npm run build` e `firebase deploy` sem erro.
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
## 3. Tabela Comparativa
|
|
31
|
+
|
|
32
|
+
> Este preview não contém código-fonte, Dashboard, `firestore.rules`, `storage.rules`, `functions/`, Stripe ou SSR.
|
|
33
|
+
|
|
34
|
+
| O que vem no Free | O que SÓ vem no Lite : R$49 | O que SÓ vem no Pro : R$197 |
|
|
35
|
+
| :------------------------------------- | :--------------------------------------------- | :---------------------------------------------------------- |
|
|
36
|
+
| firebase.json básico - só public: dist | Next.js 15 + Tailwind v4 + shadcn | Tudo do Lite + |
|
|
37
|
+
| .firebaserc básico | firestore.rules básica + next.config otimizado | firestore.rules avançada + storage.rules |
|
|
38
|
+
| package.json + README.md básico | Dashboard + Hosting otimizado | functions/ + Stripe + Kiwify Webhook + GitHub Actions + SSR |
|
|
39
|
+
|
|
40
|
+
---
|
|
41
|
+
|
|
42
|
+
## 3. 🔑 Como destravar
|
|
43
|
+
|
|
44
|
+
Essa é a versão gratuita instalada. Quer destravar Dashboard + Tailwind?
|
|
45
|
+
|
|
46
|
+
### Opção 1: Lite — O Fix de 5 minutos
|
|
47
|
+
|
|
48
|
+
> Resolve 90% dos erros de `create-domis` com Next.js 15.
|
|
49
|
+
|
|
50
|
+
**Inclui:** CLI completa + Repo Privado + Dashboard + `next.config` otimizado + 6 meses de updates + Uso VITALÍCIO.
|
|
51
|
+
|
|
52
|
+
[](https://pay.kiwify.com.br/heAmetM)
|
|
53
|
+
|
|
54
|
+
> Entrega automática da PRO_KEY por e-mail após pagamento.
|
|
55
|
+
|
|
56
|
+
### Opção 2: Pro — Produção Completa
|
|
57
|
+
|
|
58
|
+
Para quem quer entregar para cliente. Tudo do Lite + `functions/` + Stripe + Kiwify Webhook + CI/CD.
|
|
59
|
+
|
|
60
|
+
[](https://pay.kiwify.com.br)
|
|
61
|
+
|
|
62
|
+
> Status: Em finalização. Quem compra o Lite agora garante cupom de R$49 OFF no Pro. Paga só a diferença.
|
|
63
|
+
|
|
64
|
+
---
|
|
65
|
+
|
|
66
|
+
> Já comprou o Lite? Envie comprovante do Lite e ganhe cupom de R$49 OFF. Paga só a diferença para o Pro.
|
|
67
|
+
|
|
68
|
+
### 4. 🛡 Garantia
|
|
69
|
+
|
|
70
|
+
Todos os packs têm **7 dias de garantia incondicional** via Kiwify.
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
{
|
|
2
|
+
"hosting": {
|
|
3
|
+
"public": "out",
|
|
4
|
+
"ignore": [
|
|
5
|
+
"firebase.json",
|
|
6
|
+
"**/.*",
|
|
7
|
+
"**/node_modules/**"
|
|
8
|
+
],
|
|
9
|
+
"rewrites": [
|
|
10
|
+
{ "source": "**", "destination": "/index.html" }
|
|
11
|
+
],
|
|
12
|
+
"headers": [
|
|
13
|
+
{
|
|
14
|
+
"source": "**/*.@(js|css|woff2|png|jpg|jpeg|gif|svg|webp|ico)",
|
|
15
|
+
"headers": [
|
|
16
|
+
{ "key": "Cache-Control", "value": "public, max-age=31536000, immutable" }
|
|
17
|
+
]
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
"source": "**",
|
|
21
|
+
"headers": [
|
|
22
|
+
{ "key": "X-Content-Type-Options", "value": "nosniff" },
|
|
23
|
+
{ "key": "X-Frame-Options", "value": "DENY" },
|
|
24
|
+
{ "key": "X-XSS-Protection", "value": "1; mode=block" }
|
|
25
|
+
]
|
|
26
|
+
}
|
|
27
|
+
]
|
|
28
|
+
}
|
|
29
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "domisdocs-free",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"private": true,
|
|
5
|
+
"description": "DomisDocs Free",
|
|
6
|
+
"scripts": {
|
|
7
|
+
"dev": "echo \"⚠️ DomisDocs Free contém apenas arquivos de configuração. Use o pack Lite para desenvolvimento.\"",
|
|
8
|
+
"build": "echo \"⚠️ Nada para buildar neste pack. Contém apenas arquivos de configuração Firebase.\""
|
|
9
|
+
}
|
|
10
|
+
}
|
|
@@ -0,0 +1,229 @@
|
|
|
1
|
+

|
|
2
|
+

|
|
3
|
+

|
|
4
|
+

|
|
5
|
+

|
|
6
|
+
|
|
7
|
+
<h2 id="sobre-o-cli">1. 🚀 Create Domis - O Acelerador Next.js 15 + Firebase Killer 🚀</h2>
|
|
8
|
+
|
|
9
|
+

|
|
10
|
+

|
|
11
|
+

|
|
12
|
+
[](https://github.com/Domisnnet/DomisPacks-Technical/blob/main/LICENSE)
|
|
13
|
+

|
|
14
|
+
|
|
15
|
+
Bem-vindo ao **CLI Oficial Domis**. O `npm create domis@latest` é um acelerador de projetos que elimina 3 horas de configuração de `firebase.json`, `firestore.rules` e `GitHub Actions` com 1 comando. Resolvemos o bug de Hosting que quebra 90% dos deploys Next.js 15 no Firebase.
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## 📚 Tabela de Conteúdo
|
|
20
|
+
|
|
21
|
+
| 💻 O CLI | 🛠 Técnico | 🤝 Comercial |
|
|
22
|
+
| :-------------------------------------------------------------------------------------: | :-----------------------------------------------------------------------------------: | :----------------------------------------------------------------------------------------: |
|
|
23
|
+
| [](#sobre-o-cli) | [](#tecnologias) | [](#estrutura) |
|
|
24
|
+
| [](#instalacao) | [](#templates-inclusos) | [](#como-funciona-a-venda) |
|
|
25
|
+
| [](#uso-rapido) | [](#fluxo-de-uso) | [](#licenca) |
|
|
26
|
+
| [](#comandos) | [](#faq) | [](#perfil) |
|
|
27
|
+
|
|
28
|
+
---
|
|
29
|
+
|
|
30
|
+
<h2 id="instalacao">2. ⚙ Instalação</h2>
|
|
31
|
+
|
|
32
|
+
Não precisa instalar global. Rode sempre na última versão:
|
|
33
|
+
|
|
34
|
+
```bash
|
|
35
|
+
npm create domis@latest
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
<h2 id="uso-rapido">3. 🚀 Uso Rápido</h2>
|
|
41
|
+
|
|
42
|
+
Todo mundo roda o mesmo comando. O que muda é o que sua PRO_KEY liberou no `verificar.html`:
|
|
43
|
+
|
|
44
|
+
```bash
|
|
45
|
+
npm create domis@latest
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
O CLI vai abrir:
|
|
49
|
+
|
|
50
|
+
```
|
|
51
|
+
🔥 DomisPacks Technical v1.0.24
|
|
52
|
+
|
|
53
|
+
? Qual pack você quer acelerar hoje?
|
|
54
|
+
|
|
55
|
+
> 🔥 DomisDocs Lite — Next.js 15 + Tailwind v4 + Firebase Killer
|
|
56
|
+
🔥 DomisDocs PRO — Next.js 15 + Stripe + Rules + SSR + CI/CD
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
| Você comprou | O que acontece |
|
|
60
|
+
| :------------ | :-------------------------------------------------------------------------------------- |
|
|
61
|
+
| **Lite R$49** | Escolhe `DomisDocs Lite` e cria na hora |
|
|
62
|
+
| **Pro R$197** | Valida sua PRO_KEY no `verificar.html`, depois escolhe `DomisDocs PRO` no mesmo comando |
|
|
63
|
+
|
|
64
|
+
> A autenticação `--key` é feita por debaixo dos panos pelo `verificar.html`. Você não precisa digitar `--template` ou `--key` na mão.
|
|
65
|
+
|
|
66
|
+
---
|
|
67
|
+
|
|
68
|
+
<h2 id="comandos">4. 🧩 Comandos Disponíveis</h2>
|
|
69
|
+
|
|
70
|
+
| Comando | O que faz |
|
|
71
|
+
| :------------------------ | :----------------------------------------------------------------------- |
|
|
72
|
+
| `npm create domis@latest` | Modo interativo (recomendado) - lista Lite/Pro liberados pela sua key |
|
|
73
|
+
| `--template <nome>` | Uso interno - pula o menu (gerenciado pelo verificar.html) |
|
|
74
|
+
| `--key <PRO_KEY>` | Uso interno - autentica no repo privado (gerenciado pelo verificar.html) |
|
|
75
|
+
| `--help` | Lista todos os templates disponíveis |
|
|
76
|
+
|
|
77
|
+
---
|
|
78
|
+
|
|
79
|
+
<h2 id="tecnologias">5. 💻 Stack do CLI</h2>
|
|
80
|
+
|
|
81
|
+
| Camada | Tecnologia |
|
|
82
|
+
| :------------- | :------------------------------------ |
|
|
83
|
+
| **Core** | Node + TypeScript |
|
|
84
|
+
| **CLI Engine** | `create-*` + `prompts` + `degit` |
|
|
85
|
+
| **Infra** | GitHub Private Repo como CDN de Packs |
|
|
86
|
+
| **Auth** | PRO_KEY Kiwify via verificar.html |
|
|
87
|
+
| **Frontend** | Next.js 15 + Tailwind v4 |
|
|
88
|
+
|
|
89
|
+
---
|
|
90
|
+
|
|
91
|
+
<h2 id="templates-inclusos">6. 📦 Templates Inclusos no MVP</h2>
|
|
92
|
+
|
|
93
|
+
| Pack | Preço | O que entrega |
|
|
94
|
+
| :------------------------ | :-------- | :------------------------------------------------------------------------------------------------------------------------------ |
|
|
95
|
+
| `domisdocs-firebase-lite` | **R$49** | `firebase.json` killer + Hosting otimizado + `next.config` + `firestore.rules` básica + Bônus |
|
|
96
|
+
| `domisdocs-firebase-pro` | **R$197** | Lite + `firestore.rules` avançadas + `storage.rules` + `GitHub Actions` + `functions/` + Stripe Checkout + Kiwify Webhook + SSR |
|
|
97
|
+
|
|
98
|
+
---
|
|
99
|
+
|
|
100
|
+
<h2 id="fluxo-de-uso">7. 🔄 Fluxo de Uso</h2>
|
|
101
|
+
|
|
102
|
+
# Cliente roda :
|
|
103
|
+
|
|
104
|
+
```bash
|
|
105
|
+
npm create domis@latest
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
### CLI faz :
|
|
109
|
+
|
|
110
|
+
```
|
|
111
|
+
✔ DomisPacks Technical v1.0.24
|
|
112
|
+
✔ Qual pack você quer acelerar hoje?
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
### Seleciona Lite
|
|
116
|
+
|
|
117
|
+
```
|
|
118
|
+
✔ 🔥 DomisDocs Lite — Next.js 15 + Tailwind v4 + Firebase Killer ( Lite )
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
### Ou Pro
|
|
122
|
+
|
|
123
|
+
```
|
|
124
|
+
✔ 🔥 DomisDocs PRO — Next.js 15 + Stripe + Rules + SSR + CI/CD ( Pro )
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
### Depois :
|
|
128
|
+
|
|
129
|
+
```
|
|
130
|
+
✔ Baixando pack...
|
|
131
|
+
✔ Corrigindo firebase.json -> Hosting + Rewrites + Cache Next.js 15
|
|
132
|
+
✔ Instalando deps...
|
|
133
|
+
✔ Pronto!
|
|
134
|
+
cd meu-app && npm run dev
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
---
|
|
138
|
+
|
|
139
|
+
<h2 id="faq">8. 🧠 FAQ</h2>
|
|
140
|
+
|
|
141
|
+
<details>
|
|
142
|
+
<summary><strong>Precisa de Firebase CLI instalado ❓</strong></summary>
|
|
143
|
+
<p>⚠ <strong>Sim, para deploy.</strong> `npm i -g firebase-tools`. O `create-domis` só cria e corrige o projeto.</p>
|
|
144
|
+
</details>
|
|
145
|
+
|
|
146
|
+
<details>
|
|
147
|
+
<summary><strong>Funciona no Windows ❓</strong></summary>
|
|
148
|
+
<p>✅ <strong>Sim.</strong> Testado em PowerShell e CMD.</p>
|
|
149
|
+
</details>
|
|
150
|
+
|
|
151
|
+
<details>
|
|
152
|
+
<summary><strong>O que é a PRO_KEY ❓</strong></summary>
|
|
153
|
+
<p>🔑 É a key gerada após compra na Kiwify. Você cola no verificar.html como senha e ela libera seu pack. Não precisa digitar no terminal.</p>
|
|
154
|
+
</details>
|
|
155
|
+
|
|
156
|
+
<details>
|
|
157
|
+
<summary><strong>Funciona com SSR / Next.js App Router ❓</strong></summary>
|
|
158
|
+
<p>🌐 <strong>No Lite é Hosting estático otimizado.</strong> SSR completo + Functions está no Pack Pro com `ssr: true` já configurado.</p>
|
|
159
|
+
</details>
|
|
160
|
+
|
|
161
|
+
<details>
|
|
162
|
+
<summary><strong>Posso usar com GitHub Actions (deploy automático) ❓</strong></summary>
|
|
163
|
+
<p>🤖 <strong>Sim, mas no Lite é manual.</strong> No Lite você roda `firebase deploy`. No Pro já vem `.github/workflows/deploy.yml` que faz deploy a cada push na `main`.</p>
|
|
164
|
+
</details>
|
|
165
|
+
|
|
166
|
+
---
|
|
167
|
+
|
|
168
|
+
<h2 id="estrutura">9. 📁 Estrutura do Projeto Gerado</h2>
|
|
169
|
+
|
|
170
|
+
O que o `npm create domis@latest` cria dentro da pasta `meu-app/` - reaproveitável para Lite e futuro PRO:
|
|
171
|
+
|
|
172
|
+
```
|
|
173
|
+
meu-app/
|
|
174
|
+
├── firebase.json → Firebase Killer (Hosting + Rewrites + Cache)
|
|
175
|
+
├── firestore.rules → Lite: basica / Pro: avancada multi-tenant
|
|
176
|
+
├── storage.rules → Pro: regras avancadas (Lite: basica)
|
|
177
|
+
├── next.config.js → Otimizado para Firebase Hosting
|
|
178
|
+
├── tailwind.config.ts → Tailwind v4 ja configurado
|
|
179
|
+
├── .github/
|
|
180
|
+
│ └── workflows/
|
|
181
|
+
│ └── deploy.yml → So no PRO: deploy automatico
|
|
182
|
+
├── functions/ → So no PRO: Stripe + Kiwify Webhook + Validator
|
|
183
|
+
│ ├── src/
|
|
184
|
+
│ │ └── index.ts
|
|
185
|
+
│ └── package.json
|
|
186
|
+
└── src/
|
|
187
|
+
├── app/
|
|
188
|
+
│ ├── (saas)/
|
|
189
|
+
│ │ └── dashboard/ → So no PRO
|
|
190
|
+
│ ├── layout.tsx
|
|
191
|
+
│ └── page.tsx
|
|
192
|
+
└── lib/
|
|
193
|
+
├── firebase.ts
|
|
194
|
+
└── stripe.ts → So no PRO
|
|
195
|
+
```
|
|
196
|
+
|
|
197
|
+
> No Lite voce recebe tudo ate `src/lib/firebase.ts`. No PRO destrava `functions/`, `.github/` e `storage.rules` avancadas.
|
|
198
|
+
|
|
199
|
+
---
|
|
200
|
+
|
|
201
|
+
<h2 id="como-funciona-a-venda">10. 💳 Como Funciona a Venda</h2>
|
|
202
|
+
|
|
203
|
+
1. Cliente compra na Kiwify (Lite R$49 ou Pro R$197)
|
|
204
|
+
2. Kiwify envia PRO_KEY automatica por e-mail
|
|
205
|
+
3. Cliente acessa verificar.html e ativa a key como senha
|
|
206
|
+
4. Ele roda: `npm create domis@latest` e escolhe o pack liberado pela key
|
|
207
|
+
5. Acesso liberado por 6 meses - renova com CUPOM: L2NNYK8 5% OFF
|
|
208
|
+
|
|
209
|
+
---
|
|
210
|
+
|
|
211
|
+
<h2 id="licenca">11. 📄 Licença</h2>
|
|
212
|
+
|
|
213
|
+
Este CLI é código aberto, mas os Packs são sob: [](https://github.com/Domisnnet/DomisPacks-Technical/blob/main/LICENSE) — De uso privado do Desenvolvedor. Proibida redistribuição sem PRO_KEY ativa. Proibida a revenda desse código.
|
|
214
|
+
|
|
215
|
+
---
|
|
216
|
+
|
|
217
|
+
<h2 id="perfil">12. 👨💻 DomisDev</h2>
|
|
218
|
+
|
|
219
|
+
> Caso precise de informações adicionais, abra uma Pull Request:
|
|
220
|
+
|
|
221
|
+
<a href="https://github.com/Domisnnet">
|
|
222
|
+
<img src="./src/assets/DomisDev.png" width="90" style="border-radius: 50%" alt="DomisDev">
|
|
223
|
+
</a>
|
|
224
|
+
|
|
225
|
+
<p align="center">
|
|
226
|
+
<a href="#sobre-o-cli">
|
|
227
|
+
<img src="https://img.shields.io/badge/⬆%20VOLTAR%20AO%20TOPO-26FF00?style=flat&labelColor=111827&color=0A0F1C" alt="Voltar ao topo" style="height: 30px;">
|
|
228
|
+
</a>
|
|
229
|
+
</p>
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="pt-BR">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="utf-8" />
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
6
|
+
<link
|
|
7
|
+
rel="stylesheet"
|
|
8
|
+
href="/_next/static/css/f913f2bf40d109a3.css"
|
|
9
|
+
data-precedence="next"
|
|
10
|
+
/>
|
|
11
|
+
<link
|
|
12
|
+
rel="preload"
|
|
13
|
+
as="script"
|
|
14
|
+
fetchpriority="low"
|
|
15
|
+
href="/_next/static/chunks/webpack-880aef799750a911.js"
|
|
16
|
+
/>
|
|
17
|
+
<script
|
|
18
|
+
src="/_next/static/chunks/4bd1b696-67ee12fb04071d3b.js"
|
|
19
|
+
async=""
|
|
20
|
+
></script>
|
|
21
|
+
<script
|
|
22
|
+
src="/_next/static/chunks/684-71b0b1461a73105d.js"
|
|
23
|
+
async=""
|
|
24
|
+
></script>
|
|
25
|
+
<script
|
|
26
|
+
src="/_next/static/chunks/main-app-9e36547c97a174da.js"
|
|
27
|
+
async=""
|
|
28
|
+
></script>
|
|
29
|
+
<meta name="robots" content="noindex" />
|
|
30
|
+
<title>404: This page could not be found.</title>
|
|
31
|
+
<title>DomisPacks Lite - SaaS Starter</title>
|
|
32
|
+
<meta
|
|
33
|
+
name="description"
|
|
34
|
+
content="Next 15 + Tailwind v4 + shadcn + Stripe"
|
|
35
|
+
/>
|
|
36
|
+
<script>
|
|
37
|
+
document
|
|
38
|
+
.querySelectorAll(
|
|
39
|
+
'body link[rel="icon"], body link[rel="apple-touch-icon"]',
|
|
40
|
+
)
|
|
41
|
+
.forEach((el) => document.head.appendChild(el));
|
|
42
|
+
</script>
|
|
43
|
+
<script
|
|
44
|
+
src="/_next/static/chunks/polyfills-42372ed130431b0a.js"
|
|
45
|
+
nomodule=""
|
|
46
|
+
></script>
|
|
47
|
+
</head>
|
|
48
|
+
<body class="antialiased">
|
|
49
|
+
<div class="min-h-screen bg-white">
|
|
50
|
+
<div
|
|
51
|
+
style="
|
|
52
|
+
font-family:
|
|
53
|
+
system-ui, "Segoe UI", Roboto, Helvetica, Arial,
|
|
54
|
+
sans-serif, "Apple Color Emoji",
|
|
55
|
+
"Segoe UI Emoji";
|
|
56
|
+
height: 100vh;
|
|
57
|
+
text-align: center;
|
|
58
|
+
display: flex;
|
|
59
|
+
flex-direction: column;
|
|
60
|
+
align-items: center;
|
|
61
|
+
justify-content: center;
|
|
62
|
+
"
|
|
63
|
+
>
|
|
64
|
+
<div>
|
|
65
|
+
<style>
|
|
66
|
+
body {
|
|
67
|
+
color: #000;
|
|
68
|
+
background: #fff;
|
|
69
|
+
margin: 0;
|
|
70
|
+
}
|
|
71
|
+
.next-error-h1 {
|
|
72
|
+
border-right: 1px solid rgba(0, 0, 0, 0.3);
|
|
73
|
+
}
|
|
74
|
+
@media (prefers-color-scheme: dark) {
|
|
75
|
+
body {
|
|
76
|
+
color: #fff;
|
|
77
|
+
background: #000;
|
|
78
|
+
}
|
|
79
|
+
.next-error-h1 {
|
|
80
|
+
border-right: 1px solid rgba(255, 255, 255, 0.3);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
</style>
|
|
84
|
+
<h1
|
|
85
|
+
class="next-error-h1"
|
|
86
|
+
style="
|
|
87
|
+
display: inline-block;
|
|
88
|
+
margin: 0 20px 0 0;
|
|
89
|
+
padding: 0 23px 0 0;
|
|
90
|
+
font-size: 24px;
|
|
91
|
+
font-weight: 500;
|
|
92
|
+
vertical-align: top;
|
|
93
|
+
line-height: 49px;
|
|
94
|
+
"
|
|
95
|
+
>
|
|
96
|
+
404
|
|
97
|
+
</h1>
|
|
98
|
+
<div style="display: inline-block">
|
|
99
|
+
<h2
|
|
100
|
+
style="
|
|
101
|
+
font-size: 14px;
|
|
102
|
+
font-weight: 400;
|
|
103
|
+
line-height: 49px;
|
|
104
|
+
margin: 0;
|
|
105
|
+
"
|
|
106
|
+
>
|
|
107
|
+
This page could not be found.
|
|
108
|
+
</h2>
|
|
109
|
+
</div>
|
|
110
|
+
</div>
|
|
111
|
+
</div>
|
|
112
|
+
<!--$--><!--/$--><!--$--><!--/$-->
|
|
113
|
+
</div>
|
|
114
|
+
<script
|
|
115
|
+
src="/_next/static/chunks/webpack-880aef799750a911.js"
|
|
116
|
+
async=""
|
|
117
|
+
></script>
|
|
118
|
+
<script>
|
|
119
|
+
(self.__next_f = self.__next_f || []).push([0]);
|
|
120
|
+
</script>
|
|
121
|
+
<script>
|
|
122
|
+
self.__next_f.push([
|
|
123
|
+
1,
|
|
124
|
+
'1:"$Sreact.fragment"\n2:I[7555,[],""]\n3:I[1295,[],""]\n4:I[9665,[],"MetadataBoundary"]\n6:I[9665,[],"OutletBoundary"]\n9:I[4911,[],"AsyncMetadataOutlet"]\nb:I[9665,[],"ViewportBoundary"]\nd:I[6614,[],""]\n:HL["/_next/static/css/f913f2bf40d109a3.css","style"]\n',
|
|
125
|
+
]);
|
|
126
|
+
</script>
|
|
127
|
+
<script>
|
|
128
|
+
self.__next_f.push([
|
|
129
|
+
1,
|
|
130
|
+
'0:{"P":null,"b":"NQ3kax0_fweCAqnNXt6Ej","p":"","c":["","_not-found"],"i":false,"f":[[["",{"children":["/_not-found",{"children":["__PAGE__",{}]}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/f913f2bf40d109a3.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"pt-BR","children":["$","body",null,{"className":"antialiased","suppressHydrationWarning":true,"children":["$","div",null,{"className":"min-h-screen bg-white","children":["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\\"Segoe UI\\",Roboto,Helvetica,Arial,sans-serif,\\"Apple Color Emoji\\",\\"Segoe UI Emoji\\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}]}]]}],{"children":["/_not-found",["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L3",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":["__PAGE__",["$","$1","c",{"children":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":"$0:f:0:1:1:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:style","children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":"$0:f:0:1:1:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:1:props:style","children":404}],["$","div",null,{"style":"$0:f:0:1:1:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:style","children":["$","h2",null,{"style":"$0:f:0:1:1:props:children:1:props:children:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style","children":"This page could not be found."}]}]]}]}]],["$","$L4",null,{"children":"$L5"}],null,["$","$L6",null,{"children":["$L7","$L8",["$","$L9",null,{"promise":"$@a"}]]}]]}],{},null,false]},null,false]},null,false],["$","$1","h",{"children":[["$","meta",null,{"name":"robots","content":"noindex"}],["$","$1","N0wMh7u83_yG6kPLJ6WNF",{"children":[["$","$Lb",null,{"children":"$Lc"}],null]}],null]}],false]],"m":"$undefined","G":["$d","$undefined"],"s":false,"S":true}\n',
|
|
131
|
+
]);
|
|
132
|
+
</script>
|
|
133
|
+
<script>
|
|
134
|
+
self.__next_f.push([
|
|
135
|
+
1,
|
|
136
|
+
'e:"$Sreact.suspense"\nf:I[4911,[],"AsyncMetadata"]\n5:["$","$e",null,{"fallback":null,"children":["$","$Lf",null,{"promise":"$@10"}]}]\n',
|
|
137
|
+
]);
|
|
138
|
+
</script>
|
|
139
|
+
<script>
|
|
140
|
+
self.__next_f.push([1, "8:null\n"]);
|
|
141
|
+
</script>
|
|
142
|
+
<script>
|
|
143
|
+
self.__next_f.push([
|
|
144
|
+
1,
|
|
145
|
+
'c:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]\n7:null\n',
|
|
146
|
+
]);
|
|
147
|
+
</script>
|
|
148
|
+
<script>
|
|
149
|
+
self.__next_f.push([
|
|
150
|
+
1,
|
|
151
|
+
'10:{"metadata":[["$","title","0",{"children":"DomisPacks Lite - SaaS Starter"}],["$","meta","1",{"name":"description","content":"Next 15 + Tailwind v4 + shadcn + Stripe"}]],"error":null,"digest":"$undefined"}\na:{"metadata":"$10:metadata","error":null,"digest":"$undefined"}\n',
|
|
152
|
+
]);
|
|
153
|
+
</script>
|
|
154
|
+
</body>
|
|
155
|
+
</html>
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
((self.__BUILD_MANIFEST = (function (e, r, t) {
|
|
2
|
+
return {
|
|
3
|
+
__rewrites: { afterFiles: [], beforeFiles: [], fallback: [] },
|
|
4
|
+
__routerFilterStatic: {
|
|
5
|
+
numItems: 3,
|
|
6
|
+
errorRate: 1e-4,
|
|
7
|
+
numBits: 58,
|
|
8
|
+
numHashes: 14,
|
|
9
|
+
bitArray: [
|
|
10
|
+
1,
|
|
11
|
+
1,
|
|
12
|
+
0,
|
|
13
|
+
e,
|
|
14
|
+
0,
|
|
15
|
+
e,
|
|
16
|
+
e,
|
|
17
|
+
r,
|
|
18
|
+
r,
|
|
19
|
+
e,
|
|
20
|
+
r,
|
|
21
|
+
e,
|
|
22
|
+
r,
|
|
23
|
+
e,
|
|
24
|
+
r,
|
|
25
|
+
e,
|
|
26
|
+
r,
|
|
27
|
+
e,
|
|
28
|
+
e,
|
|
29
|
+
e,
|
|
30
|
+
e,
|
|
31
|
+
r,
|
|
32
|
+
e,
|
|
33
|
+
r,
|
|
34
|
+
r,
|
|
35
|
+
r,
|
|
36
|
+
r,
|
|
37
|
+
r,
|
|
38
|
+
e,
|
|
39
|
+
e,
|
|
40
|
+
e,
|
|
41
|
+
e,
|
|
42
|
+
e,
|
|
43
|
+
e,
|
|
44
|
+
e,
|
|
45
|
+
e,
|
|
46
|
+
e,
|
|
47
|
+
r,
|
|
48
|
+
e,
|
|
49
|
+
e,
|
|
50
|
+
r,
|
|
51
|
+
e,
|
|
52
|
+
e,
|
|
53
|
+
r,
|
|
54
|
+
e,
|
|
55
|
+
r,
|
|
56
|
+
r,
|
|
57
|
+
e,
|
|
58
|
+
e,
|
|
59
|
+
e,
|
|
60
|
+
r,
|
|
61
|
+
r,
|
|
62
|
+
r,
|
|
63
|
+
e,
|
|
64
|
+
r,
|
|
65
|
+
r,
|
|
66
|
+
e,
|
|
67
|
+
e,
|
|
68
|
+
],
|
|
69
|
+
},
|
|
70
|
+
__routerFilterDynamic: {
|
|
71
|
+
numItems: r,
|
|
72
|
+
errorRate: 1e-4,
|
|
73
|
+
numBits: r,
|
|
74
|
+
numHashes: null,
|
|
75
|
+
bitArray: [],
|
|
76
|
+
},
|
|
77
|
+
"/_error": ["static/chunks/pages/_error-7688f4c9a69e67c8.js"],
|
|
78
|
+
sortedPages: ["/_app", "/_error"],
|
|
79
|
+
};
|
|
80
|
+
})(1, 0, 1e-4)),
|
|
81
|
+
self.__BUILD_MANIFEST_CB && self.__BUILD_MANIFEST_CB());
|