Your Central Hub for Cryptocurrency Data & Analytics
A premium, responsive cryptocurrency dashboard with real-time market data, interactive charts, and comprehensive analytics.
- π Real-time Price Tracking - Live cryptocurrency prices with instant updates
- π Interactive Charts - Beautiful price charts powered by Chart.js
- π Advanced Filtering - Search and filter thousands of cryptocurrencies
- π± Fully Responsive - Perfect experience on mobile, tablet, and desktop
- π Dark Theme - Eye-friendly dark mode optimized for extended use
- β‘ Lightning Fast - Optimized performance with Vite and React 19
- π Glassmorphism Design - Modern glass-like effects and blur backgrounds
- β¨ Smooth Animations - Fluid transitions and hover effects
- π¨ Gradient Accents - Beautiful color gradients throughout the interface
- π Custom Logo - Premium branded logo with animations
- π± Mobile-First - Touch-friendly interface optimized for all devices
- β‘ Modern React - Built with React 19 and latest features
- π₯ Vite Build System - Lightning-fast development and builds
- π Data Visualization - Professional charts and analytics
- π Type Safety - TypeScript-ready codebase
- βΏ Accessibility - WCAG compliant and screen reader friendly
Check out the live project here: CryptoHub
- Node.js (v18.0.0 or higher)
- npm or yarn package manager
-
Clone the repository
git clone https://github.com/yourusername/cryptohub.git cd cryptohub -
Install dependencies
npm install # or yarn install -
Start development server
npm run dev # or yarn dev -
Open your browser Navigate to
http://localhost:5173
npm run build
# or
yarn buildnpm run preview
# or
yarn preview| Category | Technology | Version | Purpose |
|---|---|---|---|
| Frontend | React | 19.1.1 | UI Framework |
| Build Tool | Vite | 7.1.7 | Development & Build |
| Charts | Chart.js | 4.5.0 | Data Visualization |
| Routing | React Router | 7.9.4 | Navigation |
| Styling | CSS3 | - | Responsive Design |
| API | CoinGecko | v3 | Crypto Data |
{
"react": "^19.1.1",
"react-dom": "^19.1.1",
"react-router": "^7.9.4",
"chart.js": "^4.5.0",
"chartjs-adapter-date-fns": "^3.0.0",
"react-chartjs-2": "^5.3.0"
}{
"vite": "^7.1.7",
"@vitejs/plugin-react": "^5.0.4",
"eslint": "^9.36.0",
"@types/react": "^19.1.16",
"@types/react-dom": "^19.1.16"
}CryptoHub is built with a mobile-first approach and provides an exceptional experience across all devices:
- π± Mobile: β€ 768px (iPhone, Android phones)
- π± Large Mobile: 769px - 1024px (Large phones, small tablets)
- π Tablet: 1025px - 1200px (iPad, Android tablets)
- π» Desktop: 1201px+ (Laptops, desktops)
- π₯οΈ Ultra-wide: 1600px+ (Large monitors)
- Touch-friendly interface with 44px minimum touch targets
- iOS Safari optimizations (prevents zoom on input focus)
- High DPI display support for crisp images
- Landscape orientation support for mobile devices
- Reduced motion support for accessibility
- Header with branded logo and navigation
- Search & Filter controls for crypto discovery
- Coin Grid with responsive card layout
- Real-time price updates and market data
- Comprehensive coin information and statistics
- Interactive price charts with multiple timeframes
- Market data including volume, market cap, and rankings
- External links to official websites and social media
- Premium hero section with animated elements
- Feature showcase with glassmorphism cards
- Technology stack overview
- Call-to-action sections for engagement
Create a .env file in the root directory:
# API Configuration
VITE_COINGECKO_API_URL=https://api.coingecko.com/api/v3
VITE_API_TIMEOUT=10000
# App Configuration
VITE_APP_NAME=CryptoHub
VITE_APP_VERSION=1.0.0The project uses Vite with the following optimizations:
// vite.config.js
export default defineConfig({
plugins: [react()],
server: {
proxy: {
'/api': {
target: 'https://api.coingecko.com',
changeOrigin: true,
rewrite: (path) => path.replace(/^\/api/, '/api/v3')
}
}
}
})cryptohub/
βββ π public/
β βββ favicon.jpg # Custom favicon
β βββ vite.svg # Vite logo
βββ π src/
β βββ π assets/
β β βββ Logo.png # Main logo
β β βββ nav-logo.jpg # Navigation logo
β βββ π components/
β β βββ CoinCard.jsx # Crypto coin card
β β βββ FilterInput.jsx # Search filter
β β βββ Header.jsx # Navigation header
β β βββ LimitSelector.jsx
β β βββ Loader.jsx # Loading component
β β βββ PriceChart.jsx # Chart component
β β βββ SortSelector.jsx
β βββ π pages/
β β βββ About.jsx # About page
β β βββ Coin-Details.jsx # Coin details
β β βββ home.jsx # Main dashboard
β β βββ not-found.jsx # 404 page
β βββ App.jsx # Main app component
β βββ index.css # Global styles
β βββ main.jsx # App entry point
βββ index.html # HTML template
βββ package.json # Dependencies
βββ vite.config.js # Vite configuration
βββ README.md # This file
- Real-time search through cryptocurrency names and symbols
- Advanced sorting by market cap, price, volume, and 24h change
- Limit selection to display 10, 25, 50, or 100 coins
- Instant results with smooth animations
- Price charts with multiple timeframes
- Market statistics with color-coded changes
- Volume indicators and market cap rankings
- 24h price changes with percentage indicators
- Consistent spacing using CSS custom properties
- Color palette optimized for dark theme
- Typography with proper hierarchy
- Animation system with smooth transitions
- Code splitting with React.lazy()
- Image optimization with proper sizing
- CSS optimization with minimal bundle size
- API caching for improved performance
- Lazy loading for non-critical components
- First Contentful Paint: < 1.5s
- Largest Contentful Paint: < 2.5s
- Cumulative Layout Shift: < 0.1
- Bundle Size: < 500KB gzipped
We welcome contributions! Please follow these steps:
- Fork the repository
- Create a feature branch
git checkout -b feature/amazing-feature
- Make your changes
- Commit your changes
git commit -m 'Add amazing feature' - Push to the branch
git push origin feature/amazing-feature
- Open a Pull Request
- Follow ESLint configuration
- Use prettier for code formatting
- Write meaningful commit messages
- Add comments for complex logic
When reporting bugs, please include:
- Browser and version
- Device information
- Steps to reproduce
- Expected vs actual behavior
- Screenshots if applicable
This project is licensed under the MIT License - see the LICENSE file for details.
- CoinGecko for providing the cryptocurrency API
- React Team for the amazing framework
- Vite Team for the fast build tool
- Chart.js for beautiful data visualization
- Community for feedback and contributions
- π§ Email: support@cryptohub.dev
- π Issues: GitHub Issues
- π¬ Discussions: GitHub Discussions
- π Documentation: Wiki