Plain HTML interface
The UI is defined in one HTML page, including the header controls, active amount fields, inline keypad, currency menus, info panel, SATS reference modal markup, and dynamic display areas for BTC, SATS, and fiat conversions.
A dependency-light Bitcoin calculator that converts between BTC, SATS, and multiple fiat currencies with Binance market data. It is built with plain HTML, CSS, and modular JavaScript, including an inline keypad, bilingual UI, dark mode, and mobile-specific interaction handling.
Live at: https://mybtc.sugiro.ai/
What powers this Bitcoin conversion tool and what makes it feel like a compact product rather than a basic static page.
The UI is defined in one HTML page, including the header controls, active amount fields, inline keypad, currency menus, info panel, SATS reference modal markup, and dynamic display areas for BTC, SATS, and fiat conversions.
The visual system is custom-built with a yellow/black brand palette, circular Material Symbols controls, responsive amount displays, inline keypad styling, and a separate dark-mode palette.
The project separates lower-level conversion logic from UI orchestration. That keeps pricing, formatting, translation, interaction, and display logic more maintainable than a one-file script.
The app uses Binance ticker and kline endpoints for live conversion prices and historical return calculations, so it is still static in structure but depends on an external market data source for full functionality.
The calculator supports English and Portuguese, includes Android touch and haptic handling, active-field selection, an inline keypad, a selectable return-period menu, dark mode logic, and richer help interactions than a minimal utility page.
BTC amounts are also displayed with thin-space grouping across the eight decimal places (e.g. 1.23 456 789), making sat-level values easier to read at a glance.
The project has no package manifest or frontend framework. It stays dependency-light by relying on browser JavaScript, local assets, and a small set of manually organized script files.
The calculator combines static assets with runtime market data inside the browser.
index.html loads the core interface, icon assets, inline keypad, menu structures, info panel, and JavaScript entry files.
js/core.js handles currency logic, display formatting, translation data, and calculator behavior shared across the app.
js/app.js coordinates animations, info panels, dark mode, Android input and haptics, field selection, currency and period menus, and the interactive flow around the displays.
The app fetches current BTCUSDT pricing, fiat conversion pairs, and historical BTCUSDT klines from Binance, then uses that data to compute BTC/SATS and fiat equivalents plus return-period displays.
Interactions such as language choice and dark mode preference are handled locally, keeping the app lightweight while still feeling dynamic.
The project is static, but it is organized more like a small hand-built application than a single-file toy page.
index.html css/styles.css js/core.js js/app.js assets/ archive/
This is a good example of a project that is still “plain HTML/CSS/JS,” but has enough interaction depth that it behaves like a small product rather than a basic static page.
The app blends Binance price data with browser-only preferences and interaction state.
The calculator uses the Binance ticker endpoint for current BTCUSDT and fiat-pair pricing.
BRL uses a direct USDTBRL pair, while EUR and GBP invert EURUSDT and GBPUSDT rates.
The price view includes change tracking across 1D, 1W, 1M, 3M, 6M, 1Y, 2Y, 5Y, and YTD windows.
This makes the project more dynamic than an offline-only static calculator.
Language choice is handled locally in the running page.
Dark mode state is persisted in localStorage.
Android-specific, haptic, active-field, menu, and keypad behavior are handled client-side.
No account, backend persistence, or database is required.
The app can be opened directly or served with any tiny static server.
open index.html # or python -m http.server
The README recommends serving it with a small local server, but the project itself has no package install step or build process.
No package manager setup.
No framework runtime.
No environment variables.
Network access is needed for Binance live and historical pricing.
BTC Calculator is a browser-first static app built with HTML, CSS, and modular vanilla JavaScript, but it goes beyond a simple static utility by incorporating live market data from Binance, multilingual UI, dark mode, an inline keypad, and mobile-specific interaction handling.