Skip to content

harshasomisetty/paperhand

Repository files navigation

PaperHand

Overview

Paperhand is a suite of NFTAMM implementatios.

Programs

The core of paperhand allows nfts to be algorithimically associated with a collection, allowing for trading of NFTs through traditional AMMs, an instantaneous FloorBid, and through an aggregation of user-created pools (a structure heavily inspired by Sudoswap)

Exhibition

Exhibition is a Collection identification system. It creates PDAs hashed from the verified creators of a nft, and associates all other NFTs with the same identification system as the same collection.

In the future, the collection identification can happen through (Hyperspace way, and one other way)

expand exhibition to be ultimate filtering contract, make subset filtering, solving many-to-some-to-one problem

Exhibition also ties in a vault accounting system that allows users to deposit NFTs of the same collection, and receive a “voucher” token back (each representing an NFT)

Shop

Shop is a Bridge-split esque nftamm, where an NFT is turned into a (un)fractionized nft (currently nft is represented as a single fraction, known as a voucher), and contains traded against an AMM (consisting of voucher and sol pools))

The Shop has 3 functions, Swap, Deposit Liquidity, and Withdraw Liquidity for users to interact with the stand, and an Instantiate Stand function for the exhibit creator to seem the AMM with their own funds for a new (previously unseen) collection

Checkout

Checkout is the reimagination of Paperhands Bitch Tax: a way for collection holders to paperhand (market sell) their nft to loyal holders who place bids (limit orders) to buy an nft.

This involved storing using commited SOL for buy orders in a heap data structure, allowing functionallity for a seller to come market sell to a buyer, and the buyer being able to come redeem their newly acquired nft.

Carnival

Solana’s Pseudo Sudoswap. Replicates Sudoswap’s structure for people to create their own trading AMM pools to either buy or sell NFTs, and aggregates the various pools into a central marketplace.

Next steps

each card resolt reset user select nfts

Trait gating pools

Design

create process for people to create shacks of what types of nfts can be sold allow people to vote on tranches

have a creator defind groupping list, that allows people to bid for specific type of nfts

this is important since people want to idenity iwith a group, but some times there is too much confusion about what subgroup within in the commuity they want to identiy wiht. With a simple way for creators to be define their visuion for the collection, users can also quickly idenity with a group

update contracts and code

  • add update authority as seeds
  • review code
  • sign all transactions multiple nfts
  • proper fee stuff
  1. exhibit list redo to regular MagicEden format
  2. init all carnivals and checkouts when initing exhibit
  3. copy into frontend when making new exhibit from nfts
  4. store default nft picture
  5. add in slider to quick buy in carnival

THEN START TRYING TO DEPLOY mainnet deploy

  • vercel
  • launch dog collection
  • launch on mainnet

finsih all booth page functionality

add in functions in frontned view button funcitonality

  • redo page functionality and nagivating fuck
  • add in router push stuff
  • withdraw nft
  • withdraw sol
  • depo nft
  • depo sol
  • withdraw all

functionality

  • don’t see a collection? create your own unverifed collection
    • store nft selected image as default collection image
  • search collection
  • edit pricing
  • contract fucntion to edit pricing

new pages

  • verified and unverifed collection pages
    • top 20 verified magic collections
  • new big hero page like sudo/magic
  • your nft profile page
  • your pool nft profile page
  • activity page

bugs

  • nft price gets stuck when selecting all nfts from a single pool

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages