TurtleCare

A playful Web3 turtle-care concept with wallet login; unfinished but a fun hackathon experiment.

TurtleCare

Created At

ETHGlobal Buenos Aires

Project Description

TurtleCare began as a playful Web3 experiment built during ETHGlobal Buenos Aires. The original idea was a turtle-sitting marketplace where users could connect their wallet, register themselves and their turtles, create jobs, and accept tasks from other community members. Behind the scenes we built a real backend using Python, Flask, and SQLite; proper wallet authentication with MetaMask; a nonce-based signature verification system; session handling; and a clean HTML/CSS/JS frontend with reusable navigation components.

We quickly realized that a full multi-sided marketplace is deceptively complex for a 48-hour hackathon. It requires multiple flows—user creation, turtle registration, job creation, job browsing, job acceptance, profile editing, active/finished job states, and protected routes. All of this is appropriate for a real product cycle, but not for a hackathon where judges focus on one clear concept, one impressive demo, and clever use of sponsor technologies. Instead of forcing a rushed or fragile implementation, we decided to keep TurtleCare intentionally incomplete.

What we did finish is meaningful: a working Web3 login pipeline, a clean frontend structure, a functional backend with correct schema design, a working session system, and the basic conceptual flow for how the turtle-care ecosystem would work. The experience was genuinely fun, technically challenging, and a reminder that simple ideas often hide deep infrastructure requirements.

TurtleCare is not a finished product, but it succeeded as a learning project. By exploring authentication, backend state, database design, and UI patterns under time pressure, we gained insights that will make our next hackathon project more focused and demo-centric. TurtleCare remains a lighthearted prototype and a good reminder: sometimes the best hackathon idea is the smallest, clearest one—not a full marketplace.

How it's Made

TurtleCare was built with a simple but fully custom Web3 stack. The frontend uses pure HTML, CSS, and vanilla JavaScript served by a lightweight static server. Wallet authentication is implemented manually using MetaMask’s personal_sign and a custom nonce flow. We generate a random nonce, convert it to a browser-safe hex string, sign it client-side, and verify it server-side using Python’s eth-account and encode_defunct, which gave us a clean, trustless login without relying on any auth libraries or frameworks.

The backend is a Flask API connected to a SQLite database. We designed tables for users, turtles, jobs, and sessions, and implemented a simple state machine for signing in based on signed messages. Flask-CORS handles cross-origin communication with the static frontend. All routing, job models, and session logic were created from scratch.

Although we didn’t finish the full marketplace (too large for a weekend), the project helped us prototype a working Web3 authentication pipeline, a clean fullstack architecture, and a multi-entity database design. The most hacky part: manually encoding nonces into hex to satisfy MetaMask’s strict signing format, plus building a crash-free signature verifier under time pressure

background image mobile

Join the mailing list

Get the latest news and updates