Access the deployed InnoHealth Africa Technology web app here: https://innohealth.tech/
A production-ready React + TypeScript web application that demonstrates modern frontend practices, performance optimization, and thoughtful UX design. Built to transform healthcare delivery in underserved communities through technology, data, and innovation.
InnoHealth Africa Technology Ltd is a registered social enterprise in Nigeria, focused on improving maternal and child health outcomes using digital tools, data systems, and capacity building. The web app showcases our mission, services, team, and impact, and provides a seamless, branded user experience across devices.
- Modern, Responsive UI: Built with React, TypeScript, Vite, and Tailwind CSS for fast, accessible, and mobile-first experiences.
- Type-Safe Development: Full TypeScript coverage ensures maintainability and catches errors at compile time.
- Branded Design System: Centralized design tokens (colors, fonts, spacing, shadows) for visual consistency across all components.
- Optimized Performance: Strategic preloading of critical assets, SPA route handling, and minimal re-renders.
- Animated, Interactive Sections: Framer Motion for smooth hero slides and card interactions; CSS keyframes for lightweight effects.
- Form Submission Pipeline: Robust form handling with async validation and Formspree backend integration for email delivery.
- About Us Modal: Organized modal with clear sections, values, vision, and mission—accessible from any page.
- Team Carousel: Responsive, interactive carousel showcasing team members with smooth horizontal scroll.
- Fixed Navigation Bar: Context-aware navigation with scroll detection and modal triggers for seamless UX.
- Mobile/Desktop Optimization: Carefully tailored layouts and interactions ensure polished experience across all device sizes.
- Production Deployment: Netlify-ready with SPA fallback redirects, ensuring deep-link refresh stability in production.
- Clean, Maintainable Code: Organized component structure, meaningful comments, and zero Figma/Windows artifacts.
src/
├── components/
│ ├── sections/ # Page sections: Hero, Services, Team, About, Footer, etc.
│ └── ui/ # Reusable primitives: Button, Dropdown, ImageWithFallback
├── App.tsx # Main app router and section orchestrator
├── main.tsx # React entry point with UX loader
├── index.css # Global styles and Tailwind directives
└── brand.css # Brand-specific design tokens and custom utilities
public/
├── _redirects # SPA fallback rule for Netlify (essential for deep-link stability)
├── book-appointment.html # Static fallback form for accessibility
└── images/ # Organized asset directories (branding, hero, team, partners)
Configuration files:
├── vite.config.ts # Build config with SWC transpilation and path aliases
├── tailwind.config.js # Design system extension with brand colors/fonts/shadows
├── postcss.config.js # Tailwind CSS pipeline
├── netlify.toml # Deployment config with Node version pinning
└── package.json # Dependencies and build scripts
Prerequisites: Node.js 20+, npm
Installation & Development:
# Install dependencies
npm install
# Start dev server (http://localhost:3000 with hot reload)
npm run dev
# Build for production (output to build/ directory)
npm run buildDeployment:
The app is deployed on Netlify. Each push to main triggers an automatic build and deployment via the configuration in netlify.toml.
�️ Technical Architecture & Decisions
- React 18 + TypeScript: Component-based architecture with type safety ensures maintainability and catches errors early.
- Vite: Lightning-fast dev server and optimized production builds using SWC for JSX transpilation.
- Tailwind CSS: Utility-first approach with centralized design tokens via
tailwind.config.jsfor consistent branding. - Framer Motion: Declarative animations for hero slides and interactive sections without performance overhead.
- Asset Preloading: Critical images and fonts are preloaded in
index.htmlto reduce first-paint latency. - UX Loader: 3.5-second minimum loader ensures smooth perception during app bootstrap.
- SPA Routing:
_redirectsfallback rule enables client-side routing in production without 404 errors on deep-link refresh. - Component Code-Splitting: Lazy section rendering and minimal dependencies reduce bundle size.
- Async Form Submission: React forms use
FormDataandfetchwith state transitions for real-time user feedback. - Formspree Integration: Third-party email delivery service ensures reliable form submission without custom backend.
- Fallback Static Form:
public/book-appointment.htmlprovides accessibility when JavaScript is disabled.
- Centralized Tokens: Brand colors, typography, spacing, and shadows defined in
tailwind.config.jsandbrand.css. - Responsive Design: Mobile-first Tailwind classes ensure pixel-perfect layouts from small phones to large desktops.
- Semantic HTML: Accessible markup with proper heading hierarchy and ARIA attributes where needed.
- Component Composition: Organized section components into isolated, reusable parts for maintainability.
- TypeScript Benefits: Type annotations caught bugs early and improved developer confidence during refactoring.
- Styling at Scale: Centralized design tokens prevented style drift and made brand updates trivial.
- Production Readiness: Netlify deployment, SPA routing fallback, and asset optimization were essential for a stable production site.
- Performance Matters: Preloading and minimal animation overhead significantly improved perceived performance on real networks.
- ✅ Clean component structure with separation of concerns
- ✅ Meaningful code comments explaining design decisions
- ✅ Professional git commit messages following conventional commits
- ✅ Environment parity between dev and production via Netlify config
- ✅ Responsive design tested across device sizes
- ✅ Accessibility first: keyboard navigation, semantic HTML, alt text
InnoHealth Africa Technology Ltd is a registered social enterprise in Nigeria, focused on improving maternal and child health outcomes through:
- Digital health tools and telemedicine access
- Data-driven public health solutions
- Capacity building for health workers and communities
- Sustainable partnerships with governments, NGOs, and health facilities
Our hybrid model combines revenue-generating services with donor-funded programmes to ensure impact at scale.
Explore our leadership and programme team via the interactive Team Carousel on the live site.
We collaborate with governments, NGOs, health facilities, and development partners to deliver scalable, inclusive, and locally relevant solutions.
This project is proprietary to InnoHealth Africa Technology. For partnership or contribution inquiries, please contact the team via the website.
All rights reserved. Contact InnoHealth Africa Technology for usage or distribution permissions.