THE NODE FOR ANYONE
Perfect For
Family & Friends
Share Lightning access with loved ones easily through simple invitation codes.
Offer users lower fees and more reliability than mobile node wallets without big centralized custodians.
Businesses
Run Lightning infrastructure for your customers and employees without an engineering department.
Easily integrate your existing line of business applications with static payment codes and webhooks.
Node Operators
Manage your Lightning node remotely over Nostr from the ShockWallet integrated dashboard.
Achieve sovereignty and generate income without compromising on Enterprise-Class usability.
PUB IS THE NODE DISTRIBUTION THAT GETS IT DONE
Everything you need to run a
professional Lightning service
Nostr-Native Account System
Complete Lightning infrastructure with a P2P-like design eliminates traditional server configuration hurdles.
Automated Channel Management
Fetches quotes from top LSPs including Zeus and Flashsats for automated channel creation and management.
Advanced Security Monitoring
Integrated Watchdog mitigates zero-day drainage attacks by tracking LND state discrepancies.
Multi-Layer Accounting
Support for application pools and users with customizable fee regimes for monetization.
Static Offers & Webhooks
Receive instant notifications for order status changes via webhooks, perfect for e-commerce software and automation.
Connect Apps
Connect external apps over Nostr with CLINK Offers and Debits for seamless integration.
ENTERPRISE-GRADE ARCHITECTURE
Built for Scale & Security
SIMPLE SETUP FOR BEGINNERS
Up and Running in 2 Minutes
Lightweight enough for cheap VPS instances, mini computers, and old laptops
wget -qO- https://deploy.lightning.pub | bash
DEVELOPER API
Build Something Great
Get started with just a few lines of code
Request from Offer
import { ClinkSDK } from '@shocknet/clink-sdk';
const { data } =
ClinkSDK.decodeBech32('noffer1...');
const offer = new
ClinkSDK({
privateKey: ClinkSDK.generateSecretKey(),
toPubKey: data.pubkey,
relays: [data.relay]
});
const { bolt11 } =
await offer.Noffer({
offer: data.offer
});
Pay with Debit
import { ClinkSDK } from '@shocknet/clink-sdk';
const { data } =
ClinkSDK.decodeBech32('ndebit1...');
const debit = new
ClinkSDK({
privateKey: ClinkSDK.generateSecretKey(),
toPubKey: data.pubkey,
relays: [data.relay]
});
const { res } = await
debit.Ndebit({
bolt11: 'lnbc...',
pointer: data.pointer
});
Manage Offers
import { ClinkSDK } from '@shocknet/clink-sdk';
const { data } =
ClinkSDK.decodeBech32('nmanage1...');
// Secure persistent service key (Uint8Array)
const serviceKey = myServicePrivateKey;
const manage = new
ClinkSDK({
privateKey: serviceKey,
toPubKey: data.pubkey,
relays: [data.relay]
});
const req =
ClinkSDK.newListRequest(
data.pointer
);
const { details } =
await manage.Nmanage(req);
Request a Budget
import { ClinkSDK } from '@shocknet/clink-sdk';
const { data } =
ClinkSDK.decodeBech32('ndebit1...');
// Secure persistent service key (Uint8Array)
const serviceKey = myServicePrivateKey;
const budget = new
ClinkSDK({
privateKey: serviceKey,
toPubKey: data.pubkey,
relays: [data.relay]
});
const req =
ClinkSDK.newNdebitBudgetRequest({
unit: 'week',
number: 1
}, 10000, data.pointer);
const { res } =
await budget.Ndebit(req);
Start slinging sats today!
Cloud-Hosting
Get added support with a pre-configured cloud server. Coming soon!