CryptoRate Hub is a web application that displays live cryptocurrency values for popular cryptocurrencies such as Bitcoin (BTC) and Ethereum (ETH) in multiple currencies: USD, LKR, and EUR.
This project was developed as a capstone project using Node.js, Express, Axios, and EJS, demonstrating how to integrate and work with public APIs and present real-time data in a user-friendly interface.
-
Live cryptocurrency prices
-
Supported cryptocurrencies:
- Bitcoin (BTC)
- Ethereum (ETH)
-
Supported currencies:
- 🇺🇸 USD
- 🇱🇰 LKR
- 🇪🇺 EUR
-
Real-time currency conversion
-
Values rounded to 2 decimal places
-
Clean and responsive UI
-
Server-side rendering using EJS
-
Graceful error handling
- Node.js – Runtime environment
- Express.js – Web framework
- Axios – HTTP client for API requests
- EJS – Templating engine
- CSS – Styling
- Body-parser – Middleware for form handling
Used to retrieve real-time cryptocurrency prices.
https://api.coinpaprika.com/v1/tickers
Used to retrieve live exchange rates (EUR as the base currency).
https://exchangeratesapi.io
-
The CoinPaprika API provides cryptocurrency prices in USD.
-
The Exchange Rates API provides EUR-based currency exchange rates.
-
The application calculates:
- USD → LKR
- USD → EUR
-
All values are rounded to two decimal places for readability.
-
Data is passed from the Express server to the EJS template and rendered on the homepage.
git clone https://github.com/your-username/crypto-rate-hub.gitcd crypto-rate-hubnpm installnodemon index.jsOr
node index.jshttp://localhost:3000
- API requests are wrapped in
try-catchblocks - Prevents crashes when APIs are unavailable
- Ensures smooth user experience even on request failures
- Add more cryptocurrencies (SOL, BNB, ADA, etc.)
- Allow users to select cryptocurrencies dynamically
- Add charts to visualize price trends
- Add dark/light mode toggle
- Improve mobile responsiveness
- Move API keys to environment variables
Tenath Dilusha Computer Science & Engineering Student