In your opinion what are the best tech stack tools, languages and products to learn and use for developing a project on Nostr?
I have years of experience in SQL Server and backend C# but need to develop front end skills.
Itβs probably time I learnt a new language, but want the time invested to be most worthwhile. Iβm thinking PWA and/or cross platform app dev?
Please repost so others can help me with some guidance!
#asknostr
Login to reply
Replies (21)
nostr:nprofile1qyghwumn8ghj7vf5xqhxvdm69e5k7tcpzpmhxue69uhkummnw3ezumt0d5hsqgpm7rrrljungc6q0tuh5hj7ue863q73qlheu4vywtzwhx42a7j9n5gapjsj will probably say "what's the best tech for developing a website?"
so I guess that's what I'm asking π
nostr:nevent1qvzqqqqqqypzp444ff6tj6usshy47zt4rjm0hnh5zgtcj9apm2c36uwqqh77hqc2qqspdvj6amvv6d3nl4h3tuwk40uut2znrpju6r6cgy64u9akex6hgdcdftdzw
Typescript and NodeJS, PWAs
In saying that nostr:npub166655a9edwggtj2lp963edhmem6py9ufz7sa4vgaw8qqtl0tsv9qdkmqp7 I hope WASM takes off, I much prefer Golang or almost anything to js/ts π 7 months in a row now of just ts - so many things were unpredictably frustrating and inconsistent, and Iβve really given it a good go, but my π§ says no π
Thanks! appreciate this
I would choose svelte for frontend if you choose PWA.
Though most of the native apps are developed in flutter/dart which I'm also thinking to learn. Beware in ios you wouldn't pass ios app store permission to release as happened with Damus, they removed note zapping (counted as service payment) while keeping user zapping (counted as user tipping).
For google play, I'm not sure but many release their apps into 3rd party app stores like zapstore or f-droid. But i think it is a few extra steps for users to install your app. You need to give permission to install.
Personally I would go with the PWA route if you don't need native features that are missing in PWA.
Appreciate this, thanks!
Iβve always wondered, how did Primal get around iOS AppStore allowing zapping on notes?
Anything but JavaScript. We've had enough of slow bloated clients, we need more native clients.
Probably Kotlin for Android, Rust for desktop or Swift for iOS.
You don't need to make a big client for all platforms, making one small but actually good client for one specific platform is better for the ecosystem.
Learn javascript first. Figure out which platforms you need to support. Do you need stricly native features and/or be tightly integrated with the phone OS? Then you probably need to look at native options for mobiles. If you need more "generic" support (both desktop and mobiles, and not a lot of tight integration with OS platform), learn javascript. Make websites, and PWAs if you need to deploy to phones and run offline. Then when you have an actual user base, then decide if you want to treat your users to that very optimized native polished look and feel. Native will always be better, but not always better enough to support the huge added investments needed for managing multiple native clients simulatenously.
+1 Learn JavaScript
Para de ficar postando esse monte de cΓ‘rter inΓΊtil
Cheers. Focussed tools make sense
Thanks!
learn rust and help build out the native nostr dev ecosystem (notedeck, gossip, zap stream etc)
Like me! I had next to no experience in rust before I started working on Notedeck
Seems like a lot of the new BTC dev tools are Rust based as well.
what about Golang for desktop?
Have you seen this? https://github.com/nicbarker/clay
Great question.
Maybe in also helps if you ask what are you most excited about working on.
You can work backwards from there an best tools for the job.
Great advice thanks π
Good choice