/portal

This is the soap monorepo.

Primary LanguageTypeScriptOtherNOASSERTION

SOAPšŸ§¼

Soap is a cutting-edge token dispenser built on Solana that simplifies the creation and distribution of digital collectibles. It allows event organizers to issue attendance tokens, airdrop aftermovies, and send invitations for future events. For Spaces enthusiasts, it enables the distribution of Soaps for each space, while rewarding loyal fans with airdrops and exclusive content.

The Soap name and brand is CC0 licensed, meaning anyone can use it any way they want. Soap is not a registered trademark.

See here for the announcement

cc0 tweet

Development

The creator portal only works locally on the Next version. There's a nuxt branch with an implementation in Nuxt 3. Grizzlython submission video

Local development

Setup

  1. Create a new keypair locally using solana-keygen new -o soapkeypair.json.
  2. Open the soapkeypair.json file, and copy its contents [18,223,250,12...].
  3. Open your desktop wallet, and import this private key.
  4. Go to Shadow Storage and create a new space using the soapkeypair wallet. Open the space, and copy it's address from the URL (pubkey).

Run

  1. Clone the repo, open in your editor
  2. Rename .env.local.example to .env.local, and open it.
  3. Adjust all values to your setup, and save the file.
    • SOAP_KEYPAIR is soapkeypair.json
    • API_KEY is not needed in case a public RPC is used.
  4. Run yarn dev, and you'll be able to create soaps on your own.

Mintor portal

To customize the mintor portal (/dealer), you need to deploy your own version of the soap program. The program deployed at soap4c4g3L9vQUQYSCJxhTbHdJYSiX3aZPzPGnp2CoN only accepts mintTo transactions from aquaZKhcuUU1KetKdzNzumpbzEvcyHMqbkyysnMjMWr, which is the keypair running on the deployed backend. See the constraint at /programs/src/constants.rs.

  1. Run anchor build, followed by anchor keys list to get your program's pubkey. Search and replace all soap4c4g3L9vQUQYSCJxhTbHdJYSiX3aZPzPGnp2CoN to your program's ID.
  2. Run anchor deploy (deployment costs ~4.8 SOL)
  3. Run yarn solita to generate the Solita SDK with the new program ID
  4. Execute yarn dev to run the frontend.

Next.JS Original docs

This is a Next.js project bootstrapped with create-next-app.

Getting Started

First, run the development server:

npm run dev
# or
yarn dev

Open http://localhost:3000 with your browser to see the result.

You can start editing the page by modifying pages/index.js. The page auto-updates as you edit the file.

API routes can be accessed on http://localhost:3000/api/hello. This endpoint can be edited in pages/api/hello.js.

The pages/api directory is mapped to /api/*. Files in this directory are treated as API routes instead of React pages.

Learn More

To learn more about Next.js, take a look at the following resources:

You can check out the Next.js GitHub repository - your feedback and contributions are welcome!

Deploy on Vercel

The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.

Check out our Next.js deployment documentation for more details.