Hanzo Dev commited on
Commit
caa9064
Β·
1 Parent(s): 3529a39

Fix @hanzo /ui import paths

Browse files
.npmrc ADDED
@@ -0,0 +1 @@
 
 
1
+ legacy-peer-deps=true
README.bak.md ADDED
@@ -0,0 +1,186 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # SaaS Template
2
+
3
+ A modern, production-ready SaaS boilerplate built with Next.js 15, TypeScript, and @hanzo/ui components.
4
+
5
+ ## Features
6
+
7
+ - ✨ Built with **@hanzo/ui** component library (shadcn/ui based)
8
+ - 🎨 **Monochromatic color scheme** for professional aesthetics
9
+ - πŸ“± **Fully responsive** design (mobile, tablet, desktop)
10
+ - πŸŒ™ **Dark mode** support with next-themes
11
+ - πŸš€ **Next.js 15** App Router with React 19
12
+ - πŸ’Ό **Enterprise-ready** components
13
+ - ⚑ **TypeScript strict mode** enabled
14
+ - 🎯 **SEO optimized** with proper meta tags
15
+
16
+ ## Quick Start
17
+
18
+ ### Installation
19
+
20
+ ```bash
21
+ # Install dependencies
22
+ npm install
23
+
24
+ # Start development server
25
+ npm run dev
26
+ ```
27
+
28
+ Open [http://localhost:3000](http://localhost:3000) to view your app.
29
+
30
+ ### Production Build
31
+
32
+ ```bash
33
+ # Create production build
34
+ npm run build
35
+
36
+ # Start production server
37
+ npm start
38
+ ```
39
+
40
+ ## Project Structure
41
+
42
+ ```
43
+ saas/
44
+ β”œβ”€β”€ app/ # Next.js App Router
45
+ β”‚ β”œβ”€β”€ layout.tsx # Root layout
46
+ β”‚ └── page.tsx # Home page
47
+ β”œβ”€β”€ components/ # React components
48
+ β”‚ └── sections/ # Page sections
49
+ β”‚ β”œβ”€β”€ hero.tsx # Hero section
50
+ β”‚ └── features.tsx # Features grid
51
+ β”œβ”€β”€ lib/ # Utilities and config
52
+ β”‚ └── site.ts # Site configuration
53
+ β”œβ”€β”€ public/ # Static assets
54
+ └── package.json # Dependencies
55
+ ```
56
+
57
+ ## Component Usage
58
+
59
+ All components are imported from `@hanzo/ui`:
60
+
61
+ ```tsx
62
+ import { Button, Card, CardContent, CardHeader, CardTitle } from '@hanzo/ui/components'
63
+
64
+ // Use components
65
+ <Button variant="outline" size="lg">
66
+ Click me
67
+ </Button>
68
+
69
+ <Card>
70
+ <CardHeader>
71
+ <CardTitle>Feature Title</CardTitle>
72
+ </CardHeader>
73
+ <CardContent>
74
+ Content goes here
75
+ </CardContent>
76
+ </Card>
77
+ ```
78
+
79
+ ## Customization
80
+
81
+ ### Site Configuration
82
+
83
+ Edit `lib/site.ts` to customize your SaaS details:
84
+
85
+ ```typescript
86
+ export const siteConfig = {
87
+ name: "Your SaaS Name",
88
+ tagline: "Your Tagline",
89
+ description: "Your Description",
90
+ url: "https://your-domain.com",
91
+ features: [
92
+ // Your features
93
+ ]
94
+ }
95
+ ```
96
+
97
+ ### Styling
98
+
99
+ The template uses a monochromatic color scheme with Tailwind CSS:
100
+
101
+ - Primary: Black (`#000000`)
102
+ - Secondary: Gray (`#666666`)
103
+ - Background: White/Dark gray
104
+ - Text: Black/White with gray variants
105
+
106
+ ### Adding Pages
107
+
108
+ Create new pages in the `app/` directory:
109
+
110
+ ```tsx
111
+ // app/pricing/page.tsx
112
+ import { Button, Card } from '@hanzo/ui/components'
113
+
114
+ export default function PricingPage() {
115
+ return (
116
+ <div className="container mx-auto py-12">
117
+ <h1 className="text-4xl font-bold">Pricing</h1>
118
+ {/* Your content */}
119
+ </div>
120
+ )
121
+ }
122
+ ```
123
+
124
+ ## Available Scripts
125
+
126
+ | Command | Description |
127
+ |---------|-------------|
128
+ | `npm run dev` | Start development server |
129
+ | `npm run build` | Build for production |
130
+ | `npm start` | Start production server |
131
+ | `npm run lint` | Run ESLint |
132
+
133
+ ## Environment Variables
134
+
135
+ Create a `.env.local` file for environment-specific variables:
136
+
137
+ ```env
138
+ # Example environment variables
139
+ NEXT_PUBLIC_API_URL=https://api.example.com
140
+ DATABASE_URL=postgresql://...
141
+ ```
142
+
143
+ ## Responsive Design
144
+
145
+ The template is fully responsive with breakpoints:
146
+
147
+ - Mobile: `< 640px`
148
+ - Tablet: `640px - 1024px`
149
+ - Desktop: `> 1024px`
150
+
151
+ Components automatically adapt using Tailwind's responsive prefixes:
152
+
153
+ ```tsx
154
+ <div className="text-sm md:text-base lg:text-lg">
155
+ Responsive text
156
+ </div>
157
+ ```
158
+
159
+ ## TypeScript
160
+
161
+ Strict mode is enabled in `tsconfig.json` for better type safety:
162
+
163
+ ```json
164
+ {
165
+ "compilerOptions": {
166
+ "strict": true,
167
+ "noImplicitAny": true,
168
+ "strictNullChecks": true
169
+ }
170
+ }
171
+ ```
172
+
173
+ ## Browser Support
174
+
175
+ - Chrome (latest)
176
+ - Firefox (latest)
177
+ - Safari (latest)
178
+ - Edge (latest)
179
+
180
+ ## License
181
+
182
+ MIT
183
+
184
+ ## Support
185
+
186
+ For questions or issues, visit [github.com/hanzoai/templates](https://github.com/hanzoai/templates)
components/sections/features.tsx CHANGED
@@ -1,5 +1,5 @@
1
  import { siteConfig } from '@/lib/site'
2
- import { Card, CardContent, CardDescription, CardHeader, CardTitle } from '@hanzo/ui/components'
3
 
4
  export function Features() {
5
  return (
 
1
  import { siteConfig } from '@/lib/site'
2
+ import { Card, CardContent, CardDescription, CardHeader, CardTitle } from '@hanzo/ui'
3
 
4
  export function Features() {
5
  return (
components/sections/hero.tsx CHANGED
@@ -1,5 +1,5 @@
1
  import { siteConfig } from '@/lib/site'
2
- import { Button } from '@hanzo/ui/components'
3
 
4
  export function Hero() {
5
  return (
 
1
  import { siteConfig } from '@/lib/site'
2
+ import { Button } from '@hanzo/ui'
3
 
4
  export function Hero() {
5
  return (