Professional web development agency website built with modern technologies and best practices.
- Overview
- Features
- Tech Stack
- Quick Start
- Project Structure
- Available Scripts
- Documentation
- Deployment
- Customization
- Contributing
- License
- Support
J&H Digital's website is a modern, high-performance single-page application showcasing web development services. Built with React and Vite, it features smooth animations, responsive design, and optimal performance across all devices.
- β‘οΈ Lightning Fast - Sub-3s load time with 90+ Lighthouse scores
- π± Mobile-First - Responsive design optimized for all screen sizes
- βΏοΈ Accessible - WCAG 2.1 Level AA compliant
- π SEO Optimized - Rich metadata, structured data, and sitemap
- π¨ Modern Design - Clean, professional aesthetic with smooth animations
- π Production Ready - Fully tested and deployment-ready
- Hero Section - Eye-catching introduction with animated CTAs
- About Section - Company story and achievements
- Services Section - Service offerings with detailed descriptions
- Portfolio Section - Project showcase with filtering capabilities
- Testimonials Section - Client reviews with auto-rotating carousel
- Contact Section - Functional contact form with validation
- β‘οΈ Vite - Lightning-fast build tool and dev server
- βοΈ React 18 - Modern React with concurrent features
- π¨ Tailwind CSS - Utility-first CSS with custom design system
- π Framer Motion - Production-ready animations
- π± Responsive Design - Mobile-first approach
- βΏοΈ Accessible - Keyboard navigation, screen reader friendly
- π SEO Optimized - Meta tags, structured data, sitemap
- π― Performance - Optimized for Core Web Vitals
- π Secure - HTTPS, security headers, input validation
- π Analytics Ready - Google Analytics integration support
| Technology | Version | Purpose |
|---|---|---|
| React | 18.2+ | UI framework |
| Vite | 5.0+ | Build tool and dev server |
| Tailwind CSS | 3.4+ | Styling framework |
| Framer Motion | 11.0+ | Animation library |
| Library | Purpose |
|---|---|
| Lucide React | Modern icon library |
| React Hook Form | Form handling and validation |
| React Helmet Async | SEO meta tags management |
| clsx | Conditional className utility |
| Tool | Purpose |
|---|---|
| ESLint | Code linting |
| Prettier | Code formatting |
| PostCSS | CSS processing |
| Autoprefixer | CSS vendor prefixes |
- Node.js 18.x or higher
- npm 9.x or higher
- Git (latest version)
- Clone the repository
git clone https://github.com/jhdigital/website.git
cd website- Install dependencies
npm install- Set up environment variables
cp .env.example .env
# Edit .env with your configuration- Start development server
npm run dev- Open in browser
Navigate to http://localhost:3000
After installation, customize the site:
- Update company information in
src/data/siteConfig.js - Replace placeholder content in section components
- Add your portfolio projects to
src/data/projects.js - Add client testimonials to
src/data/testimonials.js - Customize colors in
tailwind.config.js
See CUSTOMIZATION_GUIDE.md for detailed instructions.
jh-digital-website/
βββ public/ # Static assets
β βββ manifest.json # PWA manifest
β βββ robots.txt # SEO robots file
β βββ sitemap.xml # SEO sitemap
β
βββ src/
β βββ assets/ # Images and media
β β βββ images/ # Image files
β β
β βββ components/ # React components
β β βββ common/ # Shared components
β β β βββ BackToTop.jsx
β β β βββ LazyImage.jsx
β β β βββ Loading.jsx
β β β βββ ScrollProgress.jsx
β β β βββ SEO.jsx
β β β
β β βββ layout/ # Layout components
β β β βββ Header.jsx
β β β βββ Footer.jsx
β β β
β β βββ sections/ # Page sections
β β β βββ Hero.jsx
β β β βββ About.jsx
β β β βββ Services.jsx
β β β βββ Portfolio.jsx
β β β βββ Testimonials.jsx
β β β βββ Contact.jsx
β β β
β β βββ ui/ # Reusable UI components
β β βββ Button.jsx
β β βββ Card.jsx
β β βββ Input.jsx
β β βββ ProjectCard.jsx
β β βββ Textarea.jsx
β β
β βββ data/ # Static content
β β βββ projects.js # Portfolio projects
β β βββ siteConfig.js # Site configuration
β β βββ testimonials.js # Client testimonials
β β
β βββ hooks/ # Custom React hooks
β β βββ useInView.js # Intersection observer
β β βββ useReducedMotion.js
β β βββ useSmoothScroll.js
β β
β βββ styles/ # Global styles
β β βββ index.css # Main stylesheet
β β
β βββ utils/ # Utility functions
β β βββ cn.js # className utility
β β
β βββ App.jsx # Main app component
β βββ main.jsx # Entry point
β
βββ .env.example # Environment variables template
βββ .eslintrc.cjs # ESLint configuration
βββ .gitignore # Git ignore rules
βββ index.html # HTML template
βββ jsconfig.json # JavaScript configuration
βββ package.json # Dependencies and scripts
βββ postcss.config.js # PostCSS configuration
βββ tailwind.config.js # Tailwind configuration
βββ vite.config.js # Vite configuration
β
βββ ARCHITECTURE.md # System architecture
βββ CUSTOMIZATION_GUIDE.md # Customization instructions
βββ DEPLOYMENT_GUIDE.md # Deployment procedures
βββ MAINTENANCE_GUIDE.md # Maintenance procedures
βββ TESTING_CHECKLIST.md # QA checklist
βββ README.md # This file
# Start development server (http://localhost:3000)
npm run dev
# Build for production
npm run build
# Preview production build (http://localhost:4173)
npm run preview# Run ESLint
npm run lint
# Format code with Prettier
npm run format# Analyze bundle size
npm run build
npx vite-bundle-visualizerComprehensive documentation is available for all aspects of the project:
- ARCHITECTURE.md - System architecture and technical design
- Component hierarchy
- Design system specifications
- Performance strategies
- SEO implementation
- DEPLOYMENT_GUIDE.md - Complete deployment instructions
- Prerequisites and setup
- Environment configuration
- Deployment to Vercel, Netlify, GitHub Pages
- Post-deployment checklist
- Troubleshooting
- CUSTOMIZATION_GUIDE.md - Branding and content updates
- Updating company information
- Changing colors and fonts
- Managing content (portfolio, testimonials)
- Adding new features
- Image optimization
- TESTING_CHECKLIST.md - Comprehensive QA procedures
- Functional testing
- Responsive design testing
- Cross-browser testing
- Performance testing
- SEO and accessibility testing
- MAINTENANCE_GUIDE.md - Ongoing maintenance procedures
- Regular updates
- Performance monitoring
- Security maintenance
- Backup procedures
- Troubleshooting
- Click the button above
- Connect your GitHub account
- Configure environment variables
- Deploy!
- Click the button above
- Connect your GitHub account
- Configure build settings
- Deploy!
See DEPLOYMENT_GUIDE.md for detailed instructions on:
- Local development setup
- Environment configuration
- Building for production
- Deploying to various platforms
- Custom domain setup
- Post-deployment verification
-
Update Company Information
Edit
src/data/siteConfig.js:export const siteConfig = { name: 'Your Company Name', tagline: 'Your Tagline', email: 'your@email.com', // ... more settings };
-
Change Colors
Edit
tailwind.config.js:colors: { primary: { 500: '#your-color', // Main brand color }, }
-
Add Portfolio Projects
Edit
src/data/projects.js:export const projects = [ { title: 'Your Project', description: 'Project description', image: '/images/project.jpg', // ... more details }, ];
-
Update Contact Form
Configure form endpoint in
.env:VITE_FORM_ENDPOINT=https://formspree.io/f/your-form-id
For detailed customization instructions, see CUSTOMIZATION_GUIDE.md.
We welcome contributions! Here's how you can help:
- Fork the repository
- Create a feature branch
git checkout -b feature/amazing-feature
- Make your changes
- Test thoroughly
npm run build npm run preview
- Commit your changes
git commit -m "feat: add amazing feature" - Push to your fork
git push origin feature/amazing-feature
- Open a Pull Request
We follow Conventional Commits:
feat:- New featurefix:- Bug fixdocs:- Documentation changesstyle:- Code style changes (formatting, etc.)refactor:- Code refactoringperf:- Performance improvementstest:- Adding or updating testschore:- Maintenance tasks
- Follow ESLint rules
- Use Prettier for formatting
- Write meaningful commit messages
- Add comments for complex logic
- Update documentation as needed
Copyright Β© 2024 J&H Digital. All rights reserved.
This project is proprietary software. Unauthorized copying, modification, distribution, or use of this software, via any medium, is strictly prohibited.
For licensing inquiries, contact: hello@jhdigital.com
- Documentation: Check the guides in this repository
- Issues: GitHub Issues
- Email: dev@jhdigital.com
- Website: jhdigital.com
When reporting bugs, please include:
- Description of the issue
- Steps to reproduce
- Expected behavior
- Actual behavior
- Screenshots (if applicable)
- Browser and OS information
We welcome feature requests! Please:
- Check existing issues first
- Describe the feature clearly
- Explain the use case
- Provide examples if possible
- React - UI framework
- Vite - Build tool
- Tailwind CSS - Styling
- Framer Motion - Animations
Design inspiration from:
Version: 1.0.0
Status: Production Ready
Last Updated: 2024-01-24
- β‘οΈ Lighthouse Performance: 95+
- βΏοΈ Lighthouse Accessibility: 98+
- π― Lighthouse Best Practices: 95+
- π Lighthouse SEO: 100
- β Chrome (latest)
- β Firefox (latest)
- β Safari (latest)
- β Edge (latest)
- β Mobile browsers (iOS Safari, Chrome Mobile)
- Blog section with CMS integration
- Dark mode toggle
- Multi-language support
- Advanced portfolio filtering
- Case study pages
- Team member profiles
- Client portal
- Live chat integration
- Progressive Web App (PWA)
- Offline functionality
- Advanced animations
- 3D elements
- Video backgrounds
- A/B testing framework
J&H Digital
- Website: jhdigital.com
- Email: hello@jhdigital.com
- Phone: +1 (555) 123-4567
- Twitter: @jhdigital
- LinkedIn: J&H Digital
- GitHub: @jhdigital
If you find this project helpful, please consider:
- βοΈ Starring the repository
- π Reporting bugs
- π‘ Suggesting features
- π Improving documentation
- π Contributing code
Built with β€οΈ by J&H Digital
Website β’ Documentation β’ Support