squeakroad icon indicating copy to clipboard operation
squeakroad copied to clipboard

Open source darknet market with lightning network payments

squeakroad

GitHub release GitHub CI workflow

Open source darknet market with lightning network payments and withdrawals.

Installation

Requirements

  • an LND node
  • Rust and Cargo
  • openssl apt install libssl-dev
  • gexiv2 apt install libgexiv2-dev
  • compiler dependencies apt install libprotobuf-dev protobuf-compiler cmake

Step 1. Create the configuration

Create a config.toml file and fill in the relevant sections to connect to your LND node:

db_url="db.sqlite"
admin_username="admin"
admin_password="pass"
lnd_host="localhost"
lnd_port=10009
lnd_tls_cert_path="~/.lnd/tls.cert"
lnd_macaroon_path="~/.lnd/data/chain/bitcoin/mainnet/admin.macaroon"

Step 2. Start squeakroad:

cargo run

Go to http://localhost:8000/ and use the username/password in config.toml to log in.

Test

cargo test

Database Migrations

Use sqlx-cli.

cargo install sqlx-cli

cargo sqlx migrate --source db/migrations add <YOUR_MIGRATION_NAME>

Then put your SQL changes in the new file.

cargo sqlx migrate --source db/migrations run

After running migrations, generate the schema for compile-time type-checking:

cargo sqlx prepare --database-url sqlite3://db.sqlite

Optional: create a .env with DATABASE_URL=sqlite3://db.sqlite to avoid passing --database-url

Telegram

Join our Telegram group!

License

Distributed under the MIT License. See LICENSE file.