A modern, responsive cryptocurrency price tracking dashboard built with Nuxt 3, featuring real-time price updates, interactive charts, and seamless currency conversion.
- π Real-time cryptocurrency price tracking
- π¨ Modern UI with iPhone 15 Pro Max design
- π Light/Dark mode support
- π± USD/VND currency conversion with live exchange rates
- π Interactive charts with multiple timeframes
- π Smart search with autocomplete
- π± Mobile-first responsive design
- π Shareable URLs for specific cryptocurrencies
- Nuxt 3 - Vue.js Framework
- Vue 3 - Progressive JavaScript Framework
- Pinia - State Management
- TailwindCSS - Utility-first CSS Framework
- shadcn-vue - UI Components
- ECharts - Charting Library
- Pyth Network API - Cryptocurrency Data
- Exchange Rate API - Currency Conversion
- Node.js 20.x or higher
- npm or yarn
- Clone the repository
git clone https://github.com/tcdtist/demo-crypto-chart.git
cd demo-crypto-chart
- Install dependencies
npm install
# or
yarn install
- Start development server
npm run dev
# or
yarn dev
- Build for production
npm run build
# or
yarn build
Create a .env
file in the root directory:
NUXT_PUBLIC_API_BASE_URL=https://benchmarks.pyth.network/v1
NUXT_PUBLIC_EXCHANGE_API_URL=https://api.exchangerate-api.com/v4/latest/USD
demo-crypto-chart/
βββ src/
β βββ assets/
β β βββ css/
β β βββ main.css
β βββ components/
β β βββ CryptoChart.vue
β β βββ CurrencyToggle.vue
β β βββ SearchModal.vue
β β βββ ThemeToggle.vue
β β βββ TimeRangeSelector.vue
β βββ composables/
β β βββ useApi.ts
β β βββ useExchangeRate.ts
β βββ layouts/
β β βββ default.vue
β βββ pages/
β β βββ index.vue
β βββ stores/
β β βββ crypto.ts
β βββ types/
β βββ api.ts
βββ nuxt.config.ts
βββ tailwind.config.ts
βββ tsconfig.json
βββ package.json
The application uses Pyth Network's API for cryptocurrency price data:
- Benchmark Data:
/v1/shims/tradingview/history
- Price Feeds:
/v1/price_feeds
Currency conversion is handled through the Exchange Rate API, providing real-time USD to VND conversion rates.
Users can view price data across different timeframes:
- 1 Day (1D)
- 1 Month (1M)
- 3 Months (3M)
- 6 Months (6M)
- 1 Year (1Y)
Supports two currencies:
- USD (United States Dollar)
- VND (Vietnamese Dong)
Live exchange rates are fetched and applied to all price displays.
- Line chart with gradient fill
- Interactive tooltip
- Price indicators (High, Low, Volume)
- Responsive design
- Smooth animations
- Real-time search with debouncing
- Autocomplete suggestions
- Symbol and description search
- URL sharing capability
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details
- Pyth Network for providing cryptocurrency data
- shadcn/ui for the beautiful UI components
- Heroicons for the icons
- Tailwind CSS for the styling system
Chi Thanh Dang (tist) - @tcdtist
Project Link: https://github.com/tcdtist/demo-crypto-chart