Overview: Where Development Is Heading
The backend repo is currently focused on bug fixes, performance improvements. Several fixes are landing to stabilize the existing flows. Recent commit subjects include: perf: add composite (for_coll_id, auctionID) index for nftMetaById listings order; add X-STN-SERVEDBY header to responses from 404 handler; fix binUpload; fix: skip Joi validation on /binupload multipart route; Fix ipfs.io rate limiting: serialize requests, detect 504 lockout, cache duplicate CID fetches. The work is tightening the foundation before more blockchain-facing features ship.
Overview: Where Development Is Heading
The frontend repo is currently focused on bug fixes, new features, refactoring, performance improvements, maintenance tasks. Several fixes are landing to stabilize the existing flows. New feature work is progressing in parallel. There is also active refactoring to keep the codebase maintainable. Recent commit subjects include: chore: remove preloader shell from index.html; chore: regenerate sitemap index timestamps (build artifact); feat: SSR prepopulates collection grid img src with CDN cache URL; feat: SSR prepopulates collection card img src with CDN cache URL; perf: reuse grid metadata in item modal to skip backend fetch. The work is converging on a more stable and maintainable user experience.
Project Direction — Both repos are converging on a stable, production-ready NFT marketplace. The backend is hardening core systems while the frontend improves architecture and user experience.
Backend Commits
0186d78 2026-09-14 00:25:25 add composite (for_coll_id, auctionID) index for nftMetaById listings order
perf:3f24e1f 2026-09-14 00:00:34
add X-STN-SERVEDBY header to responses from 404 handler5ddf977 2026-09-11 07:59:31
fix binUploadab23cec 2026-09-11 06:49:59 skip Joi validation on /binupload multipart route
fix:e4ccc9b 2026-08-26 02:53:59
Fix ipfs.io rate limiting: serialize requests, detect 504 lockout, cache duplicate CID fetcheseaba5d4 2026-08-26 00:30:07
Add chainWatch backfill mode (-u/-u-dry/-full): rewrite inline base64 + ipfs/http images to CDN, normalize CID URLs, per-chain + ipfs.io rate limits, per-minute stats63692a2 2026-08-25 03:55:20
remove unused routes from server.js and update importsf149a44 2026-08-25 03:54:09
Merge remote-tracking branch 'origin/refactor2026' into refactor2026601a398 2026-08-25 02:04:42 use = instead of LIKE for numeric for_coll_id in nftMetaById
fix:02ce78b 2026-08-25 02:03:42 use = instead of LIKE for numeric for_coll_id in nftMetaById
fix:e2fe3de 2026-08-25 01:24:33
remove unused routes from server.js and update importsfcb4dbe 2026-08-24 01:52:41
Separate blockscout cache by chainId in newmeta and gitignore newmeta0cb9b26 2026-08-24 01:10:51
test(nft): drop unsupported 'order' field from nftMetaById validation testsd198115 2026-08-24 01:10:21
fix(nft): correct slug resolution in nftMetaById6519a0a 2026-08-24 00:59:48
feat(nft): accept canonicalName + chainName (slug) in nftMetaById1776276 2026-08-23 18:51:26
fix(getCollections): apply net filter — number has no .length9fa19e6 2026-08-23 18:15:03
feat(collInfo): accept canonicalName+chainName or contractAddress+chainName5bb7844 2026-08-23 18:14:54 add canonicalName column and backfill helper
feat:f538183 2026-08-23 00:37:26 preserve null query params, store contract names, remove 1000 cap, normalize new input format, pass db/tokenType into ingestContracts, update existing collections rows, fetch metadata fallback, use null-preserving token pagination serializer
fix:61dac6c 2026-08-22 20:25:30
feat(chainWatch): show canonical signature names on stdout NFT lines9364571 2026-08-22 20:13:02
feat(db): add signatures table for chainWatch learned selectorsc2e7e43 2026-08-22 20:12:37
feat(chainWatch): persist learned signatures to MySQL signatures tableb6c58c8 2026-08-22 18:36:17
fix(db): widen collections.totalSupply to BIGINT UNSIGNEDb1148e0 2026-08-22 18:36:08
fix(chainWatch): make DB writes non-fatal; log full SQL + values on failure6f55254 2026-08-22 18:27:28
feat(chainWatch): gate imports on known NFT func selectors + event topics
Frontend Commits
2bf8246fb 2026-09-14 10:18:55 remove preloader shell from index.html
chore:728d644d3 2026-09-14 10:18:07 regenerate sitemap index timestamps (build artifact)
chore:244c28071 2026-09-14 09:13:39 SSR prepopulates collection grid img src with CDN cache URL
feat:2ef330778 2026-09-14 09:03:23 SSR prepopulates collection card img src with CDN cache URL
feat:6d2a502f9 2026-09-13 23:27:30 reuse grid metadata in item modal to skip backend fetch
perf:7b5ba168a 2026-09-13 23:16:42 clicking outside the open mobile nav panel collapses it
fix:e029cd8b3 2026-09-13 23:05:54 collapse mobile nav panel when an item or sub-item is selected
fix:3ea57eee5 2026-09-13 22:59:57 reuse grid image URL in item modal to avoid duplicate CDN fetch
perf:dec994c51 2026-09-13 22:52:47 fade+slide transition on mobile nav show/hide
feat:d6882e7e9 2026-09-13 22:50:51 mobile nav top offset calc(var(--header-height) - 20px)
fix:dafef3132 2026-09-13 22:49:27 mobile nav panel drops just below burger, right edges aligned
fix:07a5e35b6 2026-09-13 22:44:57 remove dead sidenav-toggler li from SecNavItem
refactor:c0a8211a3 2026-09-13 22:37:43 right-align caret on mobile nav items with submenus
fix:ee6cb32e1 2026-09-13 22:37:05 left-align text in mobile nav dropdown items
fix:dcb9d560b 2026-09-13 22:36:25 mobile nav items fill full panel width
fix:517c0cf3c 2026-09-13 22:35:03 AGENTS.md — local CSS is source of truth; document nav-dropdown-mobile scoping rule
docs:18be5819d 2026-09-13 22:33:50 center mobile nav items; sub-menus pop out as floating dropdowns
fix:07656b659 2026-09-13 22:32:05 nav-dropdown-mobile height fits content instead of full viewport
fix:87dc6156e 2026-09-13 22:30:17 drop overflow-y from mobile nav panel so it sizes to content
fix:9089d6b1e 2026-09-13 22:29:48 mobile nav sub-items collapsed by default; right-aligned full-width rows
fix:d5bb2cdef 2026-09-13 22:25:33 raise mobile header stacking context so nav-dropdown-mobile overlay clears the floating footer
fix:350c90cf0 2026-09-13 22:24:41 dedicated nav-dropdown-mobile style for mobile main nav
feat:b76a849d3 2026-09-13 22:22:13 mobile navbar drop-menu overlay with position:fixed + !important
fix:95c2c8fa4 2026-09-13 22:20:05 make #mainNavbar a flex row on desktop so right nav group is inline and pinned right
fix:e4be015fd 2026-09-13 22:14:27 desktop nav right-aligned; mobile nav uses nav-dropdown-item overlay
fix: