create-frootkit 1.1.3 → 1.2.0
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/README.md +50 -16
- package/dist/addons/database.d.ts +3 -2
- package/dist/addons/database.d.ts.map +1 -1
- package/dist/addons/database.js +475 -14
- package/dist/addons/database.js.map +1 -1
- package/dist/index.js +93 -18
- package/dist/index.js.map +1 -1
- package/dist/scaffold.d.ts +1 -0
- package/dist/scaffold.d.ts.map +1 -1
- package/dist/scaffold.js +3 -3
- package/dist/scaffold.js.map +1 -1
- package/dist/template.d.ts +3 -5
- package/dist/template.d.ts.map +1 -1
- package/dist/template.js +47 -403
- package/dist/template.js.map +1 -1
- package/dist/templates/auth.d.ts +3 -0
- package/dist/templates/auth.d.ts.map +1 -0
- package/dist/templates/auth.js +487 -0
- package/dist/templates/auth.js.map +1 -0
- package/dist/templates/blog.d.ts +3 -0
- package/dist/templates/blog.d.ts.map +1 -0
- package/dist/templates/blog.js +369 -0
- package/dist/templates/blog.js.map +1 -0
- package/dist/templates/common.d.ts +5 -0
- package/dist/templates/common.d.ts.map +1 -0
- package/dist/templates/common.js +116 -0
- package/dist/templates/common.js.map +1 -0
- package/dist/templates/ecommerce.d.ts +3 -0
- package/dist/templates/ecommerce.d.ts.map +1 -0
- package/dist/templates/ecommerce.js +474 -0
- package/dist/templates/ecommerce.js.map +1 -0
- package/dist/templates/empty.d.ts +3 -0
- package/dist/templates/empty.d.ts.map +1 -0
- package/dist/templates/empty.js +85 -0
- package/dist/templates/empty.js.map +1 -0
- package/dist/templates/index.d.ts +16 -0
- package/dist/templates/index.d.ts.map +1 -0
- package/dist/templates/index.js +32 -0
- package/dist/templates/index.js.map +1 -0
- package/dist/templates/starter.d.ts +3 -0
- package/dist/templates/starter.d.ts.map +1 -0
- package/dist/templates/starter.js +308 -0
- package/dist/templates/starter.js.map +1 -0
- package/dist/templates/types.d.ts +13 -0
- package/dist/templates/types.d.ts.map +1 -0
- package/dist/templates/types.js +5 -0
- package/dist/templates/types.js.map +1 -0
- package/package.json +2 -1
- package/templates/auth/README.md +11 -0
- package/templates/auth/package.json +24 -0
- package/templates/auth/src/app/api/auth/route.ts +148 -0
- package/templates/auth/src/app/dashboard/layout.tsx +34 -0
- package/templates/auth/src/app/dashboard/page.tsx +72 -0
- package/templates/auth/src/app/layout.tsx +31 -0
- package/templates/auth/src/app/login/page.tsx +18 -0
- package/templates/auth/src/app/page.tsx +60 -0
- package/templates/auth/src/app/signup/page.tsx +18 -0
- package/templates/auth/src/components/AuthForm.tsx +77 -0
- package/templates/auth/src/components/DashboardNav.tsx +51 -0
- package/templates/auth/src/components/MetricCard.tsx +26 -0
- package/templates/auth/src/components/Navbar.tsx +29 -0
- package/templates/auth/src/lib/auth.ts +145 -0
- package/templates/auth/src/styles.css +19 -0
- package/templates/auth/tsconfig.json +13 -0
- package/templates/blog/README.md +11 -0
- package/templates/blog/package.json +24 -0
- package/templates/blog/src/app/api/posts/route.ts +36 -0
- package/templates/blog/src/app/blog/[slug]/page.tsx +74 -0
- package/templates/blog/src/app/layout.tsx +31 -0
- package/templates/blog/src/app/page.tsx +44 -0
- package/templates/blog/src/components/Footer.tsx +16 -0
- package/templates/blog/src/components/Navbar.tsx +31 -0
- package/templates/blog/src/components/Newsletter.tsx +32 -0
- package/templates/blog/src/components/PostCard.tsx +47 -0
- package/templates/blog/src/data/posts.ts +75 -0
- package/templates/blog/src/styles.css +19 -0
- package/templates/blog/tsconfig.json +13 -0
- package/templates/ecommerce/README.md +11 -0
- package/templates/ecommerce/package.json +24 -0
- package/templates/ecommerce/src/app/api/checkout/route.ts +19 -0
- package/templates/ecommerce/src/app/api/products/route.ts +28 -0
- package/templates/ecommerce/src/app/cart/page.tsx +22 -0
- package/templates/ecommerce/src/app/layout.tsx +31 -0
- package/templates/ecommerce/src/app/page.tsx +59 -0
- package/templates/ecommerce/src/app/products/[id]/page.tsx +88 -0
- package/templates/ecommerce/src/components/CartDrawer.tsx +64 -0
- package/templates/ecommerce/src/components/Footer.tsx +16 -0
- package/templates/ecommerce/src/components/Navbar.tsx +32 -0
- package/templates/ecommerce/src/components/ProductCard.tsx +52 -0
- package/templates/ecommerce/src/data/products.ts +87 -0
- package/templates/ecommerce/src/styles.css +19 -0
- package/templates/ecommerce/tsconfig.json +13 -0
- package/templates/empty/README.md +10 -0
- package/templates/empty/package.json +24 -0
- package/templates/empty/src/app/layout.tsx +29 -0
- package/templates/empty/src/app/page.tsx +38 -0
- package/templates/empty/src/styles.css +19 -0
- package/templates/empty/tsconfig.json +13 -0
- package/templates/starter/README.md +22 -0
- package/templates/starter/package.json +24 -0
- package/templates/starter/src/app/api/health/route.ts +23 -0
- package/templates/starter/src/app/layout.tsx +31 -0
- package/templates/starter/src/app/page.tsx +122 -0
- package/templates/starter/src/components/FeatureCard.tsx +25 -0
- package/templates/starter/src/components/Footer.tsx +16 -0
- package/templates/starter/src/components/Header.tsx +45 -0
- package/templates/starter/src/components/TerminalPreview.tsx +56 -0
- package/templates/starter/src/styles.css +19 -0
- package/templates/starter/tsconfig.json +13 -0
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
export function TerminalPreview() {
|
|
2
|
+
return (
|
|
3
|
+
<div class="grid grid-cols-1 md:grid-cols-2 gap-6 max-w-4xl mx-auto w-full mb-16">
|
|
4
|
+
<div class="rounded-2xl border border-slate-800 bg-[#070b14] p-6 shadow-xl relative overflow-hidden group">
|
|
5
|
+
<div class="flex items-center justify-between mb-4 pb-3 border-b border-slate-800/80">
|
|
6
|
+
<div class="flex items-center gap-2">
|
|
7
|
+
<span class="w-3 h-3 rounded-full bg-rose-500/80" />
|
|
8
|
+
<span class="w-3 h-3 rounded-full bg-amber-500/80" />
|
|
9
|
+
<span class="w-3 h-3 rounded-full bg-emerald-500/80" />
|
|
10
|
+
<span class="ml-2 text-xs font-mono text-slate-400">src/app/page.tsx</span>
|
|
11
|
+
</div>
|
|
12
|
+
<span class="text-[11px] font-mono text-emerald-400/90 font-medium bg-emerald-950/60 px-2 py-0.5 rounded border border-emerald-800/40">
|
|
13
|
+
Preact SSR
|
|
14
|
+
</span>
|
|
15
|
+
</div>
|
|
16
|
+
<div class="font-mono text-xs sm:text-sm text-slate-300 space-y-2 select-all leading-relaxed">
|
|
17
|
+
<p><span class="text-purple-400 font-semibold">export default function</span> <span class="text-blue-400">HomePage</span>() {</p>
|
|
18
|
+
<p class="pl-4"><span class="text-purple-400 font-semibold">return</span> (</p>
|
|
19
|
+
<p class="pl-8 text-emerald-300"><<span class="text-blue-300 font-semibold">main</span> <span class="text-teal-400">class</span>=<span class="text-amber-300">"min-h-screen p-8"</span>></p>
|
|
20
|
+
<p class="pl-12 text-slate-100"><<span class="text-blue-300 font-semibold">h1</span>>Hello FrootKit!</<span class="text-blue-300 font-semibold">h1</span>></p>
|
|
21
|
+
<p class="pl-8 text-emerald-300"></<span class="text-blue-300 font-semibold">main</span>></p>
|
|
22
|
+
<p class="pl-4">);</p>
|
|
23
|
+
<p>}</p>
|
|
24
|
+
</div>
|
|
25
|
+
</div>
|
|
26
|
+
|
|
27
|
+
<div class="rounded-2xl border border-slate-800 bg-[#070b14] p-6 shadow-xl relative overflow-hidden group">
|
|
28
|
+
<div class="flex items-center justify-between mb-4 pb-3 border-b border-slate-800/80">
|
|
29
|
+
<div class="flex items-center gap-2">
|
|
30
|
+
<span class="w-3 h-3 rounded-full bg-rose-500/80" />
|
|
31
|
+
<span class="w-3 h-3 rounded-full bg-amber-500/80" />
|
|
32
|
+
<span class="w-3 h-3 rounded-full bg-emerald-500/80" />
|
|
33
|
+
<span class="ml-2 text-xs font-mono text-slate-400">terminal</span>
|
|
34
|
+
</div>
|
|
35
|
+
<span class="text-[11px] font-mono text-cyan-400/90 font-medium bg-cyan-950/60 px-2 py-0.5 rounded border border-cyan-800/40">
|
|
36
|
+
CLI
|
|
37
|
+
</span>
|
|
38
|
+
</div>
|
|
39
|
+
<div class="font-mono text-xs sm:text-sm text-slate-300 space-y-2.5 leading-relaxed">
|
|
40
|
+
<p class="text-slate-500"># Start lightning-fast dev server</p>
|
|
41
|
+
<p class="text-emerald-400 font-semibold flex items-center gap-2">
|
|
42
|
+
<span class="text-slate-500 select-none">$</span> frootkit dev
|
|
43
|
+
</p>
|
|
44
|
+
<p class="text-slate-500 pt-1"># Build production static export + API routes</p>
|
|
45
|
+
<p class="text-cyan-400 font-semibold flex items-center gap-2">
|
|
46
|
+
<span class="text-slate-500 select-none">$</span> frootkit build
|
|
47
|
+
</p>
|
|
48
|
+
<p class="text-slate-500 pt-1"># Test the API endpoint</p>
|
|
49
|
+
<p class="text-amber-400 font-semibold flex items-center gap-2">
|
|
50
|
+
<span class="text-slate-500 select-none">$</span> curl http://localhost:3000/api/health
|
|
51
|
+
</p>
|
|
52
|
+
</div>
|
|
53
|
+
</div>
|
|
54
|
+
</div>
|
|
55
|
+
);
|
|
56
|
+
}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
@import "tailwindcss";
|
|
2
|
+
|
|
3
|
+
@theme {
|
|
4
|
+
--color-brand-50: #ecfdf5;
|
|
5
|
+
--color-brand-100: #d1fae5;
|
|
6
|
+
--color-brand-200: #a7f3d0;
|
|
7
|
+
--color-brand-300: #6ee7b7;
|
|
8
|
+
--color-brand-400: #34d399;
|
|
9
|
+
--color-brand-500: #10b981;
|
|
10
|
+
--color-brand-600: #059669;
|
|
11
|
+
--color-brand-700: #047857;
|
|
12
|
+
--color-brand-800: #065f46;
|
|
13
|
+
--color-brand-900: #064e3b;
|
|
14
|
+
--color-brand-950: #022c22;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
:root {
|
|
18
|
+
color-scheme: dark;
|
|
19
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
{
|
|
2
|
+
"compilerOptions": {
|
|
3
|
+
"target": "ES2024",
|
|
4
|
+
"module": "NodeNext",
|
|
5
|
+
"moduleResolution": "NodeNext",
|
|
6
|
+
"jsx": "react-jsx",
|
|
7
|
+
"jsxImportSource": "preact",
|
|
8
|
+
"strict": true,
|
|
9
|
+
"skipLibCheck": true,
|
|
10
|
+
"noEmit": true
|
|
11
|
+
},
|
|
12
|
+
"include": ["src/**/*"]
|
|
13
|
+
}
|