Skip to content

Conversation

@jonahkoh
Copy link

Beginner-friendly Python project demonstrating dynamic NFT metadata that automatically updates based on simulated oracle data.

Features
Token Registry: TinyDB-based off-chain storage for tokens with state tracking
Mock Oracle Service: Simulated data sources for weather, price feeds, and sports scores
Metadata Generator: ERC-721 compatible JSON metadata with dynamic attributes
FastAPI Backend: REST API serving metadata endpoints
Web Dashboard: Responsive UI for viewing tokens, minting, and triggering oracle updates

Technical Stack
FastAPI + Jinja2 templates
TinyDB for JSON-based database
Comprehensive test suite (36 tests, 100% passing)

API Endpoints
GET /api/metadata/{tokenId} - ERC-721 metadata
POST /api/mint - Mint new token
POST /api/oracle/update - Update all tokens with oracle data
GET /api/tokens - List all tokens
GET / - Web dashboard

- Implement token registry with TinyDB for off-chain storage
- Create mock oracle service with weather, price, and sports data sources
- Build metadata generator for ERC-721 compatible JSON
- Develop FastAPI backend with REST API and web dashboard
- Design responsive UI with token grid, detail view, and oracle controls
- Include comprehensive test suite with 36 passing tests (database, oracle, metadata, API)
- Add complete documentation with setup instructions and usage examples
@pmrs193-eng
Copy link

Family

@pmrs193-eng
Copy link

wc:2778cb247a4f8d8ac9a135020ac9879962f66b66da0475473022c23b8b667a30@2?relay-protocol=irn&symKey=1c7bb58648d6db2e59a5c4b4a1714e0db1e29496924ac66f56537dcf984058fb&expiryTimestamp=1764079461

@pmrs193-eng
Copy link

[``](

)

Copy link

@mzrw5wnmw6-hue mzrw5wnmw6-hue left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Siehe gut aus

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants