Skip to content

Commit eb95835

Browse files
committed
Update site
1 parent c9b83c5 commit eb95835

File tree

5 files changed

+38
-367
lines changed

5 files changed

+38
-367
lines changed

Diff for: content/_index.md

+10-216
Original file line numberDiff line numberDiff line change
@@ -2,223 +2,17 @@
22
title = 'Spaces Protocol | Scalable & Permissionless Bitcoin Identities'
33
+++
44

5-
<div style="text-align: center;margin-bottom:4em;margin-top:4em;">
6-
<h1 style="font-size:4em;margin-bottom:-0.1em;margin-left:0;margin-right:0;margin-top:0;">Spaces Protocol</h1>
5+
<div style="max-width:700px;padding:2em;margin-bottom:4em;margin-top:4em;">
6+
<h1 style="text-align:center; font-size:4em;margin-bottom:-0.1em;margin-left:0;margin-right:0;margin-top:0;">Spaces Protocol</h1>
77
<p style="font-size: 1.4em">Scalable & Permissionless Bitcoin Identities</h1>
8-
</div>
9-
10-
11-
Spaces is a naming protocol that leverages the existing infrastructure and security of Bitcoin without requiring a new blockchain or any modifications to Bitcoin itself. Spaces is a permissionless protocol and can be used as decentralized social handles for [Nostr](https://nostr.com/), receiving payments and other digital interactions. On-chain Spaces are represented as Bitcoin UTXOs, they take full advantage of Bitcoin's security, and have minimal on-chain footprint.
12-
13-
14-
15-
# Bitcoin Testnet
16-
17-
You can now try the base functionality of the Spaces protocol on [Bitcoin testnet3](https://mempool.space/testnet)! First, download Bitcoin Core and set it up using these steps:
18-
19-
<img src="/images/bcs.png" alt="Spaces Protocol" style="width:100%;margin-top:2em;margin-bottom:2em;">
20-
21-
22-
## Prerequisites
23-
24-
- [Bitcoin Core](https://bitcoincore.org/en/download/)
25-
- [Rust](https://www.rust-lang.org/tools/install)
26-
27-
28-
29-
## Testnet sync
30-
31-
```bash
32-
# Create a directory for Bitcoin testnet data
33-
mkdir $HOME/bitcoin-testnet
34-
35-
# Create a configuration file with RPC credentials
36-
echo "rpcuser=test" > $HOME/bitcoin-testnet/bitcoin.conf
37-
echo "rpcpassword=test" >> $HOME/bitcoin-testnet/bitcoin.conf
38-
39-
# Start Bitcoin Core in testnet mode
40-
bitcoind -testnet -datadir=$HOME/bitcoin-testnet
41-
```
42-
43-
Spaces protocol is activated on Bitcoin testnet block `2865460` - wait for `bitcoind` to sync up to that block before proceeding.
44-
45-
## Install `spaced`
46-
47-
`spaced` is a tiny layer on top of Bitcoin Core allowing you to interact with Spaces. To compile `spaced`, you need to install Rust and then
48-
49-
```bash
50-
# Clone the repository
51-
git clone https://github.com/spacesprotocol/spaced && cd spaced
52-
53-
# Build the release version
54-
cargo build --release
55-
56-
# Install the binaries
57-
cargo install --path node
58-
59-
# Ensure Cargo's bin directory is in your PATH
60-
echo 'export PATH="$HOME/.cargo/bin:$PATH"' >> ~/.bashrc
61-
source ~/.bashrc
62-
```
63-
64-
Verify you have `spaced` and `space-cli` installed:
65-
66-
```bash
67-
spaced --version
68-
space-cli --version
69-
```
70-
71-
## Connect to Bitcoin Core
72-
73-
```bash
74-
spaced --chain test --bitcoin-rpc-user test --bitcoin-rpc-password test
75-
```
76-
77-
78-
## Creating a wallet
79-
80-
`space-cli` is a command-line tool that makes it easy to interact with Spaces. It also functions as a Bitcoin wallet. To create a new wallet, run:
81-
82-
83-
```bash
84-
space-cli createwallet <optional-wallet-name>
85-
```
86-
87-
88-
## Getting testnet coins
89-
90-
You can get testnet coins from a [testnet faucet](https://bitcoinfaucet.uo1.net/) but these faucets give very small amounts. If you need more, you can ask in the [Spaces Telegram](https://t.me/spacesprotocol) group.
91-
92-
```bash
93-
space-cli getnewaddress
94-
```
95-
96-
The `getnewaddress` command will return an address you can use to receive testnet coins compatible with most Bitcoin wallets. You
97-
can also use `getnewspaceaddress` to return a special Bitcoin address for receiving Spaces.
98-
99-
Check your balance:
100-
101-
```bash
102-
103-
space-cli balance
104-
```
105-
106-
107-
## Opening an auction
108-
109-
To open an auction for a Space, run:
110-
111-
```bash
112-
space-cli open bitcoin
113-
```
114-
115-
You will get a similar output to this
116-
117-
```json
118-
[
119-
{
120-
"txid": "fa55b7e5e5b54e170a99f26dcb43baf207d922efb8d69304993c255f61c6ca43",
121-
"tags": ["auction-outputs", "commitment"]
122-
},
123-
{
124-
"txid": "aeba215372b5095640416c7bac31feecdb8cc0589803172939c0fb0b233d6785",
125-
"tags": ["open"]
126-
}
127-
]
128-
```
129-
130-
The tags field indicate the reason(s) for this transaction. In this case, the first is creating a P2TR script commitment and initial outputs to auction off.
131-
Second one opens the auction by revealing the Space.
132-
133-
134-
## Placing a bid
135-
136-
To place a bid on an open auction:
137-
138-
```bash
139-
space-cli bid bitcoin 1500
140-
```
141-
142-
Bid amounts are in satoshis.
143-
144-
145-
## Space details
146-
147-
```bash
148-
space-cli getspace bitcoin
149-
```
150-
151-
152-
```json
153-
{
154-
"outpoint": "45b06887c6f560af607f833fe78edd40327b177a60c9c22b21894510cd094b7c:1",
155-
"value": 662,
156-
"script_pubkey": "5120dcb42260e175ed4c27709ca0b9246a2a0506471bbac000c7caf5503c5f5ff176",
157-
"name": "@bitcoin",
158-
"covenant": {
159-
"type": "bid",
160-
"burn_increment": 1000,
161-
"signature": "........",
162-
"total_burned": 1000,
163-
"claim_height": null
164-
}
165-
}
166-
```
167-
168-
169-
170-
You can use `listspaces` command to see all outputs representing spaces you own
171-
including outputs that are actively in an auction.
172-
173-
174-
The `bid` covenant indicates spending this output requires either another bid spend or a registration spend if the claim height is reached. There are three types of covenants: `bid`, `transfer`, and `reserved`.
175-
176-
Spends that don't satisfy a covenant condition will be revoked by the protocol causing the winning bidder to lose any coins they have burned or ownership of their name.
177-
178-
179-
The `claim_height` field is not populated in the above output indicating the name is still in the pre-auctions phase. Every 144 blocks, the top 10 names with highest bids are rolled out to the auctions.
180-
181-
Once a Space is in the auctions phase, the `claim_height` indicates the block height at which the winning bidder may register the Space.
182-
183-
Auctions continue indefinitely until a winning bidder claims their Space.
184-
185-
186-
## Registering a Space
187-
188-
To register a Space:
189-
190-
```bash
191-
space-cli register bitcoin
192-
```
193-
194-
If you are the winning bidder and registering after the `claim_height`, you will get something like this:
195-
196-
197-
```json
198-
{
199-
"outpoint": "45b06887c6f560af607f833fe78edd40327b177a60c9c22b21894510cd094b7c:1",
200-
"value": 662,
201-
"script_pubkey": "5120dcb42260e175ed4c27709ca0b9246a2a0506471bbac000c7caf5503c5f5ff176",
202-
"name": "@bitcoin",
203-
"covenant": {
204-
"type": "transfer",
205-
"expire_height": 2918106,
206-
"data": null,
207-
}
208-
}
209-
```
210-
211-
212-
## Receiving payments
213-
214-
As a Space owner you can receive payments by sharing your Space handle.
215-
216-
```bash
217-
space-cli send 1000 --to @bitcoin
218-
```
219-
Amount is in satoshis.
2208

9+
<div style="margin-bottom: 4em;">
10+
<p>Spaces empowers users with a sovereign Bitcoin identity, anchored securely on the Bitcoin blockchain. Imagine a social handle that is truly yours—censorship-resistant and accessible across various protocols like Nostr, wallet naming, peer-to-peer applications, and beyond.</p>
11+
</div>
22112

222-
## More information
13+
<div style="display:flex;gap: 20px;justify-content: center;">
14+
<a href="https://docs.spacesprotocol.org" style="background:#FF8400;color:#fff;text-decoration: none; padding:12px 22px;border-radius:20px;">Read the docs</a>
15+
<a href="https://explorer.spacesprotocol.org" style="background:#FF8400;color:#fff;text-decoration: none; padding:12px 22px;border-radius:20px;">Explorer</a>
16+
</div>
17+
</div>
22318

224-
Use `space-cli help` to see all other available commands and options. Ask in the [Spaces Telegram](https://t.me/spacesprotocol) group if you have any questions or need help.

Diff for: layouts/_default/home.html

+1-6
Original file line numberDiff line numberDiff line change
@@ -51,12 +51,7 @@
5151
</div>
5252
<div class="container">
5353

54-
<div class="sidebar">
55-
56-
{{ .TableOfContents }}
57-
58-
</div>
59-
<div id="content" class="main">
54+
<div id="content" style="margin:0 auto; max-width:800px;">
6055
{{ partial "navbar.html" . }}
6156

6257
{{ .Content }}

Diff for: layouts/partials/navbar.html

+6-2
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1-
<div style="display: flex; list-style: none;">
2-
<a style="margin-right:12px;" href="/">Home</a> <span>|</span> <a style="margin-left:12px;" href="/paper">Paper</a>
1+
<div style="display: flex; gap:12px;padding-left:5px;padding-right:5px; list-style: none;max-width: 400px;margin:0 auto;">
2+
<a href="/">home</a> <span>|</span>
3+
<a href="https://explorer.spacesprotocol.org">explorer</a> <span>|</span>
4+
<a href="/paper">paper</a> <span>|</span>
5+
6+
<a href="https://docs.spacesprotocol.org">docs</a>
37
</div>

0 commit comments

Comments
 (0)