Skip to content

Instantly share code, notes, and snippets.

@ilovelili
Last active October 16, 2025 01:51
Show Gist options
  • Select an option

  • Save ilovelili/e4354d479eb56751761b0fcbde72952f to your computer and use it in GitHub Desktop.

Select an option

Save ilovelili/e4354d479eb56751761b0fcbde72952f to your computer and use it in GitHub Desktop.
Project review
# Project Review
## High-Level Summary
The current React frontend behaves like a traditional stock dashboard rather
than the decentralized exchange described in the proof-of-concept (PoC).
It shows marketing and market-data pages (for example,
`src/containers/MainPage/main_page.js`, `src/components/MarketWatch/MarketWatch.js`,
and `src/components/Indices/Indices.js`) and relies on REST APIs from
`http://localhost:5000`.
None of the blockchain-specific features in the PoC — wallet connectivity,
token swaps, smart contract interactions, or on-chain history — are implemented.
Significant refactoring and new feature work will be required to align the UI
with the decentralized product vision.
---
## Business Concept Review
- **Huge regulatory challenge:**
Tokenizing real-world stocks and enabling near real-time settlement would
classify the platform as a regulated securities exchange (similar to an ATS
or MTF). The concept paper doesn’t clarify broker-dealer partnerships, custody
models, or how DAO governance can meet SEC/ESMA-style oversight.
(Unclear how this applies under Japanese regulations.)
- **Missing liquidity plan:**
While trading bots are mentioned, there’s no roadmap for initial liquidity
providers, compliant incentive models, or safeguards against market
manipulation in low-liquidity environments.
- **Undefined data and AI sourcing:**
Real-time prediction and sentiment analysis require licensed data feeds,
news APIs, and historical datasets. The plan should explain how to manage
vendor contracts, content rights, and machine-learning infrastructure costs.
- **Governance vs. accountability conflict:**
A decentralized governance model for a regulated exchange is risky. The
concept must clarify how token-holder voting interacts with regulatory
controls, incident response, and dispute resolution processes.
---
## User Experience and Design Flexibility
- **Not mobile-friendly:**
Many components use fixed pixels and absolute positioning (for example,
`Footer`, `DataPortal`, `MarketSummary`, and `Carousel`). Layouts break on
small screens and can’t be reused easily.
- **Navigation limitations:**
`NavSection.js` mixes DOM manipulation with UI logic and lacks a mobile
version (no hamburger menu or responsive behavior).
- **Inconsistent visuals:**
Inline styles create uneven spacing, typography, and color usage. Introducing
a theme system (like Material UI or Tailwind) would help.
- **Accessibility issues:**
Missing ARIA labels, no focus handling in modals, and clickable `<div>`s
without keyboard support.
---
## Core Functionality vs. PoC Expectations
- **Wallet integration missing:**
No Web3 libraries or wallet providers (for example, MetaMask or WalletConnect).
Authentication uses email/password (`axios.post` to `/api/auth`).
- **No token swaps or contract calls:**
Market tables only fetch data from REST APIs. No components handle transaction
confirmations, gas management, or swaps.
- **Limited transaction history:**
No on-chain data view or real-time settlement. Governance and AI recommendation
features from the PoC are absent.
- **Weak security and compliance:**
No KYC, decentralized identity, or encryption handling. JWTs are stored in
`localStorage`, which is not secure enough for a DeFi platform.
> Overall, the app feels like a conventional stock dashboard MVP, not the
> decentralized, AI-driven exchange envisioned in the concept.
---
## AI and Data Intelligence Findings
- **No AI integration:**
The PoC promises NLP, deep learning, and anomaly detection, but the frontend
only calls endpoints like `/api/marketData` and `/api/indicesData`. No
predictions, confidence levels, or alerts are displayed.
- **No personalization:**
`Preference.js` collects tickers but has no recommendation engine or adaptive
dashboard.
---
## Component Architecture and Efficiency
- **Node 20+ build issues:**
Running `npm install` on Node.js 20+ fails with
`Error: No such module: http_parser` in `scripts/start.js`. Dependencies need
updating for current LTS support.
[screenshot](https://www.awesomescreenshot.com/image/56944319?key=b45ff4460b9bfbc59566031330c64d7e)
- **No TypeScript:**
The project is pure JavaScript, lacking static type checks. Migrating
gradually to TypeScript or using prop-types would improve safety.
- **No Dockerfile:**
A Dockerfile is needed for containerization.
- **Outdated React patterns:**
Mix of class and functional components without hooks or state management (no
Redux, Zustand, or Context). Repeated API calls fetch identical data.
- **UI tightly coupled to data fetching:**
Components call APIs directly in `useEffect` or `componentDidMount`, leading
to duplication and inconsistent error handling.
- **No testing:**
Lacks unit, integration, or end-to-end tests. Critical for a trading platform.
---
## Recommendations
1. **Refocus feature roadmap:**
Add wallet connections, token swaps, transaction history, and contract
integrations. Use libraries like `ethers`, `viem`, or Wagmi + RainbowKit.
2. **Implement responsive design:**
Introduce a design system (Material UI, Tailwind, or styled-components).
Make layouts adaptive across devices.
3. **Centralize API access:**
Build a shared API service and hooks (`useMarketData`, `useIndicesData`) for
caching and consistent error handling.
4. **Modernize state management:**
Convert class components to functional ones with hooks. Introduce React Query
or Apollo for data synchronization.
5. **Add automated testing:**
Include unit, integration, and end-to-end tests for authentication and future
DeFi flows.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment