Giter VIP home page Giter VIP logo

yana's Introduction

GitHub version GitHub download License

yana - Yet Another Nostr Application

Motivation

Why yet another client/app when there are so many already being developed?

Current mobile native nostr clients suffer from one of the following:

  • UI not responsive enough in older than 1-2 years phones.
  • Lack of a true FOSS community with lots of contributors being welcomed and encouraged to participate.
  • Not multi-platform.

The objective of this project is neither fame, glory nor financial rewards.
My main motivator to spend time on this is to have a nostr client which I personally find the most pleasant to use on a everyday case.
Also to learn more deeply about Nostr and FOSS project development.
Having said that, I will apply for https://opensats.org/ initiative and consider other similar donations initiatives.

Each amount of funding will be distributed among the contributors according to the amount of contribution.
This will eventually allow each contributor to spend more time on the project.

See current contributors distribution

Installation

Freedom Tech

It will not be constrained to imperialist distributors, such as Apple Store or Google Store.
The released app will be distributed as standalone packages for each OS and can be included in free Stores (F-Droid, Obtainium, etc).
Or you can just download them from the release's page and install it directly without a third-party distributor.

Get it on GitHub

- Android

Install by choosing your architecture1 from releases.
Verify the signature of the .apk file:

keytool -printcert -jarfile <.apk-file> |grep SHA256

Compare this with the SHA256 found on nostr profile for Yana

I strongly recommend Obtainium for keeping up-to-date with new releases.

- iOS

Use https://sideloadly.io/ to sideload the yana-version-ios.ipa file onto your ios device.

- Web

You can run your own web version using docker

docker run -d --name yana -p 8080:80  fmar/yana

And then go to https://127.0.0.1:8080

You can also check out my hosted version at https://yana.do

Planned also an Umbrel Store package so it is simple to install and run it for umbrel users

- Linux

Run Appimage file or install deb file from releases:

sudo dpkg -i <deb-file>

Snap comming soon

- Windows

Comming later

- MacOS

Comming later

Current Features + Roadmap

  • Event Builders / WebSocket Subscriptions (NIP-01)
  • Home Feed
  • Notifications Feed
  • Global Feed
  • Replies and mentions (NIP-10)
  • Reactions (NIP-25)
  • Reposts (NIP-18)
  • Image/Url Previews
  • View Threads
  • Private Messages (NIP-04)
  • User Profiles (edit/follow/unfollow - NIP-02)
  • Bech Encoding support (NIP-19)
  • User/Note Tagging (NIP-08, NIP-10)
  • Zaps (private, public, anon, non-zap) (NIP-57)
  • Created_at Limits (NIP-22)
  • Event Deletion (NIP-09)
  • Nostr Address (NIP-05)
  • Badges (NIP-58)
  • Hashtag Following and Custom Hashtags
  • Polls (NIP-69)
  • Relay Pages (NIP-11)
  • Multiple Accounts
  • Bookmarks, Pinned Posts, Muted Lists, Search/Blocked Relays (NIP-51)
  • Wallet Connect API (NIP-47)
  • Relay List Metadata (NIP-65)
  • Online Relay Search (NIP-50)
  • Video/LnInvoice Previews
  • Public Chats (NIP-28)
  • Automatic Translations
  • URI Support (NIP-21)
  • Long-form Content (NIP-23)
  • Parameterized Replaceable Events (NIP-33)
  • Verifiable static content in URLs (NIP-94)
  • Login with QR
  • External Identity Support (NIP-39)
  • Markdown Support
  • Relay Authentication (NIP-42)
  • Content stored in relays themselves (NIP-95)
  • Custom Emoji (NIP-30)
  • Zap Forwarding
  • Text Note References (NIP-27)
  • Audio Tracks (zapstr.live) (Kind:31337)
  • Generic Tags (NIP-12)
  • Sensitive Content (NIP-36)
  • Recommended Application Handlers (NIP-89)
  • Events with a Subject (NIP-14)
  • Live Activities & Live Chats (NIP-53)
  • Zapraiser (NIP-TBD)
  • Application Settings/Preferences (NIP-78)
  • Moderated Communities (NIP-72)
  • Emoji Packs (Kind:30030)
  • Personal Emoji Lists (Kind:10030)
  • Classifieds (Kind:30403)
  • Gift Wraps & Seals (NIP-59)
  • Versioned Encrypted Payloads (NIP-44)
  • Marketplace (NIP-15)
  • Image/Video Capture in the app
  • Proof of Work in the Phone (NIP-13, NIP-20)
  • Expiration Support (NIP-40)
  • Delegated Event Signing (NIP-26)
  • Mnemonic seed phrase (NIP-06)
  • Message Sent feedback (NIP-20)
  • OpenTimestamps Attestations (NIP-03)
  • User Statuses (NIP-315)
  • follower count using NIP-45

Contributions

Some initial code was used from nostrmo2 project.

Using a Prism3 address at ⚡[email protected], each sat donation will be split into:

70% - fmar (code)
10% - DASHU (code)
10% - Zitron (graphics + UX)
10% - Tomek ⚡ K (PR + Marketing)

Pay with BTCPay Server, a Self-Hosted Bitcoin Payment Processor

Join

Contributors are welcome to join the project, specially Designers UI/UX, coders, testers.
If you're not a coder but would like to see something added/implemented, or you have a great idea for a new feature, just don't hesitate to fill up a issue, or you can also post a bounty on https://nostrbounties.com/ or https://bountsr.org .
All constructive feedback is welcomed.


Footnotes

  1. https://www.howtogeek.com/339665/how-to-find-your-android-devices-info-for-correct-apk-downloads/

  2. https://github.com/haorendashu/nostrmo

  3. https://dergigi.com/2023/03/12/lightning-prisms

yana's People

Contributors

atrifat avatar frnandu avatar itstomekk avatar zitron-design avatar

Stargazers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.