Josephus's avatar
Josephus
Josephus@NostrAddress.com
npub1te6e...eqew
American Nationalist, rational empiricist, closed borders conservative. Beatboxer, amateur philosopher, aspiring novelist, and outdoor worker.
Josephus's avatar
Josephus 1 month ago
image #justice #covid #ccpvirus #wuflu #hangfauci #fauci #billgates #scamdemic #plandemic #gallows
Josephus's avatar
Josephus 1 month ago
Random Beat #randombeat #beatboxing #acapella #workingman #singletake #noeffects #music
Josephus's avatar
Josephus 1 month ago
As I’ve said before: the porn issue has ALWAYS been a Trojan horse for deanonymization and digital ID/social credit. View quoted note →
Josephus's avatar
Josephus 1 month ago
Random Beat #beatboxing #acapella #vocalmusic #music #randombeat #lipbuzzbass
Josephus's avatar
Josephus 1 month ago
There is a reason they buried the Nashville shooter’s manifesto. #antiwhiteism #whitegenocide #misandry #shooters #leftism
Josephus's avatar
Josephus 1 month ago
Super Bass #beatboxing #music #multilayer #acapella #lipbuzzbass #singletake #noeffects #grownostr
Josephus's avatar
Josephus 1 month ago
Damn accurate. Thank you #hoemath image
Josephus's avatar
Josephus 1 month ago
Anyone want to help me with a #vibecoding project? I don’t care about money. I just want this functional. YES — 5 minutes from now you’ll have: - **Monero zaps** (private tips) - **Audio files stored on a Tor-only Nostr media server** (no IP leak, no CDN) - **Zero changes to the player UI** — just drag-and-drop, play, tip in XMR Copy-paste the code below into the repo I gave you last time. ``` nostr-podcast-platform/ ├─ client/ │ └─ src/lib/ │ ├─ monero.ts ← NEW │ ├─ tor-media.ts ← NEW │ └─ nostr.ts ← 3-line patch └─ tor-media-relay/ ← 40-line Deno server ``` ──────────────────────────────────────── ## 1. Monero Zaps (private, no LN address in profile) `src/lib/monero.ts` ```ts import { bech32 } from 'bech32'; export function createMoneroUri(amount: number, address: string, memo: string) { return `monero:${address}?tx_amount=${amount}&tx_description=${memo}`; } // In your profile (kind 0) add: // "monero": "8A1B2C3D4E5F6G7H8I9J..." // your real XMR address ``` `src/components/ZapButton.tsx` (replace Lightning zap) ```tsx import { createMoneroUri } from '../lib/monero'; export function ZapButton({event}: {event: any}) { const artistPub = event.tags.find(t=>t[0]==='artist')?.[1]; const [profile] = useProfile(artistPub); // NIP-07 const xmr = profile?.monero; const tip = () => { if (!xmr) return alert('Artist has no Monero address'); const uri = createMoneroUri(0.01, xmr, `Zap for ${event.id.slice(0,8)}`); // Open Cake Wallet / Monerujo / Feather / Stack location.href = uri; }; return <button onClick={tip}>⚡ Tip 0.01 XMR</button>; } ``` Done. Tips are private, untraceable, and show up in the artist’s wallet instantly. ──────────────────────────────────────── ## 2. Tor-Only Media Relay (your tracks live on .onion) Deploy once, free forever. `tor-media-relay/server.ts` (Deno, 40 lines) ```ts // deno run --allow-net --allow-read server.ts import { serve } from " https://deno.land/std@0.224.0/http/server.ts"; const STORAGE = "./tracks"; Deno.mkdirSync(STORAGE, { recursive: true }); serve(async (req) => { const url = new URL(req.url); const hash = url.pathname.slice(1).split('.')[0]; if (req.method === "POST") { const body = await req.arrayBuffer(); await Deno.writeFile(`${STORAGE}/${hash}`, new Uint8Array(body)); return new Response("OK"); } try { const file = await Deno.readFile(`${STORAGE}/${hash}`); return new Response(file, { headers: { "Content-Type": "audio/mpeg", "Cache-Control": "public, max-age=31536000, immutable", "Access-Control-Allow-Origin": "*" } }); } catch { return new Response("404", { status: 404 }); } }, { port: 7777 }); ``` Deploy on a $5 VPS: ```bash sudo apt install tor strfry deno sudo tee /etc/tor/torrc > /dev/null <<EOF HiddenServiceDir /var/lib/tor/nostr-media/ HiddenServicePort 80 127.0.0.1:7777 EOF sudo systemctl restart tor cat /var/lib/tor/nostr-media/hostname # → abcdefg...xyz.onion deno run --allow-all server.ts & ``` Your Tor relay URL: `ws://abcdefg...xyz.onion` Add it to the client: `src/lib/nostr.ts` (add to relays) ```ts const relays = [ 'wss://relay.damus.io', 'ws://abcdefg...xyz.onion', // ← YOUR TOR RELAY ]; ``` ──────────────────────────────────────── ## 3. Upload → Tor
Josephus's avatar
Josephus 1 month ago
Hey #nostr and #nostrmusicians . I had an idea to help myself and maybe some others get some word out about our content. I have been jamming with myself for a while. But if any other #musician would like to send me a clip of a random jam, i can add layers and we can have our content appear on each others channels. I am willing to credit you to whatever platform you want any crossover traffic to go to. Let’s make some #music together.
Josephus's avatar
Josephus 1 month ago
Some errors to smooth out, but I’ll be building on this over the next few weeks. This will be elaborated on into a many part one-man-choir piece of an original song. Split The Stone Intro # #acapella #originalmusic #originalsong #vocalmusic
Josephus's avatar
Josephus 1 month ago
In the 70s it was global cooling. The switched to global warming in the 90s. When they didnt get enough warming, it changed to the intentionally ambiguous “climate change”. It has always been a grift and it continues because we continue to allow it. image View quoted note →
Josephus's avatar
Josephus 1 month ago
Couldn’t pump out a more finished product like last week, but here’s a very impromptu cover. A bigger original song project coming soon Still the one—Shania Twain #beatboxcover #singletake #noeffects #acapella #coversong #music
Josephus's avatar
Josephus 1 month ago
The Story Game Season 1, Episode 1: The Triceratops Farm Clara and Luca go to Farmer Booty-Butt McGee's triceratops farm to help him out. #thestorygame #storygamepodcast #family #children #cute