forked from mito-systems/sol-mem-gen
Part of https://www.notion.so/Option-to-post-paid-for-memes-to-twitter-x-18ca6b22d4728051804ef4f55065d5ba Co-authored-by: Shreerang Kale <shreerangkale@gmail.com> Reviewed-on: #13
80 lines
1.9 KiB
Markdown
80 lines
1.9 KiB
Markdown
# sol-mem-gen
|
|
|
|
This project is a Solana-based meme generator that allows users to connect their wallets, pay with MTM tokens, and generate memes using AI models.
|
|
|
|
## Features
|
|
|
|
- Connect to Solflare and Phantom wallets
|
|
- Pay with MTM tokens
|
|
- Generate memes using various AI models
|
|
|
|
## Prerequisites
|
|
|
|
- Node.js
|
|
- npm
|
|
- Solflare or Phantom wallet
|
|
|
|
## Setup
|
|
|
|
- Install dependencies:
|
|
|
|
```sh
|
|
npm install
|
|
```
|
|
|
|
- Copy the `.env.example` file to `.env` and add your API keys:
|
|
|
|
```sh
|
|
cp .env.example .env.local
|
|
```
|
|
|
|
- Add your FAL AI key to the `.env` file:
|
|
|
|
```env
|
|
# Get key from https://fal.ai/
|
|
FAL_AI_KEY=your_fal_ai_key
|
|
```
|
|
|
|
- Setup a project on <https://app.pinata.cloud>
|
|
|
|
- Visit <https://app.pinata.cloud/developers/api-keys> and click the `New Key` button to create a new key
|
|
|
|
- Choose the `Admin` scope and create the API key
|
|
|
|
- Copy the JWT that is displayed
|
|
|
|
- Add the following to `.env`:
|
|
|
|
```env
|
|
PINATA_JWT=
|
|
|
|
# Get the gateway from https://app.pinata.cloud/gateway
|
|
PINATA_GATEWAY=
|
|
|
|
# Mark to market twitter handle: @mark_2_market0
|
|
NEXT_PUBLIC_TWITTER_HANDLE=
|
|
|
|
# Add a secret random string that will be used to access the page to submit tweets for verification
|
|
# This secret will be checked against the URL to either allow or deny access
|
|
# The URL should look something like this: http://localhost:3000/submit-tweets/<your-verify-tweet-secret>
|
|
VERIFY_TWEET_SECRET=
|
|
```
|
|
|
|
- Run the development server:
|
|
|
|
```sh
|
|
npm run dev
|
|
```
|
|
|
|
- Open your browser and navigate to `http://localhost:3000`.
|
|
|
|
## Usage
|
|
|
|
- Connect your Solflare or Phantom wallet using the "Connect Wallet" button.
|
|
- Select an AI model and enter a prompt to generate a meme.
|
|
- Pay the required MTM tokens and wait for the meme to be generated.
|
|
|
|
## Deploy
|
|
|
|
Follow [instructions](./deploy/README.md) for deploying `sol-mem-gen` and `sol-token-locker`
|