https://github.com/Anish-Agnihotri/flipper
Scrape ERC721 metadata, flip images, test creative permissiveness.
https://github.com/Anish-Agnihotri/flipper
flipping nft phayc phunk
Last synced: 11 days ago
JSON representation
Scrape ERC721 metadata, flip images, test creative permissiveness.
- Host: GitHub
- URL: https://github.com/Anish-Agnihotri/flipper
- Owner: Anish-Agnihotri
- Created: 2022-01-01T00:30:28.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2022-01-03T18:08:42.000Z (over 4 years ago)
- Last Synced: 2025-07-04T04:41:33.854Z (12 months ago)
- Topics: flipping, nft, phayc, phunk
- Language: TypeScript
- Homepage:
- Size: 210 KB
- Stars: 82
- Watchers: 3
- Forks: 16
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Flipper
Allows scraping [ERC721](https://eips.ethereum.org/EIPS/eip-721) tokens for their metadata and images, flipping images and uploading new metadata to IPFS.
**Metadata retrieval:**
- Supports both IPFS and centralized metadata stores
- Supports retrieving and storing images from IPFS and centralized sources in source quality
- You can stop Flipper at any time and pick back up where you left off, in the future.
## Usage
```bash
# Install dependencies
npm install
# Copy environment variables
cp .env.sample .env
# Edit environment variables
vim .env
# Run flipper
npm run start
```
### IPFS
A majority of Ethereum NFT metadata is stored via IPFS. While you can use a public IPFS gateway with these scripts, you will be quickly rate-limited.
As such, it is recommended to run your own local node (<1m setup time):
```bash
# Install ipfs
# Mac:
brew install ipfs
# Debian
apt install ipfs -y
# Initialize
ipfs init
# Start daemon
ipfs daemon
```
Or, to get a private gateway from a provider like [Pinata](https://www.pinata.cloud/pricing) ($20/month).
Flipped metadata is also stored on IPFS. It is recommended to use a gateway from a pinning service, so you do not lose your metadata upon killing your local daemon.
## Potential expansions
- [ ] Support retrieving metadata and images from Arweave (comply with `ar://` standard)
- [ ] Support storing flipped metadata and images on Arweave (bulk upload w/ private key)
- [ ] Parallelize retrieval (fast enough to scrape ~10K collection in <5m with local IPFS node + erigon, but can be faster with hosted nodes)