Skip to content

v2.0.0

Latest

Choose a tag to compare

@adamant-al adamant-al released this 01 Aug 17:56
14dac0e

ADAMANT Explorer v2.0.0 is the first stable release since v1.3.0. It modernizes the Explorer frontend, backend, live monitoring, security boundaries, dependencies, tests, and operational documentation while preserving existing public page URLs and deep links.

Highlights

Vue 3 frontend and refreshed UX

  • Replace AngularJS, Bootstrap 3, and Webpack with Vue 3, Pinia, Vue Router 5, and Vite 8
  • Rebuild all public Explorer pages with responsive desktop, tablet, and mobile layouts
  • Add persistent light and dark themes, accessible controls, mobile transaction cards, safer tooltips, and improved copy feedback
  • Add contextual transaction semantics for transfers, votes and unvotes, DApp operations, exchange activity, and welcome bonuses

Backend and API modernization

  • Rebuild ADAMANT Node access around adamant-api 3.1.0 with readiness gating, failover, bounded pagination, normalized errors, and separated request/handler layers
  • Retain the 12 same-origin routes required by the Explorer UI and add GET /api/networkHealth
  • Add strict route and query validation, deterministic transaction ordering, corrected transfer filtering, top-account pagination, live confirmations, and full-precision ADM formatting
  • Make Redis optional for core serving while preserving resilient API caching and rolling block/peer statistics

Live monitoring and freshness

  • Stabilize Header, Delegate Monitor, Network Monitor, and Activity Graph Socket.IO lifecycles with serialized polling and bounded retries
  • Add block-driven page refreshes and bounded REST confirmation for compact WebSocket block notifications
  • Improve delegate schedules, forging states, rewards, fees, peer statistics, version ordering, and round-boundary behavior
  • Replace Freegeoip with optional GeoJS peer geo-location and add a same-origin, validated, cached, and rate-limited OpenStreetMap tile proxy

Security and reliability

  • Remove wildcard CORS and 16 unsupported legacy Explorer API endpoints
  • Add proxy-aware API rate limiting, validated trusted proxies, security headers, a constrained CSP, stable errors, and explicit HTTP timeouts
  • Minimize request logs by excluding query strings and validate untrusted Node, peer, proxy, Redis, geo-location, and browser-origin data
  • Add a repository threat model, security/reliability review, and extensive unit coverage for public boundaries and live-monitor state

Dependencies, tests, and documentation

  • Update the supported runtime to Node.js ^22.18.0 || >=24.11.0
  • Update Express, Redis, Socket.IO, Axios, Vue, Vite, Pinia, Vue Router, ESLint, Mocha, Chai, Supertest, and the remaining dependencies
  • Remove legacy Grunt, Protractor, Cucumber, Jenkins, Travis, Webpack/Babel, and obsolete Market Watcher/exchange integrations
  • Add 43 Node-only unit-test modules, refresh live Testnet fixtures, and expand API, security, scheduling, data-shaping, and frontend utility coverage
  • Refresh README.md and add current contributor and AI-agent operating guides

Breaking changes and upgrade notes

  • Upgrade Node.js to ^22.18.0 || >=24.11.0
  • Create the deployment configuration from the new config.default.jsonc and review nodes_adm, trustedProxies, redis, geoLocation, exchangeRates, and log_level
  • Use ADAMANT Node v0.10.2 or newer and prefer multiple independently operated HTTPS nodes
  • Replace the removed Freegeoip integration with the optional GeoJS configuration; disabling geo-location keeps peer and hostname data available without maps or country flags
  • Migrate external consumers of removed Explorer API routes to adamant-api-jsclient; use GET /api/networkHealth for operational monitoring
  • Allow the same-origin /osm-tiles/ path in reverse-proxy and firewall rules
  • Build the ignored public/ bundle during deployment with npm run build
  • Use npm run dev for the combined backend/Vite development stack or npm run dev:frontend for Vite only

Existing Explorer page routes and deep links remain compatible. Redis is recommended but is no longer required for core HTTP and static serving.

Validation

  • ESLint passed
  • Prettier check passed
  • Production build passed with 6,337 modules transformed
  • Unit suite passed with 226 tests
  • Live Testnet API suite passed with 41 tests on the released source tree
  • Dependency audit reports 0 vulnerabilities
  • Browser smoke checks covered 13 routes at desktop, tablet, and mobile resolutions without console errors or horizontal overflow

References