Shibescribe Your Own Shibescription

A minter and protocol for inscriptions on Dogecoin. Forked from Ape Zord<3

Make sure to create or have a DOGINALS friendly wallet to inscribe the doginals to.

This wallet you create should only be used for inscribing FROM and TO a Doginals Wallet, such as doge labs, dpal, or a woof wallet.

Use this wallet for inscribing only! Always inscribe from this wallet to a different address,

This wallet is not meant for storing funds or inscriptions.

Prerequisites

To use this, you'll need to use your console/terminal and install Node.js on your computer. So please ensure, that you have your

Install NodeJS

Please head over to https://nodejs.org/en/download and follow the installation instructions.

NODE JS FOR MAC

Launch your own RPC

In order to inscribe, you will need to have access to a Dodgecoin RPC. For example: https://getblock.io/ provides a service to get access to an RPC. You will need that for the configuration.

Setup

git clone and install

Install by git clone (requires git and node on your computer)

git clone

or

download this zip file and upack in a directory.

Now open your terminal and change to the directory the sources are installed.

After all dependencies are solved, you can configure the environment:

Configure environment

Copy a .env.example to .env and add your node information:

You can get the current fee per kb from here.

Funding

Generate a new .wallet.json file:

Then send DOGE to the address displayed. Once sent, sync your wallet:

If you are minting a lot, you can split up your UTXOs:

When you are done minting, send the funds back:

Minting

From file:

From data:

Examples:

Note: Please use a fresh wallet to mint to with nothing else in it until proper wallet for doginals support comes. You can get a paper wallet here.

DRC-20

Examples:

Viewing

Start the server:

And open your browser to:

Protocol

The doginals protocol allows any size data to be inscribed onto subwoofers.

An inscription is defined as a series of push datas:

For doginals, we introduce a couple extensions. First, content may spread across multiple parts:

This content here would be concatenated as "Woof and woof woof!". This allows up to ~1500 bytes of data per transaction.

Second, P2SH is used to encode inscriptions.

There are no restrictions on what P2SH scripts may do as long as the redeem scripts start with inscription push datas.

And third, inscriptions are allowed to chain across transactions:

Transaction 1:

Transaction 2

With the restriction that each inscription part after the first must start with a number separator, and number separators must count down to 0.

This allows indexers to know how much data remains.

FAQ

I'm getting ECONNREFUSED errors when minting

There's a problem with the node connection. Your dogecoin.conf file should look something like:

Make sure port is not set to the same number as rpcport. Also make sure rpcauth is not set.

Your .env file should look like:

I'm getting "insufficient priority" errors when minting

The miner fee is too low. You can increase it up by putting FEE_PER_KB=300000000 in your .env file or just wait it out. The default is 100000000 but spikes up when demand is high.

Last updated