{"id":31642335,"url":"https://github.com/matthew3dg/react-native-crypto-statistic","last_synced_at":"2026-04-18T00:02:31.183Z","repository":{"id":316244128,"uuid":"1062565369","full_name":"Matthew3dg/react-native-crypto-statistic","owner":"Matthew3dg","description":"A cross-platform mobile application built with React Native that provides real-time cryptocurrency market data. The app features a clean, modern interface for browsing cryptocurrency markets with pagination support, pull-to-refresh functionality, and customizable display preferences.","archived":false,"fork":false,"pushed_at":"2025-10-05T04:15:52.000Z","size":391,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-10-05T06:09:11.393Z","etag":null,"topics":["coingecko-api","react-native","tanstack-react-query","typescript","zustand"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Matthew3dg.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-09-23T12:29:55.000Z","updated_at":"2025-10-05T04:15:56.000Z","dependencies_parsed_at":null,"dependency_job_id":"2dfb28f5-d9b4-4dc0-8704-e7d91bf7d644","html_url":"https://github.com/Matthew3dg/react-native-crypto-statistic","commit_stats":null,"previous_names":["matthew3dg/react-native-crypto-statistic"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Matthew3dg/react-native-crypto-statistic","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Matthew3dg%2Freact-native-crypto-statistic","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Matthew3dg%2Freact-native-crypto-statistic/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Matthew3dg%2Freact-native-crypto-statistic/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Matthew3dg%2Freact-native-crypto-statistic/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Matthew3dg","download_url":"https://codeload.github.com/Matthew3dg/react-native-crypto-statistic/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Matthew3dg%2Freact-native-crypto-statistic/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278717442,"owners_count":26033542,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-07T02:00:06.786Z","response_time":59,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["coingecko-api","react-native","tanstack-react-query","typescript","zustand"],"created_at":"2025-10-07T03:58:19.222Z","updated_at":"2025-10-07T03:58:25.086Z","avatar_url":"https://github.com/Matthew3dg.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# React Native Crypto Tracker\n\nA modern React Native application for tracking cryptocurrency market data in real-time. Built with TypeScript and powered by the CoinGecko API.\n\n\u003cimg width=\"50%\" height=\"2556\" alt=\"Simulator Screenshot - iPhone 15 - 2025-09-23 at 19 35 16\" src=\"https://github.com/user-attachments/assets/658c38ad-8d94-4569-9b27-2c904609dc98\" /\u003e\n\n## Features\n\n- 📊 **Real-time Market Data**: View current cryptocurrency prices and 24h changes\n- 🔄 **Pull-to-Refresh**: Update data with a simple pull gesture\n- 📱 **Responsive Design**: Clean, modern UI optimized for mobile devices\n- ⚡ **Fast Performance**: Efficient data fetching with React Query\n- 🎯 **Pagination**: Browse through multiple pages of market data\n- 💾 **State Management**: Persistent preferences with Zustand\n\n## Screenshots\n\nThe app displays a clean list of cryptocurrencies with:\n\n- Coin icons and names\n- Current prices in USD\n- 24-hour price change percentages (color-coded)\n- Market cap rankings\n\n## Tech Stack\n\n- **React Native 0.73.9** - Cross-platform mobile development\n- **TypeScript** - Type-safe development\n- **React Query (TanStack Query)** - Server state management and caching\n- **Zustand** - Lightweight state management\n- **Axios** - HTTP client for API requests\n- **CoinGecko API** - Cryptocurrency market data\n\n## Prerequisites\n\n- Node.js \u003e= 18\n- React Native development environment\n- iOS Simulator (for iOS development)\n- Android Studio (for Android development)\n\n## Installation\n\n1. Clone the repository:\n\n```bash\ngit clone https://github.com/Matthew3dg/react-native-crypto-statistic.git\ncd react-native-crypto-statistic\n```\n\n2. Install dependencies:\n\n```bash\nyarn install\n# or\nnpm install\n```\n\n3. For iOS, install CocoaPods dependencies:\n\n```bash\ncd ios \u0026\u0026 pod install \u0026\u0026 cd ..\n```\n\n## Running the App\n\n### iOS\n\n```bash\nyarn ios\n# or\nnpm run ios\n```\n\n### Android\n\n```bash\nyarn android\n# or\nnpm run android\n```\n\n### Metro Bundler\n\n```bash\nyarn start\n# or\nnpm start\n```\n\n## Project Structure\n\n```\nsrc/\n├── api/\n│   └── coingecko.ts          # CoinGecko API client and types\n├── components/\n│   └── CoinRow.tsx           # Individual coin display component\n├── hooks/\n│   └── useMarketsQuery.ts    # React Query hook for market data\n├── providers/\n│   └── QueryProvider.tsx     # React Query provider setup\n├── screens/\n│   └── MarketsScreen.tsx     # Main markets listing screen\n└── store/\n    └── preferences.ts        # Zustand store for app preferences\n```\n\n## Key Components\n\n### MarketsScreen\n\nThe main screen displaying a paginated list of cryptocurrencies with:\n\n- Pull-to-refresh functionality\n- Pagination controls\n- Loading states\n- Error handling\n\n### CoinRow\n\nIndividual coin display component showing:\n\n- Coin icon and name\n- Current price\n- 24h price change (color-coded)\n\n### API Integration\n\n- Uses CoinGecko's public API\n- Implements proper error handling\n- Configurable pagination and currency preferences\n\n## Available Scripts\n\n- `yarn start` - Start the Metro bundler\n- `yarn ios` - Run on iOS simulator\n- `yarn android` - Run on Android emulator\n- `yarn test` - Run tests\n- `yarn lint` - Run ESLint\n\n## Configuration\n\nThe app uses the following default settings:\n\n- Currency: USD\n- Items per page: 25\n- API timeout: 15 seconds\n\nThese can be modified in the preferences store.\n\n## Development\n\nThe project follows React Native best practices:\n\n- TypeScript for type safety\n- Functional components with hooks\n- Proper separation of concerns\n- Clean component architecture\n\n## Contributing\n\n1. Fork the repository\n2. Create a feature branch\n3. Make your changes\n4. Add tests if applicable\n5. Submit a pull request\n\n## API Usage\n\nThis app uses the CoinGecko API which is free for public use. No API key is required for basic market data.\n\n## Performance\n\n- Efficient data caching with React Query\n- Optimized FlatList rendering\n- Minimal re-renders with proper state management\n- Image caching for coin icons\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatthew3dg%2Freact-native-crypto-statistic","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmatthew3dg%2Freact-native-crypto-statistic","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatthew3dg%2Freact-native-crypto-statistic/lists"}