scalesite/lib/mock-data/projects.ts
bast1qn 98552163a8 Initial ScaleSite Next.js implementation
Complete frontend implementation with:
- Next.js 16 with App Router and TypeScript
- Tailwind CSS v4 with custom violet theme
- shadcn/ui components with Lucide React icons
- Landing page with hero, services, pricing, testimonials, FAQ
- Service selection page with toggle
- Login/Register pages with social auth UI
- Multi-step checkout flow
- Client dashboard with stats, projects, support tickets
- Billing page with subscription, payment methods, invoices
- All mock data and TypeScript types

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-02-01 21:42:48 +01:00

69 lines
2.0 KiB
TypeScript

import { Project, User } from '../types'
// Mock current user
export const mockCurrentUser: User = {
id: 'user-1',
email: 'alex@bakery.com',
name: 'Alex Johnson',
avatar: 'https://lh3.googleusercontent.com/a/default-user',
role: 'client',
}
export const mockProjects: Project[] = [
{
id: 'proj-1',
userId: 'user-1',
title: 'Bakery Website Redesign',
description: 'Modernizing the online presence with e-commerce integration for custom cake orders.',
type: 'web-design',
tier: 'growth',
status: 'development',
progress: 75,
thumbnail: 'https://images.unsplash.com/photo-1517433367423-c7e5b0f35086?w=400',
stages: [
{ name: 'Discovery', completed: true },
{ name: 'Design', completed: true },
{ name: 'Development', completed: false },
{ name: 'Content', completed: false },
],
createdAt: new Date('2024-10-01'),
updatedAt: new Date('2024-10-15'),
estimatedDelivery: new Date('2024-10-20'),
},
{
id: 'proj-2',
userId: 'user-1',
title: 'Customer Service Bot',
description: 'Training the model on your FAQs to handle initial customer inquiries automatically.',
type: 'ai-automation',
tier: 'growth',
status: 'design',
progress: 20,
thumbnail: 'https://images.unsplash.com/photo-1677442136019-21780ecad995?w=400',
stages: [
{ name: 'Setup', completed: true },
{ name: 'Training', completed: false },
{ name: 'Testing', completed: false },
],
createdAt: new Date('2024-10-10'),
updatedAt: new Date('2024-10-14'),
estimatedDelivery: new Date('2024-10-25'),
},
]
export function getProjectsByUserId(userId: string): Project[] {
return mockProjects.filter(p => p.userId === userId)
}
export function getProjectById(id: string): Project | undefined {
return mockProjects.find(p => p.id === id)
}
export function getActiveProjects(): Project[] {
return mockProjects.filter(p => p.status !== 'completed')
}
export function getCompletedProjects(): Project[] {
return mockProjects.filter(p => p.status === 'completed')
}