U posljednja 2 mjeseca, intenzivno sam pravio Bitcoin novčanik od nule kao MVP za moj startup, Nummus . Bio je to prilično dug put do sada, a ja značajno napredujem. Ovaj post služi kao ažuriranje dok završavam prvu veliku razvojnu prekretnicu.
Hteo sam da podelim kako sam počeo, šta sam postigao i šta sledi pre lansiranja.
Šta gradim
Nummus će biti skrbnički novčanik koji nudi kreditnu karticu sa BTC-om, zajmove sa kolateralom i sigurno skrbništvo. Moći ćete da čuvate svoj bitcoin dok koristite njegovu vrijednost na kartici - rješavajući paradoks "nikada ne prodajte svoj Bitcoin" i "Bitcoin je budućnost novca", što vam omogućava da ga trošite svuda gdje je prihvaćena mastercard/visa. Napisao sam poseban članak o ovome ovdje . Nummus će biti Bitcoin + stabilni coin samo sa matičnom Bitcoin infrastrukturom – bez oslanjanja na nedorečene treće strane kao što je FTX (gledajući vas, BlockFi).
Iako ne mogu da napravim celu platformu sam, ono što mogu da postignem samostalno je razvoj solidnog novčanika. Ovaj MVP nije skrbnički i fokusira se na funkcionalnost osnovnog sloja Bitcoina, sa Lightningom koji bi mogao doći kasnije ako vrijeme dozvoli. Glavni cilj je da isporučim čist, funkcionalan Bitcoin novčanik koji pokazuje moju sposobnost da isporučim, rastem i proširim proizvod i korisnicima i potencijalnim investitorima.
Kako sam se pripremio za ovo
Ja sam frontend developer skoro 7 godina, a nedavno sam dobio i backend certifikat na Primeagen-ovom online bootcamp-u nakon što sam 8 mjeseci posvetio programu. Sada sam samouvjereno pun i zadovoljan svojim programskim mogućnostima – posebno nakon što sam postao ovisan o Factoriju, koji je značajno poboljšao moje vještine rješavanja problema nakon ulaganja od 250 sati u jednom mjesecu.
Prvobitno sam postavio cilj da pronađem CTO-a do 20. januara i osjećao sam se pomalo beznadežno da ovo radim sam. Tada sam shvatio – zašto ne bih bio sam svoj CTO? Odlučio sam tog dana da nosim kape i za generalnog direktora i za CTO. Koliko bi to moglo biti teško, zar ne? Već sam tehnički.
Kako bih poboljšao svoje vještine, potpuno sam se uronio u proces učenja. Upisao sam se na nekoliko online kurseva fokusiranih na razvoj mobilnih uređaja uz React Native – koristeći svoje postojeće React znanje učinilo je krivulju učenja relativno upravljivom. U roku od nedelju dana shvatio sam osnove i razvio nekoliko test projekata. Najvredniji resursi su bili React Native od CodeWithMosh-a i PlebDev -ov backend wallet kurs (Shoutout to Mr. PlebDev aka Austin K – njegov nastavni plan i program je odličan).
Također sam odlučio da je vrijeme da se udubim u tehničku stranu Bitcoina. Uzeo sam 5 O'Reillyjevih udžbenika o Bitcoinu, Lightningu i blockchainu da stvarno razumijem tehnologiju. Osim toga, dodao sam još 3 O'Reillyjeva teksta o softverskoj arhitekturi, vodstvu izvršnog inženjera i izgradnji mikroservisa. Skoro 2/7 čitam ove knjige i učim sat vremena dnevno. Čak sam naučio Vim pokrete i kako da koristim svoj Mac sa SAMO prečicama na tastaturi da radim brže (a sada se ne mogu vratiti).
U osnovi sam proveo mjesec dana učeći kao monah – cijeli dan, svaki dan – sve o razvoju aplikacija i Bitcoinu. Još uvijek idem duboko u Bitcoin kao tehnologiju i vjerovatno ću završiti sve te udžbenike do kraja godine.
Nakon što sam stekao povjerenje u svoje sposobnosti programiranja, otkrio sam Cursor i Claudea dok sam razvijao testne React izvorne aplikacije. Ovo je označilo značajnu prekretnicu – moja produktivnost se skoro odmah udeseterostručila. Sada mogu efikasno da samostalno razvijam kompletne aplikacije kombinovanjem svog tehničkog znanja sa AI pomoći. U kombinaciji sa mojim prethodnim iskustvom u izgradnji BitEscrow-a i nekim tehnikama optimizacije performansi, moje mogućnosti su bile dobro usklađene za inžinjering i skaliranje ovog projekta.
Također sam odlučio javno i uživo prenositi svoje sesije kodiranja, što je zapravo jako zabavno. U dane kada ne kodiram ili striming, radim na ovakvom sadržaju i distribuciji.
Tech Stack
Nakon dubokog ronjenja o tome šta je tamo, sletio sam na ovu stolicu za novčanik:
Alat | Kategorija | Zašto sam ga odabrao |
---|---|---|
React Native + TS | Frontend | Cross-platform sa sigurnošću tipa |
Idi | Backend | Brz i dobro obrađuje paralelnost |
Expo | Framework | Čini mobilne programere manje bolnim |
Jest | Testiranje | Odlično radi sa React-om |
GlueStack UI | UI biblioteka | Fleksibilan i savršen za MVP fazu |
Ponovo pošalji | Mail API | Jednostavno, ali pouzdano |
BDK-wasm | Bitcoin Lib | Solidna Bitcoin funkcionalnost |
Supabase | Baza podataka | PostgreSQL bez muke |
Ako želite da vidite sve što koristim, uključujući sve biblioteke, pogledajte GitHub package.json . Koliko god da bih voleo da koristim vrhunske tehnologije kao što su Zig, Elixir ili BunJS, postojeći ekosistem za Node i moj trenutni stog su već zaista solidni, posebno nakon što je Microsoft najavio da prepisuje TypeScript kompajler u Go. Možda ćemo, kada Nummus bude gradio svoju infrastrukturu, istražiti Zig ili Elixir and Bun. Za sada, izabrao sam ovaj stack zbog toga koliko brzo mogu da gradim sa njim, a kombinaciju TS + Go je prilično teško pobediti za MVP.
Za upravljanje projektima, držim ga super jednostavnim – samo Obsidian i mardown koristeći PARA sistem. To je to. Za tim od jednog člana nije potreban preopterećen softver kao što je Jira.
Dosadašnji napredak
Sljedeći ekrani su funkcionalni, ali trenutno nisu stilizirani. Prolaze sve testove koje sam napisao, a kada dođe vrijeme za implementaciju BDK-a, to bi trebalo ići prilično glatko. Kod je organiziran, modularan i čist. Moram da obavim refaktoring i linting pre lansiranja, ali stvari za sada izgledaju dobro.
Wireframing
Skicirao sam žičane okvire na svom e-ink tabletu. Već sam imao prilično jasnu viziju o tome kako želim da izgleda – samo sam to trebao staviti na papir.
Figma Designs
Odatle sam preselio žičane okvire na Figmu i poboljšao osnovne dizajne. Zaokružiću i uglancati izgled aplikacije kada se implementira BDK – prvo funkcionalnost.
Do sada napravljeni ekrani:
Onboarding : Kreirajte ili uvezite novčanik
Početni ekran : Prikazuje vaš bilans sa prebacivanjem između USD, BTC i SATS. Ima dugmad za slanje ili primanje bitcoina (ovi ekrani su još uvijek u toku)
Zaslon kreditne kartice : Detalji su trenutno u izradi i bit će otkriveni kasnije.
Bitcoin ekran : Filtrirajte po danu, sedmici, itd. Zamijenit ću testni API nečim boljim prije pokretanja.
Ekran istorije TX : Za sada se koriste lažni podaci, ali možete dodirnuti bilo koju transakciju da vidite njene detalje.
Putokaz
Kompletnu mapu puta možete pogledati na GitHubu, koju svakodnevno ažuriram. Evo rezimea ključnih faza:
- Osnovni frontend
- Refaktorirajte i dodajte testove
- Implementirajte stvarnu Bitcoin funkcionalnost <-- počevši od danas
- Napišite testove za bitcoin stvari
- Neka frontend izgleda zaista lijepo
- Refaktor i testiranje za proizvodnju
- Završne provjere i sigurnosna revizija
- Pokreni
Cilj je da se funkcionalan proizvod lansira na Bitcoin konferenciji u Las Vegasu u maju. Trenutno, razvoj napreduje prema planu kako bi se ispunio ovaj rok.
Zaključak
Izgradnja Nummusa se pokazala kao izazovna i isplativa. Ono što je počelo kao istraživačko pitanje o izvodljivosti evoluiralo je u legitiman proizvod koji uzima opipljiv oblik. Izvanredno je koliko samo jedan programer može postići sa odgovarajućim alatima i metodologijom.
Ovaj MVP novčanika bez skrbništva predstavlja samo početnu fazu. Šira vizija za Nummus je ambicioznija – ali svaki značajan projekat zahtijeva skromnu polaznu tačku.
Odluka da se gradi u javnosti povećala je odgovornost i transparentnost, dok dobijene povratne informacije već poboljšavaju kvalitet proizvoda.
Iskreno sam oduševljen smjerom ovog projekta i slobodno možete pratiti proces razvoja uživo. Ispod su linkovi na moje kanale društvenih medija i Discord gdje možete slati pitanja i povratne informacije kako biste utjecali na razvoj novčanika.
Želite li se pridružiti listi čekanja i dobiti obavijest kada pokrenem? Prijavite se ovdje.
Linkovi: