A modern, professional e-commerce platform for premium wild game product sourcing, with full traceability and sustainability at its core.
Site can be viewed from either URL. Redirecting to 'roamingfree.org'.
coming soon --> https://www.lincolnshiregame.co.uk
The Lincolnshire Game Company website is a TypeScript/React application designed to showcase and facilitate the distribution of responsibly sourced, fully traceable wild game products. The platform emphasizes heritage, quality, and ethical sourcing while providing customers with comprehensive product information and seamless ordering capabilities.
- Product Catalog – Browse, filter, and search premium game products across multiple categories (Feedlot, Standard, Wagyu, Other)
- Shopping Cart – Add products to cart with persistent state management
- Detailed Product Pages – Rich product information with animations and enhanced visuals
- Contact Management – EmailJS-integrated contact form with order and inquiry submissions
- User Authentication – Context-based auth system for secure customer interactions
- Professional Aesthetic – Clean, elegant design inspired by Willo Game (Shopify-style)
- Responsive Design – Mobile-first approach with comprehensive breakpoints (480px, 768px, 1024px+)
- Smooth Animations – Subtle CSS animations (fade-in, slide-up) for polished user experience
- Accessibility – WCAG 2.1 Level AA compliance with semantic HTML and keyboard navigation
- Dark Theme – Premium dark backgrounds with gold accent colors (#F1B647)
- Home – Hero section and featured products
- Shop – Product catalog with filtering and category selection
- Product Detail – Individual product showcase with animations and detailed information
- About Us – Heritage, standards, and company credentials
- Awards – Industry recognition and certifications
- Partnerships – Strategic business partnerships and sponsorships
- Sponsors – Event sponsorships and community involvement
- Blogs – Articles on game products and sustainability
- Contact – Customer inquiries and order requests
- React 18+ with TypeScript (strict mode)
- React Router – Client-side navigation
- CSS3 – Component-scoped styling with CSS custom properties for theming
- EmailJS – Email form submissions
- Context API – AuthContext, CartContext, LSModalContext
- Custom Hooks – useAuth, useLSModal
- Create React App – Development and build pipeline
- CSS Variables – Dynamic theming system
- SVG Icons – Scalable icon assets
- Node.js 16+
- npm or yarn
# Install dependencies
npm install
# Set up environment variables
# Create .env file with:
REACT_APP_EMAILJS_SERVICE_ID=your_service_id
REACT_APP_EMAILJS_PUBLIC_KEY=your_public_key
REACT_APP_EMAILJS_TEMPLATE_ID=your_template_id# Start development server (localhost:3000)
npm start
# Run tests
npm test
# Build for production
npm run buildsrc/
├── components/
│ ├── common/ # Shared components (Navigation, Footer, Containers)
│ └── layout/ # Layout components
├── views/ # Page components
│ ├── home/
│ ├── shop/
│ ├── product/
│ ├── aboutUs/
│ ├── awards/
│ ├── partnerships/
│ ├── sponsors/
│ ├── blogs/
│ └── contact/
├── contexts/ # Context providers (Auth, Cart, Modal)
├── hooks/ # Custom React hooks
├── services/ # API and data services
├── styles/ # Global styles and themes
├── utils/ # Helper functions
└── interfaces/ # TypeScript type definitions
- Strict mode enabled
- Proper typing for all function parameters and returns
- Interfaces for component props and state
- Functional components only (no class components)
- Custom hooks for shared logic
- Props typed with interfaces
- Context API for state management
- BEM naming convention:
.block__element--modifier - CSS custom properties for theming
- Mobile-first responsive approach
- Color contrast ≥ 4.5:1 for accessibility
- Unit tests for utilities and hooks (targeting 80%+ coverage)
- Integration tests for critical components
- Test accessibility and keyboard navigation
- Primary Background: #0B0B0B
- Accent Gold: #F1B647
- White (100%): #FFFFFF
- White (50% opacity): rgba(255, 255, 255, 0.5)
- Responsive Scaling: clamp() functions for fluid text sizing
- Font Weights: 300 (light), 600 (semibold), 700 (bold)
- Line Height: 1.6-1.8 for readability
- System: CSS custom properties (--space-xs through --space-3xl)
- Breakpoints: 480px, 768px, 1024px
- Duration: 0.3s-0.8s
- Easing: cubic-bezier(0.34, 1.56, 0.64, 1) for smooth transitions
- Keyframes: fadeInUp, slideUp, float, subtleGradientShift
- Review specification in
/docs/ - Check existing component patterns
- Understand data models and services
- Code following DEVELOPMENT_STANDARDS
- Test against acceptance criteria
- Submit PR with clear description
<type>(<scope>): <subject>
<body>
Spec: docs/[DOCUMENT].md#Section
Example:
feat(Shop): add product filtering
Spec: docs/FEATURE_SPECIFICATIONS.md#Section-2
npm run buildBuilds optimized bundle in /build/ directory ready for static hosting.
Ensure these are configured in production:
REACT_APP_EMAILJS_SERVICE_IDREACT_APP_EMAILJS_PUBLIC_KEYREACT_APP_EMAILJS_TEMPLATE_ID
- Chrome/Edge (latest)
- Firefox (latest)
- Safari (latest)
- Mobile browsers (iOS Safari, Chrome Mobile)
- WCAG 2.1 Level AA compliance
- Semantic HTML structure
- ARIA labels for interactive elements
- Keyboard navigation support
- Color contrast validation
- Code splitting with React Router
- Lazy loading for images
- Optimized CSS and JavaScript bundles
- Web Vitals monitoring
- Create feature branch from
main - Follow code standards (TypeScript strict, ESLint, Prettier)
- Test thoroughly including accessibility
- Submit PR with specification reference
- Ensure CI/CD passes before merge
© 2024 Lincolnshire Game Company. All rights reserved.
Lincolnshire Game Company
Email: orders@lincolnshiregame.co.uk
Phone: (+44) 1205 822882
Website: www.lincolnshiregame.co.uk
Last Updated: April 2024
Version: 1.0.0
