Pin rewards are live from genesis block 499363464 (record). Period is 1 day; per-pin mint is a fixed 5 TTT. Uploading does not earn TTT — only pinning published release content does.
| What you can do | Desktop pinner |
|---|---|
| Everything on the web | Yes — plus free download, comments, votes |
| Keep your own durable copy (pin) | Yes — bundled Kubo |
| Upload releases (bytes on your node) | Yes |
| Earn TTT for pinning | Yes — scheduler settles into your wallet |
You still need the in-app wallet on Arbitrum One (see Get the app). The web site cannot pin or upload.
1. Use the desktop app
Install the Linux AppImage or macOS .app
(Get the app). On Mac, the first open is blocked until you
click Open Anyway in Settings
(steps). The IPFS This machine
cell should show a peer count once the sidecar has joined public IPFS. The API binds
127.0.0.1:15001 (local only). No CORS setup.
The Library row next to IPFS is the album root (default
~/Torrentech; change it from that status line). Uploaded albums live there.
The sidecar repo is <library>/.torrentech-ipfs.
Do not point the product at Homebrew or IPFS Desktop on port 5001.
Quit from the tray and relaunch if sidecars look stuck.
2. Your IPFS Peer ID
The bundled IPFS node creates a Peer ID when it starts. You do not paste or invent one. For a normal user (or moderator) the app writes that ID onto your profile once the field is empty — after you sign in and the IPFS line is live. Open Profile: if the shown Peer ID matches this machine, you are done.
If the field is still empty, or it points at another node, use Profile → Use this node (or Point rewards at this node). Verifiers credit pins to the wallet that published that Peer ID. Do not publish the operator node Peer ID — those are reserved.
You cannot type a custom Peer ID. The ID is the one the bundled IPFS node already has. Another computer: install the app there, sign in, wait for IPFS, then Use this node. Wrong ID on this profile: start IPFS here and click Point rewards at this node.
3. Upload your own release
Upload is desktop app-only. Bytes stay on your node: the app adds the album folder from disk and pins it there (one copy on disk; the node stores pointers, not a second full copy). You cannot upload from app.torrentech.org.
Wait until Ceramic is connected and the IPFS This machine cell shows a peer count before you submit. Connect the in-app wallet — the form will not run without it.
Prepare the album folder
- Put the audio for one format in one folder (the whole album, not a single track if the tracklist lists a full album).
- Cover art is a separate image pick on the form, not a requirement inside the folder.
- Choose album folder opens the OS folder dialog on Linux and macOS. It starts at the Library folder.
- If you pick a folder outside Library, the app asks to move it in. Confirm that — pinned albums must stay under Library.
- Do not move, rename, or delete that folder after upload. That hollows the pin.
Open Upload and fill the form
- In the app nav, open upload (desktop, wallet connected).
- Optional: paste a Weblink (Discogs, Bandcamp, MusicBrainz, Apple Music, or Beatport) and click fill to pull artist, album, date, tags, tracklist, and cover. Check the fields; fill is a start, not a guarantee.
- Required: Artist, Album name,
Choose album folder, and File format. Formats
are an admin allowlist (for example
FLAC / 16-bit). If the dropdown is empty, formats are not configured yet — ask staff. - Optional: label, year / month / day (year 1900–2100), tags, tracklist, cover image, remark (256 characters).
- The form blocks an exact artist + album that is already pending or published. A close (fuzzy) match warns you; you can still submit if it is intentional. A matching rejected name is allowed again.
- Click Submit release. Status text walks the slow steps: duplicate check, local IPFS add (large folders can take several minutes), then Ceramic write. User uploads go through moderation and appear for download only after staff approve. Success shows a CID and clears the form.
If the tracklist has two or more tracks, the folder must contain at least that many audio files. A one-file mix with no tracklist is fine. Empty folders and folders with no audio are rejected.
Watch it under My pending uploads
Open my pending uploads in the nav. Three lists:
- Pending — waiting for a moderator.
- Approved — status sync pending — staff approved; open Details to retry if the published status has not caught up.
- Rejected — reason is on the row and on Details. Edit the release, then wait for re-review (or contact a moderator).
Use a wallet you monitor, or set Matrix / email on your profile so staff can reach you.
4. What staff do after you submit
A moderator reviews the metadata and files. They approve or reject (with a reason). They do not rewrite your release stream.
- On approve they register the content on-chain so others can pay or free-download that format. Your app copies the decision onto the release (published) when you next sign in, open My pending uploads, or open Details.
- Staff may later pin a spare copy on operator nodes so the archive does not depend only on your machine staying online. That does not replace your local pin.
- They may message you about a reject, a needed change, or an approval — on Blockscan Chat, or via Matrix / email if those are on your profile.
Pending uploads are not in the pin-reward scan. Published ones are — if your Peer ID is set and the content stays pinned.
5. Keep your upload pinned
Submit already pins the album on your node. Pin names look like
artist - album. Keep the app (and its Kubo sidecar) running. Leave
the folder under Library. Do not run garbage collection on the sidecar repo.
6. Download, pin, and stay online
To pin someone else’s published release (not an upload you just submitted), keep the app open so the sidecar stays online:
- Unlock a format with Pay TTT or Free download (desktop only for free download). The app decrypts album audio after unlock.
- Click Download and Pin. The app pins the CID on your node and
can save files under
Artist - Album [year] [FORMAT]in a folder you pick. - Content pins are named like
tT release: <artist> - <album> [<format>]. - Keep the app (and its Kubo sidecar) running across reward periods. Continuous availability is what counts — not a single spot check.
7. Public IPFS
Album files live on the public IPFS network. The desktop sidecar joins that mesh at start. Wait until the IPFS This machine cell shows a peer count before relying on local pins of gated CIDs, or on an upload that others must fetch.
Album audio on the mesh is encrypted. After Pay TTT or Free download, the app decrypts it for you. Pinning keeps that encrypted copy available — you do not install a separate decrypt tool.
Prod extra bootstrap (already used by the app):
/ip4/95.217.135.193/tcp/4002/p2p/12D3KooWSrKeJ8jinMaDzBJDKPycKU99AiVvth7bNXkkY2oSCwPh
Do not point the product at Homebrew or IPFS Desktop. Leftover private-swarm keys from older installs are stripped at start.
8. Optional tuning
For larger libraries: prefer an SSD-backed datastore, keep connection manager limits sane, and use a roots / pinned reprovide strategy rather than reprovide-all. Flatfs plus reprovide-all does not scale well on big nodes.
Troubleshooting
- “Please connect your wallet to upload releases.” / “Not authenticated or Ceramic not connected” — unlock the in-app wallet and wait for Ceramic. Refresh if the session dropped.
- “Local IPFS node not reachable…” — sidecar Kubo is down. Quit from the tray and relaunch. Archives still download via the gateway; only pinning is skipped. Uploads need the sidecar.
- Pin or upload fails for gated album files — usually not yet on the public mesh. Wait until the IPFS This machine cell shows a peer count, then retry.
- No audio files / tracklist has more tracks than files — pick the whole album folder, or fix the tracklist.
- “already stored in the blockstore; filestore pin is not possible”
— that album was already copy-added on this node. Re-upload under a new folder
name. Do not run
ipfs repo gcon the sidecar. - Uploaded album missing / hollow pin — the folder left Library
or was deleted.
ipfs filestore verifyreports missing paths. Put the files back or upload again from a folder that stays under Library. - “A release with this artist and album name already exists” — exact pending/published duplicate. Change the name or open the existing release instead of submitting again.
- Status sync failed — open the release from My pending uploads and use Details to retry. Sign-in also retries.
- No allowed formats — the Format allowlist is empty. Ask an administrator.
- Pinned but no TTT — confirm the profile Peer ID matches the node that is online here, and that the release is published (pending uploads do not earn). Settlement is a closed 1-day period; you do not click Claim in the app.
- Help — #torrentech:matrix.org or Blockscan Chat.
How rewards work
- Only pinning of release content is rewarded — not uploading or moderating.
- Per-pin mint is a fixed 5 TTT. The operator wallet can earn that same reward; the public pin count does not include it. See tokenomics.
- Settlement is a one-day period after verifiers attest. The operator scheduler (or any caller with gas) pays closed periods into your wallet. There is no Claim button for ordinary users.
- Stay pinned and keep your Peer ID current. Pending uploads do not earn.
GUIBo (optional Kubo GUI)
GUIBo is a third-party Qt GUI for Kubo. It is not required — the desktop app already bundles Kubo. Trial is limited; lifetime is US $5 in USDT / USDC / DAI on Ethereum mainnet (not Arbitrum).