dogesoft.js + wallet.js
Launch for builders
Two drop-in scripts so an AI can build a mint page or a locked members area from a collection slug.
Two scripts. No SDK install. Point an AI at this page plus your collection slug and it can build a mint page or a locked members area without inventing a second wallet.
<script src="https://launch.dogesoft.io/js/dogesoft.js"></script>
<script src="https://launch.dogesoft.io/js/wallet.js"></script>
Hosted copies are the source of truth. You can also vendor
launch/public/js/dogesoft.js and
wallet.js from the repo if you need them offline. They talk to
/api on the same origin by default; set
window.DOGESOFT_LAUNCH_API = "https://launch.dogesoft.io/api"
before loading wallet.js when you embed from another site.
Prompt: “here's my collection, create a minting page”
Give the model the slug (and these docs). The page only needs a button that calls
DogeSoftLaunch.mint(slug). That helper connects, claims the next index,
pays the creator if the collection is priced, and queues a
LAUNCHPAD_MINT inscription to the connected wallet.
window.DOGESOFT_LAUNCH_API = "https://launch.dogesoft.io/api";
const slug = "bored-doge-club"; // your collection
document.getElementById("mint").onclick = async () => {
const result = await DogeSoftLaunch.mint(slug);
console.log("reserved", result.tokenIndex, result.payload);
// poll DogeSoftLaunch.mintStatus(slug, result.tokenIndex) until status === "minted"
};
Prompt: “here's my collection, create a locked members area”
Same slug. After connect, requireMember throws
NOT_MEMBER unless that wallet holds a mint (Launch DB or indexer UTXOs).
window.DOGESOFT_LAUNCH_API = "https://launch.dogesoft.io/api";
try {
const gate = await DogeSoftLaunch.requireMember("bored-doge-club");
showMembers(gate);
} catch (err) {
if (err.code === "NOT_MEMBER") showPaywall();
else console.error(err);
}
What not to generate
- Do not call
window.dogesoft.inscribe()— it is not a method. - Do not tag inscriptions with a private
"launchpad": "dogepad"field. Usep: "dogesoft"andLAUNCHPAD_MINT. - Do not treat a self-reported txid as membership. Use
requireMember/ the membership endpoint, which reads Explorer. - On mobile,
sendDogefor a mint price must passprotocol: "dogesoft-launch-mint"— the helper already does.
Full catalog API: Launch overview. Wallet connect: Quickstart.