A modern, full-stack web application for Golden Eagle Construction & Remodeling, built with Next.js 15, TypeScript, and Prisma. This application serves as a comprehensive business platform showcasing construction services, managing projects, and handling customer inquiries.
- Next.js 15 - React framework with App Router
- React 19 - Latest React with concurrent features
- TypeScript 5 - Type-safe JavaScript
- Tailwind CSS 4 - Utility-first CSS framework
- GSAP - Professional animation library
- Lenis - Smooth scrolling library
- Prisma 6 - Type-safe database ORM
- MySQL - Primary database
- Next.js API Routes - Server-side API endpoints
- Server Actions - Modern form handling
- AWS S3 - File storage and image hosting
- Vercel - Deployment and hosting platform
- Sentry - Error monitoring and performance tracking
- Upstash Redis - Rate limiting and caching
- ESLint - Code linting and formatting
- PostCSS - CSS processing
- Prisma Studio - Database management interface
GoldenEagle/
βββ src/
β βββ app/ # Next.js App Router
β β βββ (pages)/ # Main page routes
β β βββ (quicklinks)/ # Quick access routes
β β βββ admin/ # Admin dashboard routes
β β βββ api/ # API endpoints
β β βββ write/ # Dynamic content routes
β β βββ contexts/ # React contexts
β β βββ fonts/ # Custom font files
β β βββ globals.css # Global styles
β βββ components/ # Reusable React components
β β βββ admin/ # Admin-specific components
β β βββ ui/ # UI utility components
β βββ constants/ # Application constants
β βββ lib/ # Utility libraries
β β βββ actions.ts # Server actions
β β βββ prisma.ts # Database client
β β βββ s3.ts # AWS S3 utilities
β β βββ rateLimiter.ts # Rate limiting logic
β β βββ utils.ts # Helper functions
β βββ types/ # TypeScript type definitions
βββ prisma/ # Database schema and migrations
βββ public/ # Static assets
β βββ assets/ # Image and video content
β β βββ Backdrops/ # Background images
β β βββ BathRoomRemodel/ # Service-specific content
β β βββ Concrete/ # Service-specific content
β β βββ CustomHome/ # Service-specific content
β β βββ Fences/ # Service-specific content
β β βββ KitchenRemodel/ # Service-specific content
β β βββ Painting/ # Service-specific content
β β βββ Patio/ # Service-specific content
β β βββ Roofing/ # Service-specific content
β βββ Icons/ # SVG icons and logos
βββ configuration files # Various config files
- Project Management - Track construction projects from inquiry to completion
- Customer Management - Handle project tickets and customer communications
- Service Catalog - Showcase different construction services
- Before/After Galleries - Visual project documentation
- Testimonials System - Customer feedback management
- Content Management - Upload and manage images, videos, and content
- Project Tracking - Monitor project status and customer inquiries
- User Management - Admin authentication and role management
- Analytics - Track website performance and user engagement
- Responsive Design - Mobile-first approach
- Lazy Loading - Optimized content loading
- Image Optimization - Automatic image compression and delivery
- SEO Optimized - Search engine friendly structure
- Performance Monitoring - Sentry integration for error tracking
- Node.js 18+
- MySQL database
- AWS S3 bucket
- Vercel account (for deployment)
-
Clone the repository
git clone <repository-url> cd GoldenEagle
-
Install dependencies
npm install
-
Environment Setup Create a
.env.localfile with:DATABASE_URL="mysql://user:password@localhost:3306/goldeneagle" AWS_S3_BUCKET_NAME="your-bucket-name" AWS_ACCESS_KEY_ID="your-access-key" AWS_SECRET_ACCESS_KEY="your-secret-key" AWS_REGION="us-east-2" JWT_SECRET="your-jwt-secret" UPSTASH_REDIS_REST_URL="your-redis-url" UPSTASH_REDIS_REST_TOKEN="your-redis-token" SENTRY_DSN="your-sentry-dsn"
-
Database Setup
npx prisma generate npx prisma db push
-
Run Development Server
npm run dev
-
Open Application Navigate to http://localhost:3000
npm run dev- Start development servernpm run build- Build for productionnpm run start- Start production servernpm run lint- Run ESLintnpx prisma studio- Open database management interface
The application uses a comprehensive database schema with the following main models:
- AuthenticatedUser - Admin user management
- ProjectTicket - Customer project inquiries
- CareerTicket - Job application management
- Image - Media asset management
- Testimonial - Customer feedback system
- Service - Construction service definitions
- Tailwind CSS 4 for utility-first styling
- Custom CSS variables for consistent theming
- Responsive design with mobile-first approach
- GSAP animations for smooth interactions
- Lenis smooth scrolling for enhanced UX
- JWT authentication for admin access
- Rate limiting to prevent abuse
- Input validation with Zod schemas
- Secure file uploads with type checking
- Environment variable protection
- Connect your GitHub repository to Vercel
- Configure environment variables in Vercel dashboard
- Deploy automatically on push to main branch
- Database connection string
- AWS S3 credentials
- JWT secret
- Redis connection details
- Sentry DSN for monitoring
- Sentry for error tracking and performance monitoring
- Vercel Analytics for user behavior insights
- Custom logging for business metrics
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
This project is proprietary software for Golden Eagle Construction & Remodeling.
For technical support or questions about the application, please contact the development team or refer to the internal documentation.
Built with β€οΈ using Next.js 15, TypeScript, and modern web technologies