PathrockNetwork Gno Explorer
HomeBlocksTransactionsTokensRealmsPackagesValidatorsAnalytics

PathrockNetwork Gno Explorer — an independent explorer for Gno.land Mainnet (gnoland-1), operated by PathrockNetwork. Not an official Gno.land service.

gnowebarchive RPC

gno.land/r/g1rayfgklwl0aspz488wvrcrvt7t2quy6q06lgk2/home

Realm
Open in gnoweb ↗

Overview

Kind
Realm (renderable)
Name
home
Namespace
g1rayfgklwl0aspz488wvrcrvt7t2quy6q06lgk2
Files
11 (gnomod.toml)
Exported functions
8
Module
gno.land/r/g1rayfgklwl0aspz488wvrcrvt7t2quy6q06lgk2/home
gno
0.9

Files (11)

  • gnomod.tomltoml
  • banner.gnogno
  • charts.gnogno
  • content.gnogno
  • hearts.gnogno
  • home.gnogno
  • wordle.gnogno
  • charts_test.gnogno
  • home_test.gnogno
  • security_test.gnogno
  • wordle_test.gnogno

Select a file to view its exact on-chain source. Sorted README → gnomod → sources → tests.

Functions

  • Delete(cur interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}, name string)

  • Get(name string) string

  • HasHeart(addr string) bool

  • Heart(cur interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string})

  • Hearts() int

  • Render(path string) string

  • Set(cur interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}, name string, body string)

  • SetActivity(cur interface {.seal func(); Address func() .uverse.address; IsCode func() bool; IsCurrent func() bool; IsEphemeral func() bool; IsUser func() bool; IsUserCall func() bool; IsUserRun func() bool; PkgPath func() string; Previous func() .uverse.realm; String func() string; Sub func(string) .uverse.realm; Subpath func() string}, activity string, reviews string, areas string)

Signatures reconstructed verbatim from vm/qfuncs — interface params keep their inline definitions.

Rendered

RenderedRawgnoweb ↗
![David G., developer engineer at Samouraï Coop](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI5NjAiIGhlaWdodD0iMzAwIiB2aWV3Qm94PSIwIDAgOTYwIDMwMCI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJiZyIgeDE9IjAiIHkxPSIwIiB4Mj0iMSIgeTI9IjEiPjxzdG9wIG9mZnNldD0iMCIgc3RvcC1jb2xvcj0iIzBlMGUwZSIvPjxzdG9wIG9mZnNldD0iMSIgc3RvcC1jb2xvcj0iIzBmMjIyNiIvPjwvbGluZWFyR3JhZGllbnQ+PG1hc2sgaWQ9InRvcmlpIj48Y2lyY2xlIGN4PSIyMzgiIGN5PSIyNDAiIHI9IjI0MCIgZmlsbD0iI2ZmZiIvPjxnIGZpbGw9IiMwMDAiPjxwYXRoIGQ9Ik0tMTAgOTAgUTIzOCAxNjQgNDkwIDkwIEw0OTAgMTQwIFEyMzggMTkwIC0xMCAxNDAgWiIvPjxwYXRoIGQ9Ik0xMDIgMTQwIEwxNjUgMTQwIEwxNjIgMjA2IEw5NiAyMDYgWiIvPjxwYXRoIGQ9Ik0zMDIgMTQwIEwzNjQgMTQwIEwzNzAgMjA2IEwzMDQgMjA2IFoiLz48cmVjdCB4PSItMTAiIHk9IjIwNSIgd2lkdGg9IjUwMCIgaGVpZ2h0PSI0MSIvPjxwYXRoIGQ9Ik04OSAyNDUgTDE1OSAyNDUgTDE0NSA0OTAgTDU1IDQ5MCBaIi8+PHJlY3QgeD0iLTEwIiB5PSIyNzQiIHdpZHRoPSIxMDAiIGhlaWdodD0iMzIiLz48cGF0aCBkPSJNMzA3IDI0NSBMMzc3IDI0NSBMNDExIDQ5MCBMMzIxIDQ5MCBaIi8+PHBhdGggZD0iTTM4MiAyOTYgTDQ5MCAzOTggTDQ5MCA0NTUgTDM5MCAzNTggWiIvPjwvZz48L21hc2s+PC9kZWZzPjxyZWN0IHdpZHRoPSI5NjAiIGhlaWdodD0iMzAwIiByeD0iMTgiIGZpbGw9InVybCgjYmcpIi8+PGcgc3Ryb2tlPSIjZmZmZmZmIiBzdHJva2Utb3BhY2l0eT0iLjA1Ij48cGF0aCBkPSJNMCA2MEg5NjBNMCAxMjBIOTYwTTAgMTgwSDk2ME0wIDI0MEg5NjAiLz48L2c+PGNpcmNsZSBjeD0iNzkwIiBjeT0iMTUwIiByPSIxMjgiIGZpbGw9IiM1ZWFhYjUiLz48ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSg2ODYgNDYpIHNjYWxlKC40MzMzKSI+PHJlY3Qgd2lkdGg9IjQ4MCIgaGVpZ2h0PSI0ODAiIGZpbGw9IiNmNGVmZTYiIG1hc2s9InVybCgjdG9yaWkpIi8+PC9nPjx0ZXh0IHg9IjU2IiB5PSI3OCIgZm9udC1mYW1pbHk9InVpLW1vbm9zcGFjZSxNZW5sbyxtb25vc3BhY2UiIGZvbnQtc2l6ZT0iMTMiIGxldHRlci1zcGFjaW5nPSIzIiBmaWxsPSIjNWVhYWI1Ij5TQU1PVVJBw48gQ09PUCDCtyBHTk8uTEFORDwvdGV4dD48dGV4dCB4PSI1MiIgeT0iMTYwIiBmb250LWZhbWlseT0ic3lzdGVtLXVpLC1hcHBsZS1zeXN0ZW0sU2Vnb2UgVUksc2Fucy1zZXJpZiIgZm9udC13ZWlnaHQ9IjgwMCIgZm9udC1zaXplPSI3NiIgZmlsbD0iI2ZmZmZmZiI+RGF2aWQgRy48L3RleHQ+PHRleHQgeD0iNTYiIHk9IjIwMCIgZm9udC1mYW1pbHk9InN5c3RlbS11aSwtYXBwbGUtc3lzdGVtLFNlZ29lIFVJLHNhbnMtc2VyaWYiIGZvbnQtc2l6ZT0iMjIiIGZpbGw9IiNlOGUyZDgiPkRldmVsb3BlciBlbmdpbmVlciBhdCBTYW1vdXJhw68gQ29vcDwvdGV4dD48dGV4dCB4PSI1NiIgeT0iMjM2IiBmb250LWZhbWlseT0idWktbW9ub3NwYWNlLE1lbmxvLG1vbm9zcGFjZSIgZm9udC1zaXplPSIxNiIgZmlsbD0iIzVlYWFiNSI+PC90ZXh0Pjx0ZXh0IHg9IjU2IiB5PSIyNjYiIGZvbnQtZmFtaWx5PSJ1aS1tb25vc3BhY2UsTWVubG8sbW9ub3NwYWNlIiBmb250LXNpemU9IjEyIiBmaWxsPSIjOGE4YThhIj5nbm8ubGFuZCBjb3JlIGNvbnRyaWJ1dG9yPC90ZXh0Pjwvc3ZnPg==)

I'm a developer engineer at [Samouraï Coop](https://www.samourai.world/), in [samcrew](/u/samcrew), and an [Epitech](https://www.epitech.eu/) graduate.

Contributing to gno.land since May 2025. GnoVM and chain fixes, docs including the getting started guide, and Peer Dev tutorials. I'm passionate about P2P, low level programming, travelling, urbanism and transportation. I'm a curious person who wants to contribute to the greater good. Open for contribution! 🙂

[GitHub](https://github.com/davd-gzl) · [Peer Dev on YouTube](https://www.youtube.com/@peerdevlearning) · [Personal wiki](https://davd-gzl.github.io/personal-wiki/)

## Activity

![Merged pull requests per month, by repository](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI3MjAiIGhlaWdodD0iMjcyIiB2aWV3Qm94PSIwIDAgNzIwIDI3MiI+PHN0eWxlPi5oe2ZvbnQ6NzAwIDI2cHggc2Fucy1zZXJpZn0uc3tmb250OjEzcHggc2Fucy1zZXJpZn0ubntmb250OjYwMCAxMXB4IHNhbnMtc2VyaWY7dGV4dC1hbmNob3I6bWlkZGxlfS5te2ZvbnQ6MTFweCBzYW5zLXNlcmlmO3RleHQtYW5jaG9yOm1pZGRsZX0udXtmb250OjEycHggc2Fucy1zZXJpZjt0ZXh0LWFuY2hvcjplbmR9PC9zdHlsZT48ZGVmcz48cGF0dGVybiBpZD0ibyIgd2lkdGg9IjUiIGhlaWdodD0iNSIgcGF0dGVyblVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgcGF0dGVyblRyYW5zZm9ybT0icm90YXRlKDQ1KSI+PHJlY3Qgd2lkdGg9IjIiIGhlaWdodD0iNSIgZmlsbD0iIzNkZGM5NyIvPjwvcGF0dGVybj48L2RlZnM+PHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjcyMCIgaGVpZ2h0PSIyNzIiIHJ4PSIxMiIgZmlsbD0iIzEwMjMxYyIvPjx0ZXh0IHg9IjI0IiB5PSI0MiIgY2xhc3M9ImgiIGZpbGw9IiNmZmZmZmYiPjEwNCBtZXJnZWQgcHVsbCByZXF1ZXN0czwvdGV4dD48dGV4dCB4PSIyNCIgeT0iNjYiIGNsYXNzPSJzIiBmaWxsPSIjOWZjOWI0Ij5wZXIgbW9udGgsIG9uIHB1YmxpYyBnbm8ubGFuZCByZXBvc2l0b3JpZXM8L3RleHQ+PHRleHQgeD0iNjk2IiB5PSI0MiIgY2xhc3M9InUiIGZpbGw9IiM5ZmM5YjQiPnVwZGF0ZWQgMjQgU2VwIDIwMjY8L3RleHQ+PHJlY3QgeD0iMjQiIHk9Ijg2IiB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIHJ4PSIwIiBmaWxsPSIjM2RkYzk3Ii8+PHRleHQgeD0iNDIiIHk9Ijk2IiBjbGFzcz0icyIgZmlsbD0iI2ZmZmZmZiI+Z25vbGFuZy9nbm8gNzA8L3RleHQ+PHJlY3QgeD0iMTU4IiB5PSI4NiIgd2lkdGg9IjEyIiBoZWlnaHQ9IjEyIiByeD0iMCIgZmlsbD0iIzdhYTJmZiIvPjx0ZXh0IHg9IjE3NiIgeT0iOTYiIGNsYXNzPSJzIiBmaWxsPSIjZmZmZmZmIj5nbm8tb25ib2FyZGluZy1ib3QgNjwvdGV4dD48cmVjdCB4PSIzMzQiIHk9Ijg2IiB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIHJ4PSIwIiBmaWxsPSIjYzA4NGZjIi8+PHRleHQgeD0iMzUyIiB5PSI5NiIgY2xhc3M9InMiIGZpbGw9IiNmZmZmZmYiPmdub2Rhb2tpdCA2PC90ZXh0PjxyZWN0IHg9IjQ0NyIgeT0iODYiIHdpZHRoPSIxMiIgaGVpZ2h0PSIxMiIgcng9IjAiIGZpbGw9IiNmNDcyYjYiLz48dGV4dCB4PSI0NjUiIHk9Ijk2IiBjbGFzcz0icyIgZmlsbD0iI2ZmZmZmZiI+YXdlc29tZS1nbm8gNTwvdGV4dD48cmVjdCB4PSI1NzQiIHk9Ijg2IiB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIHJ4PSIwIiBmaWxsPSIjOTRhM2I4Ii8+PHRleHQgeD0iNTkyIiB5PSI5NiIgY2xhc3M9InMiIGZpbGw9IiNmZmZmZmYiPk90aGVycyAxNzwvdGV4dD48cmVjdCB4PSIyNCIgeT0iMTA4IiB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIHJ4PSIwIiBmaWxsPSIjZmJiZjI0Ii8+PHRleHQgeD0iNDIiIHk9IjExOCIgY2xhc3M9InMiIGZpbGw9IiNmZmZmZmYiPlBlZXIgRGV2IDIzNCBjb21taXRzLCBkcmF3biAxIHBlciAxMDwvdGV4dD48cmVjdCB4PSIzMTIiIHk9IjEwOCIgd2lkdGg9IjEyIiBoZWlnaHQ9IjEyIiByeD0iMCIgZmlsbD0idXJsKCNvKSIvPjx0ZXh0IHg9IjMzMCIgeT0iMTE4IiBjbGFzcz0icyIgZmlsbD0iI2ZmZmZmZiI+Z25vbGFuZy9nbm8gcHVsbCByZXF1ZXN0cyBvcGVuZWQgMTMxPC90ZXh0PjxyZWN0IHg9IjQzIiB5PSIyMjciIHdpZHRoPSIxNSIgaGVpZ2h0PSIxMSIgcng9IjAiIGZpbGw9IiNmYmJmMjQiLz48dGV4dCB4PSI0MyIgeT0iMjU2IiBjbGFzcz0ibSIgZmlsbD0iIzlmYzliNCI+TWF5IDI1PC90ZXh0PjxyZWN0IHg9IjY3IiB5PSIyMzEiIHdpZHRoPSIxNSIgaGVpZ2h0PSI3IiByeD0iMCIgZmlsbD0idXJsKCNvKSIvPjxyZWN0IHg9IjgyIiB5PSIyMDMiIHdpZHRoPSIxNSIgaGVpZ2h0PSIzNSIgcng9IjAiIGZpbGw9IiNmYmJmMjQiLz48dGV4dCB4PSI4MiIgeT0iMjU2IiBjbGFzcz0ibSIgZmlsbD0iIzlmYzliNCI+SnVuPC90ZXh0PjxyZWN0IHg9IjEwNiIgeT0iMjI3IiB3aWR0aD0iMTUiIGhlaWdodD0iMTEiIHJ4PSIwIiBmaWxsPSJ1cmwoI28pIi8+PHJlY3QgeD0iMTIxIiB5PSIyMjMiIHdpZHRoPSIxNSIgaGVpZ2h0PSIxNSIgcng9IjAiIGZpbGw9IiMzZGRjOTciLz48cmVjdCB4PSIxMjEiIHk9IjIyMCIgd2lkdGg9IjE1IiBoZWlnaHQ9IjMiIHJ4PSIwIiBmaWxsPSIjOTRhM2I4Ii8+PHJlY3QgeD0iMTIxIiB5PSIyMDEiIHdpZHRoPSIxNSIgaGVpZ2h0PSIxOSIgcng9IjAiIGZpbGw9IiNmYmJmMjQiLz48dGV4dCB4PSIxMjgiIHk9IjE5NiIgY2xhc3M9Im4iIGZpbGw9IiNmZmZmZmYiPjU8L3RleHQ+PHRleHQgeD0iMTIxIiB5PSIyNTYiIGNsYXNzPSJtIiBmaWxsPSIjOWZjOWI0Ij5KdWw8L3RleHQ+PHJlY3QgeD0iMTYwIiB5PSIyMTkiIHdpZHRoPSIxNSIgaGVpZ2h0PSIxOSIgcng9IjAiIGZpbGw9IiNjMDg0ZmMiLz48cmVjdCB4PSIxNjAiIHk9IjIwOCIgd2lkdGg9IjE1IiBoZWlnaHQ9IjExIiByeD0iMCIgZmlsbD0iIzk0YTNiOCIvPjxyZWN0IHg9IjE2MCIgeT0iMTk3IiB3aWR0aD0iMTUiIGhlaWdodD0iMTEiIHJ4PSIwIiBmaWxsPSIjZmJiZjI0Ii8+PHRleHQgeD0iMTY3IiB5PSIxOTIiIGNsYXNzPSJuIiBmaWxsPSIjZmZmZmZmIj44PC90ZXh0Pjx0ZXh0IHg9IjE2MCIgeT0iMjU2IiBjbGFzcz0ibSIgZmlsbD0iIzlmYzliNCI+QXVnPC90ZXh0PjxyZWN0IHg9IjE4NCIgeT0iMjAzIiB3aWR0aD0iMTUiIGhlaWdodD0iMzUiIHJ4PSIwIiBmaWxsPSJ1cmwoI28pIi8+PHJlY3QgeD0iMTk5IiB5PSIyMjMiIHdpZHRoPSIxNSIgaGVpZ2h0PSIxNSIgcng9IjAiIGZpbGw9IiMzZGRjOTciLz48cmVjdCB4PSIxOTkiIHk9IjIxNiIgd2lkdGg9IjE1IiBoZWlnaHQ9IjciIHJ4PSIwIiBmaWxsPSIjZmJiZjI0Ii8+PHRleHQgeD0iMjA2IiB5PSIyMTEiIGNsYXNzPSJuIiBmaWxsPSIjZmZmZmZmIj40PC90ZXh0Pjx0ZXh0IHg9IjE5OSIgeT0iMjU2IiBjbGFzcz0ibSIgZmlsbD0iIzlmYzliNCI+U2VwPC90ZXh0PjxyZWN0IHg9IjIzOCIgeT0iMjM1IiB3aWR0aD0iMTUiIGhlaWdodD0iMyIgcng9IjAiIGZpbGw9IiMzZGRjOTciLz48cmVjdCB4PSIyMzgiIHk9IjIxNiIgd2lkdGg9IjE1IiBoZWlnaHQ9IjE5IiByeD0iMCIgZmlsbD0iIzk0YTNiOCIvPjxyZWN0IHg9IjIzOCIgeT0iMjA5IiB3aWR0aD0iMTUiIGhlaWdodD0iNyIgcng9IjAiIGZpbGw9IiNmYmJmMjQiLz48dGV4dCB4PSIyNDUiIHk9IjIwNCIgY2xhc3M9Im4iIGZpbGw9IiNmZmZmZmYiPjY8L3RleHQ+PHRleHQgeD0iMjM4IiB5PSIyNTYiIGNsYXNzPSJtIiBmaWxsPSIjOWZjOWI0Ij5PY3Q8L3RleHQ+PHJlY3QgeD0iMjYyIiB5PSIyMTEiIHdpZHRoPSIxNSIgaGVpZ2h0PSIyNyIgcng9IjAiIGZpbGw9InVybCgjbykiLz48cmVjdCB4PSIyNzciIHk9IjIzNSIgd2lkdGg9IjE1IiBoZWlnaHQ9IjMiIHJ4PSIwIiBmaWxsPSIjM2RkYzk3Ii8+PHJlY3QgeD0iMjc3IiB5PSIyMzIiIHdpZHRoPSIxNSIgaGVpZ2h0PSIzIiByeD0iMCIgZmlsbD0iI2MwODRmYyIvPjxyZWN0IHg9IjI3NyIgeT0iMjI5IiB3aWR0aD0iMTUiIGhlaWdodD0iMyIgcng9IjAiIGZpbGw9IiM5NGEzYjgiLz48cmVjdCB4PSIyNzciIHk9IjIyMiIgd2lkdGg9IjE1IiBoZWlnaHQ9IjciIHJ4PSIwIiBmaWxsPSIjZmJiZjI0Ii8+PHRleHQgeD0iMjg0IiB5PSIyMTciIGNsYXNzPSJuIiBmaWxsPSIjZmZmZmZmIj4zPC90ZXh0Pjx0ZXh0IHg9IjI3NyIgeT0iMjU2IiBjbGFzcz0ibSIgZmlsbD0iIzlmYzliNCI+Tm92PC90ZXh0PjxyZWN0IHg9IjMwMSIgeT0iMjExIiB3aWR0aD0iMTUiIGhlaWdodD0iMjciIHJ4PSIwIiBmaWxsPSJ1cmwoI28pIi8+PHJlY3QgeD0iMzE2IiB5PSIyMzUiIHdpZHRoPSIxNSIgaGVpZ2h0PSIzIiByeD0iMCIgZmlsbD0iIzNkZGM5NyIvPjx0ZXh0IHg9IjMyMyIgeT0iMjMwIiBjbGFzcz0ibiIgZmlsbD0iI2ZmZmZmZiI+MTwvdGV4dD48dGV4dCB4PSIzMTYiIHk9IjI1NiIgY2xhc3M9Im0iIGZpbGw9IiM5ZmM5YjQiPkRlYzwvdGV4dD48cmVjdCB4PSIzNDAiIHk9IjIwNyIgd2lkdGg9IjE1IiBoZWlnaHQ9IjMxIiByeD0iMCIgZmlsbD0idXJsKCNvKSIvPjxyZWN0IHg9IjM1NSIgeT0iMjM1IiB3aWR0aD0iMTUiIGhlaWdodD0iMyIgcng9IjAiIGZpbGw9IiMzZGRjOTciLz48dGV4dCB4PSIzNjIiIHk9IjIzMCIgY2xhc3M9Im4iIGZpbGw9IiNmZmZmZmYiPjE8L3RleHQ+PHRleHQgeD0iMzU1IiB5PSIyNTYiIGNsYXNzPSJtIiBmaWxsPSIjOWZjOWI0Ij5KYW4gMjY8L3RleHQ+PHJlY3QgeD0iMzc5IiB5PSIxOTUiIHdpZHRoPSIxNSIgaGVpZ2h0PSI0MyIgcng9IjAiIGZpbGw9InVybCgjbykiLz48cmVjdCB4PSIzOTQiIHk9IjIxNSIgd2lkdGg9IjE1IiBoZWlnaHQ9IjIzIiByeD0iMCIgZmlsbD0iIzNkZGM5NyIvPjx0ZXh0IHg9IjQwMSIgeT0iMjEwIiBjbGFzcz0ibiIgZmlsbD0iI2ZmZmZmZiI+NjwvdGV4dD48dGV4dCB4PSIzOTQiIHk9IjI1NiIgY2xhc3M9Im0iIGZpbGw9IiM5ZmM5YjQiPkZlYjwvdGV4dD48cmVjdCB4PSI0MTgiIHk9IjE1NiIgd2lkdGg9IjE1IiBoZWlnaHQ9IjgyIiByeD0iMCIgZmlsbD0idXJsKCNvKSIvPjxyZWN0IHg9IjQzMyIgeT0iMjE5IiB3aWR0aD0iMTUiIGhlaWdodD0iMTkiIHJ4PSIwIiBmaWxsPSIjM2RkYzk3Ii8+PHRleHQgeD0iNDQwIiB5PSIyMTQiIGNsYXNzPSJuIiBmaWxsPSIjZmZmZmZmIj41PC90ZXh0Pjx0ZXh0IHg9IjQzMyIgeT0iMjU2IiBjbGFzcz0ibSIgZmlsbD0iIzlmYzliNCI+TWFyPC90ZXh0PjxyZWN0IHg9IjQ1NyIgeT0iMTcyIiB3aWR0aD0iMTUiIGhlaWdodD0iNjYiIHJ4PSIwIiBmaWxsPSJ1cmwoI28pIi8+PHJlY3QgeD0iNDcyIiB5PSIxOTIiIHdpZHRoPSIxNSIgaGVpZ2h0PSI0NiIgcng9IjAiIGZpbGw9IiMzZGRjOTciLz48cmVjdCB4PSI0NzIiIHk9IjE4NSIgd2lkdGg9IjE1IiBoZWlnaHQ9IjciIHJ4PSIwIiBmaWxsPSIjOTRhM2I4Ii8+PHRleHQgeD0iNDc5IiB5PSIxODAiIGNsYXNzPSJuIiBmaWxsPSIjZmZmZmZmIj4xNDwvdGV4dD48dGV4dCB4PSI0NzIiIHk9IjI1NiIgY2xhc3M9Im0iIGZpbGw9IiM5ZmM5YjQiPkFwcjwvdGV4dD48cmVjdCB4PSI0OTYiIHk9IjE2NCIgd2lkdGg9IjE1IiBoZWlnaHQ9Ijc0IiByeD0iMCIgZmlsbD0idXJsKCNvKSIvPjxyZWN0IHg9IjUxMSIgeT0iMjExIiB3aWR0aD0iMTUiIGhlaWdodD0iMjciIHJ4PSIwIiBmaWxsPSIjM2RkYzk3Ii8+PHJlY3QgeD0iNTExIiB5PSIyMDgiIHdpZHRoPSIxNSIgaGVpZ2h0PSIzIiByeD0iMCIgZmlsbD0iIzk0YTNiOCIvPjx0ZXh0IHg9IjUxOCIgeT0iMjAzIiBjbGFzcz0ibiIgZmlsbD0iI2ZmZmZmZiI+ODwvdGV4dD48dGV4dCB4PSI1MTEiIHk9IjI1NiIgY2xhc3M9Im0iIGZpbGw9IiM5ZmM5YjQiPk1heTwvdGV4dD48cmVjdCB4PSI1MzUiIHk9IjIxMSIgd2lkdGg9IjE1IiBoZWlnaHQ9IjI3IiByeD0iMCIgZmlsbD0idXJsKCNvKSIvPjxyZWN0IHg9IjU1MCIgeT0iMTc2IiB3aWR0aD0iMTUiIGhlaWdodD0iNjIiIHJ4PSIwIiBmaWxsPSIjM2RkYzk3Ii8+PHJlY3QgeD0iNTUwIiB5PSIxNTMiIHdpZHRoPSIxNSIgaGVpZ2h0PSIyMyIgcng9IjAiIGZpbGw9IiM3YWEyZmYiLz48cmVjdCB4PSI1NTAiIHk9IjE1MCIgd2lkdGg9IjE1IiBoZWlnaHQ9IjMiIHJ4PSIwIiBmaWxsPSIjOTRhM2I4Ii8+PHRleHQgeD0iNTU3IiB5PSIxNDUiIGNsYXNzPSJuIiBmaWxsPSIjZmZmZmZmIj4yMzwvdGV4dD48dGV4dCB4PSI1NTAiIHk9IjI1NiIgY2xhc3M9Im0iIGZpbGw9IiM5ZmM5YjQiPkp1bjwvdGV4dD48cmVjdCB4PSI1NzQiIHk9IjE4MCIgd2lkdGg9IjE1IiBoZWlnaHQ9IjU4IiByeD0iMCIgZmlsbD0idXJsKCNvKSIvPjxyZWN0IHg9IjU4OSIgeT0iMjA3IiB3aWR0aD0iMTUiIGhlaWdodD0iMzEiIHJ4PSIwIiBmaWxsPSIjM2RkYzk3Ii8+PHJlY3QgeD0iNTg5IiB5PSIxODgiIHdpZHRoPSIxNSIgaGVpZ2h0PSIxOSIgcng9IjAiIGZpbGw9IiNmNDcyYjYiLz48dGV4dCB4PSI1OTYiIHk9IjE4MyIgY2xhc3M9Im4iIGZpbGw9IiNmZmZmZmYiPjEzPC90ZXh0Pjx0ZXh0IHg9IjU4OSIgeT0iMjU2IiBjbGFzcz0ibSIgZmlsbD0iIzlmYzliNCI+SnVsPC90ZXh0PjxyZWN0IHg9IjYxMyIgeT0iMjI3IiB3aWR0aD0iMTUiIGhlaWdodD0iMTEiIHJ4PSIwIiBmaWxsPSJ1cmwoI28pIi8+PHJlY3QgeD0iNjI4IiB5PSIyMzEiIHdpZHRoPSIxNSIgaGVpZ2h0PSI3IiByeD0iMCIgZmlsbD0iIzNkZGM5NyIvPjx0ZXh0IHg9IjYzNSIgeT0iMjI2IiBjbGFzcz0ibiIgZmlsbD0iI2ZmZmZmZiI+MjwvdGV4dD48dGV4dCB4PSI2MjgiIHk9IjI1NiIgY2xhc3M9Im0iIGZpbGw9IiM5ZmM5YjQiPkF1ZzwvdGV4dD48cmVjdCB4PSI2NTIiIHk9IjIzMSIgd2lkdGg9IjE1IiBoZWlnaHQ9IjciIHJ4PSIwIiBmaWxsPSJ1cmwoI28pIi8+PHJlY3QgeD0iNjY3IiB5PSIyMzEiIHdpZHRoPSIxNSIgaGVpZ2h0PSI3IiByeD0iMCIgZmlsbD0iIzNkZGM5NyIvPjxyZWN0IHg9IjY2NyIgeT0iMjIwIiB3aWR0aD0iMTUiIGhlaWdodD0iMTEiIHJ4PSIwIiBmaWxsPSIjOTRhM2I4Ii8+PHRleHQgeD0iNjc0IiB5PSIyMTUiIGNsYXNzPSJuIiBmaWxsPSIjZmZmZmZmIj41PC90ZXh0Pjx0ZXh0IHg9IjY2NyIgeT0iMjU2IiBjbGFzcz0ibSIgZmlsbD0iIzlmYzliNCI+U2VwPC90ZXh0Pjwvc3ZnPg==)


![Reviews per month, by repository](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI3MjAiIGhlaWdodD0iMjUwIiB2aWV3Qm94PSIwIDAgNzIwIDI1MCI+PHN0eWxlPi5oe2ZvbnQ6NzAwIDI2cHggc2Fucy1zZXJpZn0uc3tmb250OjEzcHggc2Fucy1zZXJpZn0ubntmb250OjYwMCAxMXB4IHNhbnMtc2VyaWY7dGV4dC1hbmNob3I6bWlkZGxlfS5te2ZvbnQ6MTFweCBzYW5zLXNlcmlmO3RleHQtYW5jaG9yOm1pZGRsZX0udXtmb250OjEycHggc2Fucy1zZXJpZjt0ZXh0LWFuY2hvcjplbmR9PC9zdHlsZT48ZGVmcz48cGF0dGVybiBpZD0ibyIgd2lkdGg9IjUiIGhlaWdodD0iNSIgcGF0dGVyblVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgcGF0dGVyblRyYW5zZm9ybT0icm90YXRlKDQ1KSI+PHJlY3Qgd2lkdGg9IjIiIGhlaWdodD0iNSIgZmlsbD0iIzNkZGM5NyIvPjwvcGF0dGVybj48L2RlZnM+PHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjcyMCIgaGVpZ2h0PSIyNTAiIHJ4PSIxMiIgZmlsbD0iIzEwMjMxYyIvPjx0ZXh0IHg9IjI0IiB5PSI0MiIgY2xhc3M9ImgiIGZpbGw9IiNmZmZmZmYiPjQwNCByZXZpZXdzPC90ZXh0Pjx0ZXh0IHg9IjI0IiB5PSI2NiIgY2xhc3M9InMiIGZpbGw9IiM5ZmM5YjQiPnBlciBtb250aCwgb24gdGhlIHNhbWUgcmVwb3NpdG9yaWVzPC90ZXh0Pjx0ZXh0IHg9IjY5NiIgeT0iNDIiIGNsYXNzPSJ1IiBmaWxsPSIjOWZjOWI0Ij51cGRhdGVkIDI0IFNlcCAyMDI2PC90ZXh0PjxyZWN0IHg9IjI0IiB5PSI4NiIgd2lkdGg9IjEyIiBoZWlnaHQ9IjEyIiByeD0iMCIgZmlsbD0iIzNkZGM5NyIvPjx0ZXh0IHg9IjQyIiB5PSI5NiIgY2xhc3M9InMiIGZpbGw9IiNmZmZmZmYiPmdub2xhbmcvZ25vIDM1NzwvdGV4dD48cmVjdCB4PSIxNjUiIHk9Ijg2IiB3aWR0aD0iMTIiIGhlaWdodD0iMTIiIHJ4PSIwIiBmaWxsPSIjOTRhM2I4Ii8+PHRleHQgeD0iMTgzIiB5PSI5NiIgY2xhc3M9InMiIGZpbGw9IiNmZmZmZmYiPk90aGVycyA0NzwvdGV4dD48cmVjdCB4PSIzMCIgeT0iMjE1IiB3aWR0aD0iMjYiIGhlaWdodD0iMSIgcng9IjAiIGZpbGw9IiM5NGEzYjgiLz48dGV4dCB4PSI0MyIgeT0iMjEwIiBjbGFzcz0ibiIgZmlsbD0iI2ZmZmZmZiI+MTwvdGV4dD48dGV4dCB4PSI0MyIgeT0iMjM0IiBjbGFzcz0ibSIgZmlsbD0iIzlmYzliNCI+TWF5IDI1PC90ZXh0PjxyZWN0IHg9IjY5IiB5PSIyMTQiIHdpZHRoPSIyNiIgaGVpZ2h0PSIyIiByeD0iMCIgZmlsbD0iIzJjNGEzZSIvPjx0ZXh0IHg9IjgyIiB5PSIyMzQiIGNsYXNzPSJtIiBmaWxsPSIjOWZjOWI0Ij5KdW48L3RleHQ+PHJlY3QgeD0iMTA4IiB5PSIyMTQiIHdpZHRoPSIyNiIgaGVpZ2h0PSIyIiByeD0iMCIgZmlsbD0iIzJjNGEzZSIvPjx0ZXh0IHg9IjEyMSIgeT0iMjM0IiBjbGFzcz0ibSIgZmlsbD0iIzlmYzliNCI+SnVsPC90ZXh0PjxyZWN0IHg9IjE0NyIgeT0iMTk4IiB3aWR0aD0iMjYiIGhlaWdodD0iMTgiIHJ4PSIwIiBmaWxsPSIjOTRhM2I4Ii8+PHRleHQgeD0iMTYwIiB5PSIxOTMiIGNsYXNzPSJuIiBmaWxsPSIjZmZmZmZmIj4xMTwvdGV4dD48dGV4dCB4PSIxNjAiIHk9IjIzNCIgY2xhc3M9Im0iIGZpbGw9IiM5ZmM5YjQiPkF1ZzwvdGV4dD48cmVjdCB4PSIxODYiIHk9IjE5OCIgd2lkdGg9IjI2IiBoZWlnaHQ9IjE4IiByeD0iMCIgZmlsbD0iIzNkZGM5NyIvPjxyZWN0IHg9IjE4NiIgeT0iMTg3IiB3aWR0aD0iMjYiIGhlaWdodD0iMTEiIHJ4PSIwIiBmaWxsPSIjOTRhM2I4Ii8+PHRleHQgeD0iMTk5IiB5PSIxODIiIGNsYXNzPSJuIiBmaWxsPSIjZmZmZmZmIj4xODwvdGV4dD48dGV4dCB4PSIxOTkiIHk9IjIzNCIgY2xhc3M9Im0iIGZpbGw9IiM5ZmM5YjQiPlNlcDwvdGV4dD48cmVjdCB4PSIyMjUiIHk9IjIxMyIgd2lkdGg9IjI2IiBoZWlnaHQ9IjMiIHJ4PSIwIiBmaWxsPSIjM2RkYzk3Ii8+PHJlY3QgeD0iMjI1IiB5PSIxOTIiIHdpZHRoPSIyNiIgaGVpZ2h0PSIyMSIgcng9IjAiIGZpbGw9IiM5NGEzYjgiLz48dGV4dCB4PSIyMzgiIHk9IjE4NyIgY2xhc3M9Im4iIGZpbGw9IiNmZmZmZmYiPjE1PC90ZXh0Pjx0ZXh0IHg9IjIzOCIgeT0iMjM0IiBjbGFzcz0ibSIgZmlsbD0iIzlmYzliNCI+T2N0PC90ZXh0PjxyZWN0IHg9IjI2NCIgeT0iMjA4IiB3aWR0aD0iMjYiIGhlaWdodD0iOCIgcng9IjAiIGZpbGw9IiMzZGRjOTciLz48cmVjdCB4PSIyNjQiIHk9IjIwNyIgd2lkdGg9IjI2IiBoZWlnaHQ9IjEiIHJ4PSIwIiBmaWxsPSIjOTRhM2I4Ii8+PHRleHQgeD0iMjc3IiB5PSIyMDIiIGNsYXNzPSJuIiBmaWxsPSIjZmZmZmZmIj42PC90ZXh0Pjx0ZXh0IHg9IjI3NyIgeT0iMjM0IiBjbGFzcz0ibSIgZmlsbD0iIzlmYzliNCI+Tm92PC90ZXh0PjxyZWN0IHg9IjMwMyIgeT0iMTk1IiB3aWR0aD0iMjYiIGhlaWdodD0iMjEiIHJ4PSIwIiBmaWxsPSIjM2RkYzk3Ii8+PHRleHQgeD0iMzE2IiB5PSIxOTAiIGNsYXNzPSJuIiBmaWxsPSIjZmZmZmZmIj4xMzwvdGV4dD48dGV4dCB4PSIzMTYiIHk9IjIzNCIgY2xhc3M9Im0iIGZpbGw9IiM5ZmM5YjQiPkRlYzwvdGV4dD48cmVjdCB4PSIzNDIiIHk9IjE3NiIgd2lkdGg9IjI2IiBoZWlnaHQ9IjQwIiByeD0iMCIgZmlsbD0iIzNkZGM5NyIvPjx0ZXh0IHg9IjM1NSIgeT0iMTcxIiBjbGFzcz0ibiIgZmlsbD0iI2ZmZmZmZiI+MjQ8L3RleHQ+PHRleHQgeD0iMzU1IiB5PSIyMzQiIGNsYXNzPSJtIiBmaWxsPSIjOWZjOWI0Ij5KYW4gMjY8L3RleHQ+PHJlY3QgeD0iMzgxIiB5PSIxNjMiIHdpZHRoPSIyNiIgaGVpZ2h0PSI1MyIgcng9IjAiIGZpbGw9IiMzZGRjOTciLz48cmVjdCB4PSIzODEiIHk9IjE2MCIgd2lkdGg9IjI2IiBoZWlnaHQ9IjMiIHJ4PSIwIiBmaWxsPSIjOTRhM2I4Ii8+PHRleHQgeD0iMzk0IiB5PSIxNTUiIGNsYXNzPSJuIiBmaWxsPSIjZmZmZmZmIj4zNDwvdGV4dD48dGV4dCB4PSIzOTQiIHk9IjIzNCIgY2xhc3M9Im0iIGZpbGw9IiM5ZmM5YjQiPkZlYjwvdGV4dD48cmVjdCB4PSI0MjAiIHk9IjEzOCIgd2lkdGg9IjI2IiBoZWlnaHQ9Ijc4IiByeD0iMCIgZmlsbD0iIzNkZGM5NyIvPjx0ZXh0IHg9IjQzMyIgeT0iMTMzIiBjbGFzcz0ibiIgZmlsbD0iI2ZmZmZmZiI+NDc8L3RleHQ+PHRleHQgeD0iNDMzIiB5PSIyMzQiIGNsYXNzPSJtIiBmaWxsPSIjOWZjOWI0Ij5NYXI8L3RleHQ+PHJlY3QgeD0iNDU5IiB5PSIxNjYiIHdpZHRoPSIyNiIgaGVpZ2h0PSI1MCIgcng9IjAiIGZpbGw9IiMzZGRjOTciLz48cmVjdCB4PSI0NTkiIHk9IjE2NSIgd2lkdGg9IjI2IiBoZWlnaHQ9IjEiIHJ4PSIwIiBmaWxsPSIjOTRhM2I4Ii8+PHRleHQgeD0iNDcyIiB5PSIxNjAiIGNsYXNzPSJuIiBmaWxsPSIjZmZmZmZmIj4zMTwvdGV4dD48dGV4dCB4PSI0NzIiIHk9IjIzNCIgY2xhc3M9Im0iIGZpbGw9IiM5ZmM5YjQiPkFwcjwvdGV4dD48cmVjdCB4PSI0OTgiIHk9IjE2MCIgd2lkdGg9IjI2IiBoZWlnaHQ9IjU2IiByeD0iMCIgZmlsbD0iIzNkZGM5NyIvPjx0ZXh0IHg9IjUxMSIgeT0iMTU1IiBjbGFzcz0ibiIgZmlsbD0iI2ZmZmZmZiI+MzQ8L3RleHQ+PHRleHQgeD0iNTExIiB5PSIyMzQiIGNsYXNzPSJtIiBmaWxsPSIjOWZjOWI0Ij5NYXk8L3RleHQ+PHJlY3QgeD0iNTM3IiB5PSIxMzUiIHdpZHRoPSIyNiIgaGVpZ2h0PSI4MSIgcng9IjAiIGZpbGw9IiMzZGRjOTciLz48cmVjdCB4PSI1MzciIHk9IjEyNyIgd2lkdGg9IjI2IiBoZWlnaHQ9IjgiIHJ4PSIwIiBmaWxsPSIjOTRhM2I4Ii8+PHRleHQgeD0iNTUwIiB5PSIxMjIiIGNsYXNzPSJuIiBmaWxsPSIjZmZmZmZmIj41NDwvdGV4dD48dGV4dCB4PSI1NTAiIHk9IjIzNCIgY2xhc3M9Im0iIGZpbGw9IiM5ZmM5YjQiPkp1bjwvdGV4dD48cmVjdCB4PSI1NzYiIHk9IjEzMSIgd2lkdGg9IjI2IiBoZWlnaHQ9Ijg1IiByeD0iMCIgZmlsbD0iIzNkZGM5NyIvPjxyZWN0IHg9IjU3NiIgeT0iMTMwIiB3aWR0aD0iMjYiIGhlaWdodD0iMSIgcng9IjAiIGZpbGw9IiM5NGEzYjgiLz48dGV4dCB4PSI1ODkiIHk9IjEyNSIgY2xhc3M9Im4iIGZpbGw9IiNmZmZmZmYiPjUyPC90ZXh0Pjx0ZXh0IHg9IjU4OSIgeT0iMjM0IiBjbGFzcz0ibSIgZmlsbD0iIzlmYzliNCI+SnVsPC90ZXh0PjxyZWN0IHg9IjYxNSIgeT0iMTU4IiB3aWR0aD0iMjYiIGhlaWdodD0iNTgiIHJ4PSIwIiBmaWxsPSIjM2RkYzk3Ii8+PHRleHQgeD0iNjI4IiB5PSIxNTMiIGNsYXNzPSJuIiBmaWxsPSIjZmZmZmZmIj4zNTwvdGV4dD48dGV4dCB4PSI2MjgiIHk9IjIzNCIgY2xhc3M9Im0iIGZpbGw9IiM5ZmM5YjQiPkF1ZzwvdGV4dD48cmVjdCB4PSI2NTQiIHk9IjE3NiIgd2lkdGg9IjI2IiBoZWlnaHQ9IjQwIiByeD0iMCIgZmlsbD0iIzNkZGM5NyIvPjxyZWN0IHg9IjY1NCIgeT0iMTY4IiB3aWR0aD0iMjYiIGhlaWdodD0iOCIgcng9IjAiIGZpbGw9IiM5NGEzYjgiLz48dGV4dCB4PSI2NjciIHk9IjE2MyIgY2xhc3M9Im4iIGZpbGw9IiNmZmZmZmYiPjI5PC90ZXh0Pjx0ZXh0IHg9IjY2NyIgeT0iMjM0IiBjbGFzcz0ibSIgZmlsbD0iIzlmYzliNCI+U2VwPC90ZXh0Pjwvc3ZnPg==)


## Gno core

Most of my work goes into [gnolang/gno](https://github.com/gnolang/gno), the [gno.land](https://gno.land) monorepo. [All my merged pull requests are on GitHub](https://github.com/gnolang/gno/pulls?q=is%3Apr+author%3Adavd-gzl+is%3Amerged).

![Pull requests by area, merged into gnolang/gno](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI3MjAiIGhlaWdodD0iMzAwIiB2aWV3Qm94PSIwIDAgNzIwIDMwMCI+PHN0eWxlPi5oe2ZvbnQ6NzAwIDI2cHggc2Fucy1zZXJpZn0uc3tmb250OjEzcHggc2Fucy1zZXJpZn0udHtmb250OjcwMCAzNHB4IHNhbnMtc2VyaWY7dGV4dC1hbmNob3I6bWlkZGxlfS5je2ZvbnQ6MTNweCBzYW5zLXNlcmlmO3RleHQtYW5jaG9yOm1pZGRsZX0ubHtmb250OjE1cHggc2Fucy1zZXJpZn0ucHtmb250OjEzcHggc2Fucy1zZXJpZjt0ZXh0LWFuY2hvcjplbmR9LnV7Zm9udDoxMnB4IHNhbnMtc2VyaWY7dGV4dC1hbmNob3I6ZW5kfTwvc3R5bGU+PHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjcyMCIgaGVpZ2h0PSIzMDAiIHJ4PSIxMiIgZmlsbD0iIzEwMjMxYyIvPjx0ZXh0IHg9IjI0IiB5PSI0MiIgY2xhc3M9ImgiIGZpbGw9IiNmZmZmZmYiPlB1bGwgcmVxdWVzdHMgYnkgYXJlYTwvdGV4dD48dGV4dCB4PSIyNCIgeT0iNjYiIGNsYXNzPSJzIiBmaWxsPSIjOWZjOWI0Ij5tZXJnZWQgaW50byBnbm9sYW5nL2dubzwvdGV4dD48dGV4dCB4PSI2OTYiIHk9IjQyIiBjbGFzcz0idSIgZmlsbD0iIzlmYzliNCI+dXBkYXRlZCAyNCBTZXAgMjAyNjwvdGV4dD48Y2lyY2xlIGN4PSIxNDAiIGN5PSIxOTAiIHI9IjgwIiBmaWxsPSJub25lIiBzdHJva2U9IiMzZGRjOTciIHN0cm9rZS13aWR0aD0iMzQiIHBhdGhMZW5ndGg9IjEwMDAiIHN0cm9rZS1kYXNoYXJyYXk9IjM3MSAxMDAwIiBzdHJva2UtZGFzaG9mZnNldD0iMCIgdHJhbnNmb3JtPSJyb3RhdGUoLTkwIDE0MCAxOTApIi8+PGNpcmNsZSBjeD0iMTQwIiBjeT0iMTkwIiByPSI4MCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjN2FhMmZmIiBzdHJva2Utd2lkdGg9IjM0IiBwYXRoTGVuZ3RoPSIxMDAwIiBzdHJva2UtZGFzaGFycmF5PSIyNDIgMTAwMCIgc3Ryb2tlLWRhc2hvZmZzZXQ9Ii0zNzEiIHRyYW5zZm9ybT0icm90YXRlKC05MCAxNDAgMTkwKSIvPjxjaXJjbGUgY3g9IjE0MCIgY3k9IjE5MCIgcj0iODAiIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2MwODRmYyIgc3Ryb2tlLXdpZHRoPSIzNCIgcGF0aExlbmd0aD0iMTAwMCIgc3Ryb2tlLWRhc2hhcnJheT0iMjAwIDEwMDAiIHN0cm9rZS1kYXNob2Zmc2V0PSItNjEzIiB0cmFuc2Zvcm09InJvdGF0ZSgtOTAgMTQwIDE5MCkiLz48Y2lyY2xlIGN4PSIxNDAiIGN5PSIxOTAiIHI9IjgwIiBmaWxsPSJub25lIiBzdHJva2U9IiNmNDcyYjYiIHN0cm9rZS13aWR0aD0iMzQiIHBhdGhMZW5ndGg9IjEwMDAiIHN0cm9rZS1kYXNoYXJyYXk9IjEyOCAxMDAwIiBzdHJva2UtZGFzaG9mZnNldD0iLTgxMyIgdHJhbnNmb3JtPSJyb3RhdGUoLTkwIDE0MCAxOTApIi8+PGNpcmNsZSBjeD0iMTQwIiBjeT0iMTkwIiByPSI4MCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjMmRkNGJmIiBzdHJva2Utd2lkdGg9IjM0IiBwYXRoTGVuZ3RoPSIxMDAwIiBzdHJva2UtZGFzaGFycmF5PSI1OSAxMDAwIiBzdHJva2UtZGFzaG9mZnNldD0iLTk0MSIgdHJhbnNmb3JtPSJyb3RhdGUoLTkwIDE0MCAxOTApIi8+PHRleHQgeD0iMTQwIiB5PSIxOTgiIGNsYXNzPSJ0IiBmaWxsPSIjZmZmZmZmIj43MDwvdGV4dD48dGV4dCB4PSIxNDAiIHk9IjIxOCIgY2xhc3M9ImMiIGZpbGw9IiM5ZmM5YjQiPm1lcmdlZDwvdGV4dD48cmVjdCB4PSIyODAiIHk9IjExOCIgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiByeD0iMyIgZmlsbD0iIzNkZGM5NyIvPjx0ZXh0IHg9IjMwNCIgeT0iMTMwIiBjbGFzcz0ibCIgZmlsbD0iI2ZmZmZmZiI+RG9jczwvdGV4dD48dGV4dCB4PSI2MzYiIHk9IjEzMCIgY2xhc3M9InAiIGZpbGw9IiNmZmZmZmYiPjI2PC90ZXh0Pjx0ZXh0IHg9IjY5NiIgeT0iMTMwIiBjbGFzcz0icCIgZmlsbD0iIzlmYzliNCI+MzclPC90ZXh0PjxyZWN0IHg9IjI4MCIgeT0iMTQ4IiB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHJ4PSIzIiBmaWxsPSIjN2FhMmZmIi8+PHRleHQgeD0iMzA0IiB5PSIxNjAiIGNsYXNzPSJsIiBmaWxsPSIjZmZmZmZmIj5Hbm9WTTwvdGV4dD48dGV4dCB4PSI2MzYiIHk9IjE2MCIgY2xhc3M9InAiIGZpbGw9IiNmZmZmZmYiPjE3PC90ZXh0Pjx0ZXh0IHg9IjY5NiIgeT0iMTYwIiBjbGFzcz0icCIgZmlsbD0iIzlmYzliNCI+MjQlPC90ZXh0PjxyZWN0IHg9IjI4MCIgeT0iMTc4IiB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHJ4PSIzIiBmaWxsPSIjYzA4NGZjIi8+PHRleHQgeD0iMzA0IiB5PSIxOTAiIGNsYXNzPSJsIiBmaWxsPSIjZmZmZmZmIj5FeGFtcGxlcyBhbmQgcmVhbG1zPC90ZXh0Pjx0ZXh0IHg9IjYzNiIgeT0iMTkwIiBjbGFzcz0icCIgZmlsbD0iI2ZmZmZmZiI+MTQ8L3RleHQ+PHRleHQgeD0iNjk2IiB5PSIxOTAiIGNsYXNzPSJwIiBmaWxsPSIjOWZjOWI0Ij4yMCU8L3RleHQ+PHJlY3QgeD0iMjgwIiB5PSIyMDgiIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgcng9IjMiIGZpbGw9IiNmNDcyYjYiLz48dGV4dCB4PSIzMDQiIHk9IjIyMCIgY2xhc3M9ImwiIGZpbGw9IiNmZmZmZmYiPkNoYWluOiB0bTIsIGNvbnNlbnN1cywgcGFja2FnZSBsb2FkaW5nPC90ZXh0Pjx0ZXh0IHg9IjYzNiIgeT0iMjIwIiBjbGFzcz0icCIgZmlsbD0iI2ZmZmZmZiI+OTwvdGV4dD48dGV4dCB4PSI2OTYiIHk9IjIyMCIgY2xhc3M9InAiIGZpbGw9IiM5ZmM5YjQiPjEyJTwvdGV4dD48cmVjdCB4PSIyODAiIHk9IjIzOCIgd2lkdGg9IjE0IiBoZWlnaHQ9IjE0IiByeD0iMyIgZmlsbD0iIzJkZDRiZiIvPjx0ZXh0IHg9IjMwNCIgeT0iMjUwIiBjbGFzcz0ibCIgZmlsbD0iI2ZmZmZmZiI+VG9vbHM6IGdub3dlYiwgZ25va2V5LCBnbm9kZXY8L3RleHQ+PHRleHQgeD0iNjM2IiB5PSIyNTAiIGNsYXNzPSJwIiBmaWxsPSIjZmZmZmZmIj40PC90ZXh0Pjx0ZXh0IHg9IjY5NiIgeT0iMjUwIiBjbGFzcz0icCIgZmlsbD0iIzlmYzliNCI+NSU8L3RleHQ+PC9zdmc+)


## Projects

| Project | What I did |
| --- | --- |
| [GnoVM, explained](https://samouraiworld.github.io/gno-agent-workspace/) | I wrote a guide to how the GnoVM works, for Go developers who have never opened it: parsing, type-checking, the preprocess pass, the stack machine, realm storage and gas. |
| [gnodaokit](https://github.com/samouraiworld/gnodaokit) | A toolkit for building DAOs on gno.land. [I contributed](https://github.com/samouraiworld/gnodaokit/pulls?q=is%3Apr+author%3Adavd-gzl+is%3Amerged) documentation, contributor instructions and a guided setup for the demo DAO. |
| [awesome-gno](https://github.com/gnoverse/awesome-gno) | The curated list of gno.land resources. [I contributed](https://github.com/gnoverse/awesome-gno/pulls?q=is%3Apr+author%3Adavd-gzl+is%3Amerged) new entries, Peer Dev, r/docs and tx-exports among them, and a cleanup of moved links and outdated tutorials. |

## Peer Dev

I teach gno.land on [Peer Dev](https://www.youtube.com/@peerdevlearning), a YouTube channel of developer tutorials, from an empty machine to GovDAO. [Watch the gno.land playlist](https://www.youtube.com/playlist?list=PLJZrQikyfMc-kBojXgAojOz4UQPuq4DiY).

The videos date from 2025, so some commands and screens are out of date. The main ideas still hold.

- [Deploying Gno Packages](https://www.youtube.com/watch?v=B7bSreCwIls)
- [Create your first dApp](https://www.youtube.com/watch?v=z5Qtc0Nuyqg)
- [Governance DAO (GovDAO)](https://www.youtube.com/watch?v=jM-6ezyn_v4)
- [Interrealm specification](https://www.youtube.com/watch?v=JJju7-GeRbA)
- [Gno VS Solidity](https://www.youtube.com/watch?v=Oi77hvJCVbU)

## Unrelated projects

Personal projects outside gno.land.

| Project | What it is |
| --- | --- |
| [MAX-Finder](https://offware-apps.github.io/MAX-Finder/) (WIP) | An open-source finder for bookable MAX JEUNE and MAX SENIOR train seats, built on SNCF open data. |
| [Postcards](https://offware-apps.github.io/Postcards/) (WIP) | A map of every place you have been, kept private and offline in one file you own. |

## Gnordle

Guess today's five-letter word in six tries. Same word for everyone, a new one every day, no wallet needed. [Play puzzle #47](/r/g1rayfgklwl0aspz488wvrcrvt7t2quy6q06lgk2/home:wordle)


## Hearts

**1** so far. [Send one](/r/g1rayfgklwl0aspz488wvrcrvt7t2quy6q06lgk2/home$help&func=Heart): one transaction, one per address, forever on chain. [See who did](/r/g1rayfgklwl0aspz488wvrcrvt7t2quy6q06lgk2/home:hearts).

![1 hearts](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI2OTYiIGhlaWdodD0iNTIiIHZpZXdCb3g9IjAgMCA2OTYgNTIiPjxkZWZzPjxwYXRoIGlkPSJoIiBkPSJNMTIgMjFDMTIgMjEgMyAxNS41IDMgOS41IDMgNi41IDUuNCA0IDguMyA0IDEwIDQgMTEuMiA1IDEyIDYuMiAxMi44IDUgMTQgNCAxNS43IDQgMTguNiA0IDIxIDYuNSAyMSA5LjUgMjEgMTUuNSAxMiAyMSAxMiAyMVoiLz48L2RlZnM+PHJlY3Qgd2lkdGg9IjY5NiIgaGVpZ2h0PSI1MiIgcng9IjEyIiBmaWxsPSIjMTAyMzFjIi8+PHVzZSBocmVmPSIjaCIgeD0iMTQiIHk9IjE0IiBmaWxsPSIjZTYzOTQ2Ii8+PHVzZSBocmVmPSIjaCIgeD0iNDIiIHk9IjE0IiBmaWxsPSJub25lIiBzdHJva2U9IiM2YjhmN2YiIHN0cm9rZS13aWR0aD0iMS41Ii8+PHVzZSBocmVmPSIjaCIgeD0iNzAiIHk9IjE0IiBmaWxsPSJub25lIiBzdHJva2U9IiM2YjhmN2YiIHN0cm9rZS13aWR0aD0iMS41Ii8+PHVzZSBocmVmPSIjaCIgeD0iOTgiIHk9IjE0IiBmaWxsPSJub25lIiBzdHJva2U9IiM2YjhmN2YiIHN0cm9rZS13aWR0aD0iMS41Ii8+PHVzZSBocmVmPSIjaCIgeD0iMTI2IiB5PSIxNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjNmI4ZjdmIiBzdHJva2Utd2lkdGg9IjEuNSIvPjx1c2UgaHJlZj0iI2giIHg9IjE1NCIgeT0iMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzZiOGY3ZiIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48dXNlIGhyZWY9IiNoIiB4PSIxODIiIHk9IjE0IiBmaWxsPSJub25lIiBzdHJva2U9IiM2YjhmN2YiIHN0cm9rZS13aWR0aD0iMS41Ii8+PHVzZSBocmVmPSIjaCIgeD0iMjEwIiB5PSIxNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjNmI4ZjdmIiBzdHJva2Utd2lkdGg9IjEuNSIvPjx1c2UgaHJlZj0iI2giIHg9IjIzOCIgeT0iMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzZiOGY3ZiIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48dXNlIGhyZWY9IiNoIiB4PSIyNjYiIHk9IjE0IiBmaWxsPSJub25lIiBzdHJva2U9IiM2YjhmN2YiIHN0cm9rZS13aWR0aD0iMS41Ii8+PHVzZSBocmVmPSIjaCIgeD0iMjk0IiB5PSIxNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjNmI4ZjdmIiBzdHJva2Utd2lkdGg9IjEuNSIvPjx1c2UgaHJlZj0iI2giIHg9IjMyMiIgeT0iMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzZiOGY3ZiIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48dXNlIGhyZWY9IiNoIiB4PSIzNTAiIHk9IjE0IiBmaWxsPSJub25lIiBzdHJva2U9IiM2YjhmN2YiIHN0cm9rZS13aWR0aD0iMS41Ii8+PHVzZSBocmVmPSIjaCIgeD0iMzc4IiB5PSIxNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjNmI4ZjdmIiBzdHJva2Utd2lkdGg9IjEuNSIvPjx1c2UgaHJlZj0iI2giIHg9IjQwNiIgeT0iMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzZiOGY3ZiIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48dXNlIGhyZWY9IiNoIiB4PSI0MzQiIHk9IjE0IiBmaWxsPSJub25lIiBzdHJva2U9IiM2YjhmN2YiIHN0cm9rZS13aWR0aD0iMS41Ii8+PHVzZSBocmVmPSIjaCIgeD0iNDYyIiB5PSIxNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjNmI4ZjdmIiBzdHJva2Utd2lkdGg9IjEuNSIvPjx1c2UgaHJlZj0iI2giIHg9IjQ5MCIgeT0iMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzZiOGY3ZiIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48dXNlIGhyZWY9IiNoIiB4PSI1MTgiIHk9IjE0IiBmaWxsPSJub25lIiBzdHJva2U9IiM2YjhmN2YiIHN0cm9rZS13aWR0aD0iMS41Ii8+PHVzZSBocmVmPSIjaCIgeD0iNTQ2IiB5PSIxNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjNmI4ZjdmIiBzdHJva2Utd2lkdGg9IjEuNSIvPjx1c2UgaHJlZj0iI2giIHg9IjU3NCIgeT0iMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzZiOGY3ZiIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48dXNlIGhyZWY9IiNoIiB4PSI2MDIiIHk9IjE0IiBmaWxsPSJub25lIiBzdHJva2U9IiM2YjhmN2YiIHN0cm9rZS13aWR0aD0iMS41Ii8+PHVzZSBocmVmPSIjaCIgeD0iNjMwIiB5PSIxNCIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjNmI4ZjdmIiBzdHJva2Utd2lkdGg9IjEuNSIvPjx1c2UgaHJlZj0iI2giIHg9IjY1OCIgeT0iMTQiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzZiOGY3ZiIgc3Ryb2tlLXdpZHRoPSIxLjUiLz48L3N2Zz4=)


---

This page is a contract: [gno.land/r/g1rayfgklwl0aspz488wvrcrvt7t2quy6q06lgk2/home](/r/g1rayfgklwl0aspz488wvrcrvt7t2quy6q06lgk2/home$source).

vm/qrender output, sanitized (docs/render-security.md) and displayed in an empty-sandbox iframe — scripts, forms and popups cannot run. Links stay inert in-preview; right-click to open.