๐ CountryApp - Modern Country Explorer
A cutting-edge web application built with the latest React technologies to explore countries worldwide. This project showcases modern web development practices and powerful features for an exceptional user experience.

๐ ๏ธ Tech Stack
Core Technologies
- โ๏ธ React 19 - Latest version with enhanced features
- ๐ฃ๏ธ React Router v7 - For seamless client-side routing
- ๐ฑ TypeScript - For type-safe development
- ๐จ TailwindCSS - Utility-first CSS framework
- ๐ SWR - For efficient data fetching and caching
- โก Vite - Next-generation frontend tooling
- ๐ฏ TypeScript - Static type checking
- ๐จ PostCSS - CSS processing
- ๐ง Autoprefixer - CSS compatibility
- ๐ฆ React Icons - Comprehensive icon library
โจ Key Features
- ๐ Advanced country search functionality
- ๐ Continental filtering system
- ๐ญ Dynamic theme switching (Dark/Light mode)
- ๐ฑ Fully responsive design
- โก Lightning-fast performance
- ๐ Real-time data updates
- ๐ SEO optimized
๐ Quick Start
Prerequisites
- Node.js (v18 or higher)
- npm/yarn/pnpm
Installation
- Clone the repository:
git clone https://github.com/PouyaBirvand/CountryApp.git
๐ Available Scripts
npm run dev
- Start development server
npm run build
- Create production build
npm start
- Serve production build
npm run typecheck
- Run type checking
npm run format
- Format code with Prettier
๐๏ธ Project Structure
app/
โโโ routes/
โ โโโ about.tsx
โ โโโ countries.tsx
โ โโโ country.tsx
โ โโโ home.tsx
โ โโโ components/
โ โโโ navbar.tsx
โโโ app.css
โโโ root.tsx
โโโ routes.ts
๐ฑ Responsive Design
- Mobile-first approach
- Breakpoints for all device sizes
- Optimized layouts for different screen sizes
- Code splitting with React Router
- SWR for efficient data caching
- Lazy loading of images
- Optimized bundle size
๐ Security
- Type-safe development with TypeScript
- Secure API calls
- XSS protection
- CORS handling
๐ค Contributing
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature
)
- Commit changes (
git commit -m 'Add AmazingFeature'
)
- Push to branch (
git push origin feature/AmazingFeature
)
- Open a Pull Request
๐ Future Enhancements
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.
๐จโ๐ป Author
Pouya Birvand
๐ Acknowledgments
โญ Star this repository if you find it helpful!
๐ For detailed documentation and API references, check out our Wiki.