#
Hostr
Rental accommodation using purely peer‑to‑peer technologies such as Nostr.
Read docs in full here.
This repo contains
.
├── app # Client app deployed to store
├── escrow # Server side daemon to arbitrate txns
├── infrastructure # Infrastructure-as-as code required to run the project
└── README.md
#
NIPs utilized
- NIP-01: Basic protocol for event creation and subscription.
- NIP-04: Encrypted direct messages for secure communication between hosts and guests. (Deprecated)
- NIP-17: Private Direct Messages
- NIP-05: Mapping Nostr keys to DNS-based internet identifiers.
- NIP-09: Event deletion for removing listings or messages.
- NIP-33: Parameterized replaceable events for creating and updating listings and bookings.
#
Clone
git clone git@github.com:sudonym-btc/hostr.git
Quickstart: see the client app guide at app/README.md for run targets by environment.
#
TODO
#
App
P1
- Startup loading page
- Sync giftwraps
- Broadcast preferred user blossom servers if not found
- Broadcast preferred user relays if not found
- Broadcast preferred user escrows if not found
- Blossom files
- Image component which loads pubkeys blossom servers and generates file path
- Caching of blossom servers between Image components
- Blossom server infrastructure
- State management
- Update Nip01Events in EntityCubit / ListCubits if they are updated
- Settings
- Update relays
- Update trusted escrows
- Display public / private keys
- Escrow
- Escrow advertisement events should allow for multiple services in one advertisement event
- Reservation Requests
- User trust escrow event broadcast
- Payment status
- Check if can NWC allows fetching invoice with description
- Combine rootstock status check and NWC status check into one PaymentStatus
- Mock NWC should record "paid" invoices and respond to list invoice request appropriately
- Mock lightning payments should 'resolve' accurate invoices and amounts
- NIP 05 verification
- Language file
- Tests
P2
- Payment flow in one "snackbar" instead of repeated popups
#
Escrow
- Update escrow advertisement on launch