Visão geral do projeto
O SleepFi é uma aplicação móvel criada durante o hackathon Spark (Solana Seeker). O princípio é simples: aposta SOL, apostando que dormirá pelo menos 7 horas todas as noites durante uma semana. Os dados do sono são importados automaticamente do Android Health Connect (por exemplo, Sleep as Android) e não podem ser falsificados manualmente. Se cumprir o desafio, recupera a sua aposta, bem como uma parte proporcional do fundo dos perdedores. Todo o mecanismo funciona através de um contrato inteligente Anchor na Solana: nem sequer o criador da aplicação pode levantar os fundos da conta de custódia.
Desafio
Criar uma aplicação que permite ganhar a dormir, verdadeiramente sem terceiros de confiança, com uma verdadeira conta de custódia na blockchain e não apenas um início de sessão por carteira, exigia resolver vários problemas em simultâneo.
Conta de custódia sem terceiros de confiança
Os SOL têm de ser bloqueados num PDA controlado pelo programa, e não na carteira do criador. O utilizador tem de ter a garantia de que ninguém pode fugir com os fundos. O programa Anchor inclui 6 instruções e 3 tipos de PDA (Pool, ChallengeEscrow, UserState).
Modelo de oráculo
Os dados do sono provêm do Health Connect no Android, mas têm de ser registados na blockchain. O backend desempenha o papel de oráculo: assina as transações submit_sleep e complete/fail_challenge com a chave de tesouraria, sem ter acesso aos fundos do escrow.
Mobile Wallet Adapter
No telemóvel, não existem carteiras sob a forma de extensões de navegador. A integração da Phantom/Solflare através do MWA (solana-mobile/mobile-wallet-adapter-protocol) exige a construção manual das instruções com os discriminadores do IDL: a classe Anchor.Program não é compatível com o MWA.
Integração do Health Connect
Leitura dos dados do sono a partir do Android Health Connect (react-native-health-connect). Filtragem das sessões com menos de 30 min e mais de 12 h, janela horária das 18:00 às 14:00 e validação no backend. Nenhuma introdução manual possível: apenas importação automática a partir da aplicação de monitorização do sono.
A nossa solução
MVP full stack: contrato inteligente Anchor na Solana, API backend na Vercel e aplicação móvel React Native com Expo.
Programa Anchor - 6 instruções, 3 PDA
Programa Solana que suporta: initialize_pool, start_challenge (bloqueio dos SOL no escrow PDA), submit_sleep (oráculo), complete_challenge (reembolso da aposta + recompensa), fail_challenge (transferência para o Pool PDA), claim_reward. Implementado na devnet: Gq6HZCUkXhznL8BBfEVXwnB4BCyzfvhpu4CwYe86wUuD.
API backend (oráculo + base de dados)
Funções serverless Vercel: /api/sleep (registo do sono + oráculo submit_sleep), /api/challenge (criação/obtenção de um desafio), /api/leaderboard, /api/treasury (saldo em tempo real a partir do Solana RPC). O Neon Postgres serve de base de dados. O backend assina as transações do oráculo com a chave do tesouro.
Aplicação móvel React Native
Expo + React Native com 3 separadores: Home (painel do sono, gráfico semanal, estado do desafio), Leaderboard (melhores dorminhocos com os respetivos endereços de carteira), Treasury (saldo SOL em tempo real na devnet, ligação para o explorador). O MWA permite assinar as transações através da Phantom/Solflare.
Health Connect + validação do sono
Importação automática dos dados do sono a partir do Android Health Connect. Filtragem das sessões inválidas (bug das 24 h, sestas curtas). Janela horária das 18:00 às 14:00 do dia seguinte. Deteção de ausências: os dias sem registo são apresentados como perdidos.
Descreva o que pretende melhorar - orçamento em 24 h
Diga-nos o que precisa - automação, integração, agente de IA ou aplicação. Recebe um orçamento concreto do que pretende: o que faremos, quanto custa e quando arranca.
Processo de execução
Dias 1-2
Arquitetura e programa Anchor: conceção dos PDA, redação e implementação do contrato inteligente na devnet, testes das instruções
1Dias 3-4
API backend + base de dados: endpoints REST, assinatura do oráculo, esquema Neon Postgres, integração com o Solana RPC
2Dias 5-6
Aplicação móvel: interface (3 separadores), integração do MWA, Health Connect, construção manual das instruções com os discriminadores do IDL
3Dia 7
Correção de bugs: bug do sono de 24 h, etiquetas de dias incorretas, fluxo de autorização HC, saldo do tesouro em tempo real, compilação e implementação do APK
4Prazo de execução
1 semana
Âmbito do serviço
Aplicação móvel + contrato inteligente (Anchor)
Tecnologias
Galeria do projeto
Está a planear um projeto semelhante?
Marque uma consulta gratuita e falemos sobre o seu projeto.
Marcar consulta gratuita