Optional Starter Kits for Building on STAY Protocol
This repository contains non-authoritative templates, examples, and reference implementations for building platforms on top of the STAY Protocol.
It exists to:
- Reduce integration time
- Share best practices
- Prevent common architectural mistakes
It does not define, modify, or govern the STAY Protocol.
STAY Protocol is immutable infrastructure.
This repository is not part of the protocol. Nothing here is required, enforced, or canonical.
Builders are free to:
- Fork
- Modify
- Ignore
- Replace
The protocol remains unchanged.
STAY Protocol is strictly neutral infrastructure.
It does not:
- classify usage
- infer intent
- enforce compliance models
- distinguish between commercial and non-commercial activity
- provide signals for regulation, taxation, or policy enforcement
Any such interpretation is performed entirely off-chain by platforms, regulators, or observers. Not by the protocol.
.
├── docs
├── examples
├── indexer
│ ├── abis
│ │ ├── Escrow.events.json
│ │ ├── PropertyRegistry.events.json
│ │ └── StayCore.events.json
│ ├── docker-compose.yml
│ ├── Dockerfile
│ ├── package.json
│ ├── property-registry-indexer.ts
│ ├── README.md
│ ├── schema.sql
│ └── stay-events-indexer.ts
├── package.json
├── package-lock.json
├── README.md
├── tsconfig.json
└── utils
├── cursor.ts
├── db.ts
└── provider.ts
You can copy this verbatim.
Optional Integration Templates for STAY Protocol
This repository contains example code, templates, documentation, and reference architectures intended to help developers integrate with the STAY Protocol.
The authors and contributors:
- do not operate any accommodation service or booking platform
- do not enforce or recommend business models
- do not provide legal, financial, tax, or regulatory advice
- do not guarantee correctness, safety, or fitness for any purpose
- are not responsible for deployments, integrations, or real-world usage
All content in this repository is provided as-is and is entirely optional.
STAY Protocol is immutable settlement infrastructure.
This repository:
- does not modify the protocol
- does not extend the protocol
- does not define protocol behavior
- does not represent canonical usage
If there is any conflict between this repository and the STAY Protocol contracts, the deployed protocol code always wins.
- A starter kit
- A reference library
- A knowledge base
- A collection of examples
- A required dependency
- A framework
- A platform SDK
- A governance layer
- A compliance solution
Recommended pattern:
- Property NFT ownership remains with the host or host-custodial wallet
- Guests do not receive NFT ownership
- Guests receive temporary authority off-chain
This avoids:
- Authority loss
- NFT custody risks
- Settlement deadlocks
Platforms may choose to:
- Use platform-controlled wallets
- Assign per-user custodial wallets
- Use fully user-controlled wallets
- Use hybrid models
All approaches are valid and outside the protocol scope.
Availability, calendars, pricing, and booking rules are:
- Off-chain
- Platform-defined
- Not enforced by STAY
The protocol only settles what parties have already agreed to.
STAY is optimized for short-term stays.
Long-term stays may be implemented by:
- Fronting funds to platform wallets
- Periodic re-entry into the protocol
- External payment streaming
The protocol remains unchanged.
- Booking platforms
- Property management systems
- Cooperative housing networks
- DAO-managed accommodation pools
- Niche or regional stay networks
Because Property NFTs are on-chain:
- Anyone may index them
- Anyone may build inventory views
- Existence does not imply availability
- Booking requires host consent
This enables open competition without forced interoperability.
The STAY Protocol enforces:
- Immutable 0.5% protocol fee
Platforms may define:
- Platform fees
- Caller tips
- Revenue splits
These are not enforced or recommended by the protocol.
| Layer | Responsibility |
|---|---|
| STAY Protocol | Settlement |
| Platform | UX, custody, rules |
| Host | Property authority |
| Guest | Signature consent |
This repository exists to help, not to define.
The STAY Protocol does not depend on it. Platforms do not need it. You may use it—or ignore it entirely.
MIT License