BeamNG.Earth
BeamNG.drive용 1:1 비율 실시간 지구, 실제 고도·위성 이미지·부동 원점·보조 서버에서 LOD 스트리밍
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기MemePet - X Layer meme-community companion app
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Adopt the meme. Grow the community. A meme-community companion on X Layer testnet. Adopt a wallet-linked mascot, care for it once a day, and contribute to a shared community ritual. Growth comes from confirmed care. No MemePet token to buy; network gas applies. Public homepage captured 23 September 2026 (Singapore). The mascot showcase is stage artwork, not an earned wallet state. Review in 60 seconds — no wallet needed [README 설치·사용 부분 발췌] Install and run Open localhost:3000. Browsing needs no wallet. The committed configurREADME 전문 보기 ↗
Adopt the meme. Grow the community.
A meme-community companion on X Layer testnet. Adopt a wallet-linked mascot, care for it once a day, and contribute to a shared community ritual. Growth comes from confirmed care. No MemePet token to buy; network gas applies.
Public homepage captured 23 September 2026 (Singapore). The mascot showcase is stage artwork, not an earned wallet state.
| Event | OKX Dev Day 2026 |
| Finale | Selected for the 7 October 2026 live pitch; team-provided invitation |
| Intended track | Build a Market — meme application; deployed on X Layer testnet |
| Team | The four musketeers — Deston, Kym, Larm and YeeWei |
| Live demo | memepet.vercel.app |
| Submission video | Watch the original 3:05 demo · Larm's 1 October signed-out check found it public and playable; access evidence. Later finale features are described below. |
| Contract | 0xe844152262D243a7B90F6e07FF7A67F1d7FeD216 |
| Network | X Layer testnet · chain 1952 · gas currency OKB |
| Repository | github.com/Chi944/memepet |
To try adoption and care yourself, use the wallet walkthrough with an injected wallet and X Layer testnet gas. Browsing and public sharing require neither. If several wallet extensions are available, choose the wallet app on Your pet before connecting. Changing wallet apps clears this page's connected state; connect again with the chosen app. The selection itself requests no permission. The Help page explains test gas, UTC care, confirmed versus local progress and read recovery without connecting a wallet. Planned features are labelled; no monitored support contact is claimed.
For a meme community, a price chart tells only part of the story. MemePet explores another reason to return: a small companion that grows through a daily act of care. The goal is to make participation visible and give the community a shared ritual.
This is a product hypothesis. We have not yet established organic adoption, retention or demand through community testing.
Missing a day never removes earned growth. The prototype has no MemePet token, marketplace, staking or financial rewards. Adoption and care do not request token allowances or token transfers; wallet approval and network gas are still required.
When both MetaMask and OKX Wallet are installed, choose the wallet explicitly. MemePet prefers modern wallet discovery and uses older injection methods only when no modern wallet is discovered, avoiding duplicate compatibility entries. Older extensions that only support legacy injection may be absent when a modern wallet is available. Choosing a wallet does not approve a transaction.
| Hatchling · 0 points | Buddy · 20 points | Guardian · 50 points |
|---|---|---|
Stage illustrations show the product's designs. They do not establish a recorded live evolution.
3 October: scoped genuine wallet acceptance
passed on fa07032. A real care settled automatically at 40 personal points and
14 community cares; receipt/state verification, same-chain account isolation,
actual OKX connection, same-address provider isolation and disconnect checks are
documented with their limits. The earlier failed run remains in the evidence.
This is testnet acceptance for the observed paths, not an independent security audit.
Latest release, 4a40275: the hosted wallet chooser shows one OKX Wallet
and one MetaMask option. A genuine Account 2 care updated automatically from
30 to 40 points and community 15 to 16; an ordinary reload retained those facts.
CI passed 822 app tests, 30 simulated browser cases, six fictional preview cases
and the contract checks. Release and receipt evidence
separates this result from pending-transaction recovery, which was not observed:
the care confirmed before refresh.
Finale recovery acceptance: real MetaMask testing on controlled Local Anvil
passed using unchanged runtime 4a40275. Both adoption and care retained their
actual pending hashes across refresh and confirmed without resubmission. The care
added ten points and one community care, with the correct cooldown. Mining was
held locally to make the pending interval observable; public X Layer
pending-refresh timing remains not observed.
The dated September table below belongs to product runtime af886a75.
Current implementation and remaining delivery work are tracked in
project status.
30 September finale integration: the shared garden and block-sourced recap are implemented on the overview/pet routes. A sourced, text-only XDOG reference labels its mainnet separately from MemePet's testnet; it adds no token ownership check or affiliation. Integration evidence records release checks and limits. 1 October: Kym's Explore/Practise controls are integrated with wallet-scoped browser preferences, reset and immediate answer rewording. Personality verification records automated checks and the separate hosted-browser checkpoint. Recap wording is a Standard explanation, not a model-generated response.
2 October combined release: the earned-form gallery and concise recap with
keyboard-accessible evidence are integrated. Live public/connected-page reads
and gallery interactions were checked on d0fc020; no new transaction was
performed. Combined release evidence
separates those observations from the later genuine wallet session linked above.
Recovery after refresh: this source adds a browser-local public-hash journal and read-only Check status panel. It validates transaction identity, receipt inclusion and receipt-block pet facts before showing recovered progress. Unresolved transactions block another submission; wallet/account changes clear the old view. Storage failures retain the returned hash on screen with a warning. The separate changed-release acceptance above uses real MetaMask on a controlled local chain; it is distinct from the earlier public-testnet wallet checks and simulated tests.
| Area | Verified result |
|---|---|
| Wallet flow | Genuine rejection → adoption → care; automatic 10-point pet read-back, UTC cooldown and reload persistence |
| Read recovery | Automatic community refresh showed Unknown; Retry community total recovered the receipt-block total without a reload or second transaction |
| Sharing and disconnect | Public pet displayed correct live state without connecting; Disconnect revoked site access and persisted after reload |
| Interface | Four viewport layouts, keyboard navigation, reduced-motion preview and missing/unknown-state previews checked |
| Automated checks | 123 app tests / 21 files · 15 contract tests · 8 counter checks; typecheck, lint, build and production preview gates passed |
Release CI and latest browser QA retain the actual results, read failures and unrun checks. Lint has one existing image-element warning and no errors. The 3:05 film passed technical QC; original care/refresh result stills are labelled, and no live evolution or uninterrupted successful care/refresh recording is claimed. Capture evidence records the exact footage boundaries.
Confirmed data drives the interface. Growth requires a successful receipt and fresh registry read. Unknown totals stay unknown; fictional previews never replace failed live reads. The shared total counts care actions, not users or adopted pets.
flowchart LR
A[Visitor] -->|Connect wallet| B[Adopt]
B -->|One pet per wallet| C[Pet home]
C -->|Care once per UTC day| D{Transaction}
D -->|Rejected or reverted| E[No growth awarded]
D -->|Receipt confirmed| F[Fresh registry read]
F -->|Read succeeds| G[10 growth points per care]
F -->|Read succeeds| H[Community care total]
F -->|Read fails| I[Explicit unavailable state]
I -->|Read-only recovery| F
E --> C
G --> C
| Rule | Where it is enforced |
|---|---|
| One pet per wallet | adopt() reverts with AlreadyAdopted |
| Approved community only | adopt() reverts with InvalidCommunity |
| A pet is required for care | care() reverts with NoPet |
| One care per UTC calendar day | care() reverts with AlreadyCaredToday |
| Ten growth points per care | Derived from confirmed careCount in the app |
| Buddy at 20; Guardian at 50 | Derived in the app |
| No missed-day penalty | The contract does not remove care history |
The daily boundary uses block.timestamp / 1 days: UTC midnight, or
08:00 Singapore time. Growth and stage are derived from the same confirmed
care count; they are not a separate saved balance.
| Layer | Responsibility |
|---|---|
Presentation · src/components/ | Pet, care and community views consume display values and callbacks |
Integration · src/hooks/, src/lib/ | Wallet sessions, explicit transactions, receipts, same-block reads and UI mapping |
Registry · contracts/src/PetRegistry.sol | One pet per wallet, permitted community, UTC-day care limit and shared care count |
deployment.ts declares the public testnet configuration.
Signing credentials never belong in client configuration. Development fixtures
are isolated from live reads; preview routes return 404 in production.
| Layer | Choice | Purpose |
|---|---|---|
| Framework | Next.js 16.3.8, React 19, TypeScript | Routes, rendering and server-generated share images |
| Styling | CSS Modules, custom properties, Geist / Geist Mono | Consistent black/lime interface and motion |
| Chain access | viem + an injected EIP-1193 wallet | Explicit reads and adoption/care requests |
| Contract | Solidity 0.8.24 / Foundry | Registry and UTC-day rules |
| Testing | Vitest, Testing Library, Foundry | Application and contract regression checks |
| CI | GitHub Actions | Typecheck, lint, tests, build and production preview gates |
Four runtime dependencies: next, react, react-dom, viem.
| Network | Chain ID | Registry |
|---|---|---|
| X Layer testnet | 1952 | 0xe844152262D243a7B90F6e07FF7A67F1d7FeD216 |
Deployment transaction · block 41,543,244. No mainnet deployment is claimed.
The executable runtime was compared with the deployed contract; compiler metadata differs after an SPDX comment change. Deployment evidence details the comparison; explorer source verification is not claimed.
.nvmrc) and npm 11.19.x.git clone https://github.com/Chi944/memepet.git
cd memepet
npm ci
npm run dev
Open localhost:3000. Browsing needs no wallet. The committed configuration reads the public X Layer testnet registry, so live data needs network access. Production builds also download Google Fonts.
| Route | Purpose |
|---|---|
/ | Overview, stage artwork and community progress |
/pet | Connect, adopt, care, inspect the shared garden and ask for a verified activity recap |
/pet/<wallet-address> | Read-only public pet page and generated share image |
/help | Wallet setup, test gas, daily care, recovery and support guidance |
/api/companion | Read-only, block-sourced MemePet facts and standard explanations; GET describes the API, POST reads a public address |
/dev/pet | Fictional pet stages and care-state previews |
/dev/landing | Fictional landing preview |
/dev/community | Loading, zero, growing, unavailable and other community previews |
/dev/finale | Fictional shared inputs for the finale companion, personality and mission work |
/dev/companion | Fictional recap facts, explanations and failure states |
/dev/beta | Fictional onboarding, wallet-choice, recovery, Help and milestone states |
The /dev/* routes return 404 in production. CI checks that gate.
For local Anvil setup, use development setup and
.env.example; keep private overrides in gitignored .env.local.
The app runs on Vercel. Configuration and deployment procedures are documented in Vercel setup and X Layer deployment.
npm run typecheck
npm run lint
npm test
npm run build
node --test docs/qa/counter-check.regression.mjs
node --test docs/qa/rpc-recovery.regression.mjs
node --test docs/qa/wallet-preflight.regression.mjs
The development guide also
documents npm run test:e2e:simulated and npm run test:e2e:previews. Simulated
wallets and fictional previews are explicitly separate from real-wallet evidence.
Use Foundry v1.8.3 and the pinned test library before running contract checks (full setup):
cd contracts
forge install foundry-rs/forge-std@rev=bf647bd6046f2f7da30d0c2bf435e5c76a780c1b --no-git
cd ..
npm run test:contracts
CI runs these checks and starts the production build to assert / returns 200
and the /dev/* preview pages return 404. Automated passes are separate from the
real browser-wallet walkthrough.
contracts/ Solidity registry, deployment script and contract tests
src/app/ Routes, public pet/share images and gated previews
src/components/ Pet, care, landing, community and shared presentation
src/hooks/ Wallet, pet registry and community integration
src/lib/ Deployment, reads, progression and view-model mapping
src/fixtures/ Fictional preview/test data only
public/pets/ Three stage illustrations and share backgrounds
docs/ Setup, scope, deployment, acceptance and dated evidence
Raw media, editable video sources and exports are preserved in the private submission archive. Product code, tests, operational guides and evidence remain in this repository.
The prototype supports one community, one mascot and three stages, with a wallet-linked registry, daily care, public viewing and a shared care count.
A token economy, NFT trading, marketplace, staking, breeding and social feed are outside the agreed scope. Multiple communities, accessories and a read-only holder indicator remain optional future work.
The team has been selected for the 7 October finale. The approved extension keeps Build a Market as the primary direction: reliable confirmed reads, one verified community reference, a cosmetic shared garden at 20 confirmed cares, browser-local personality, and a grounded MemePet activity recap. These are tracked as separate deliverables so implemented features and real wallet evidence are not confused.
The shared services now implement a block-verified recap API, isolated local personality storage and a confirmed-total garden adapter. Larm's garden and YeeWei's recap panels now have live route integration. Kym's personality controls use the same existing adapter; preferences change explanation style, not earned growth. Dated verification separates automated and read-only browser checks from genuine wallet actions.
The core/finale features and B0–B5 beta implementation are integrated. Scoped public wallet acceptance and the separate controlled-local real-wallet recovery check are recorded. The agreed finale/testnet delivery checklist is complete; this does not establish mainnet readiness or eliminate the limitations above. A labelled 2:14 silent finale backup is delivered and has passed full local playback; its recording and verification limits remain explicit. The team confirmed its timed rehearsal complete on 3 October; this is a team-reported result, not a venue-equipment check. On the day, verify the display equipment and reserve the pitch wallet's daily care for the demo. The free OKX.AI service packet is prepared; registration and a genuine call through OKX.AI remain pending. No included model credits or deployed AI chat are claimed. The parallel build plan assigns isolated work to all four members. Optional future work and verification limits stay explicit in current status.
| Contributor | Project contribution |
|---|---|
| Deston — lead | Contract, wallet/data integration, routes, shared UI, CI, deployment and release checks |
| Kym — pet experience | Pet and earned-form presentation, artwork finishing, personality controls, onboarding and cosmetic milestones |
| Larm — community experience | Landing/community UI, Help copy, QA and finale runbook |
| YeeWei — activity experience | Verified recap and evidence interface, recovery/Help presentation and browser regression scenarios |
Responsibilities are documented in file ownership.
Built with Next.js, React,
viem, Foundry,
Vitest and Testing Library.
Fonts: Geist and Geist Mono, loaded through next/font. Copyright 2024
The Geist Project Authors; SIL Open Font License 1.1.
AI coding tools were used during development. Dated evidence distinguishes implementation, automated checks, browser observations and planned work.