AI-powered meme search engine for Farcaster.
- Search memes using AI-powered semantic search
- Farcaster Frames integration for sharing memes
- Multiple meme collections (Farcaster, Degen, Higher, Enjoy)
- Framework: Next.js 14
- Search: Typesense
- Images: Cloudflare Images
- Analytics: Umami
- Styling: Tailwind CSS
- Node.js 18+
- npm or yarn
-
Clone the repository:
git clone <repo-url> cd magi
-
Install dependencies:
npm install
-
Set up environment variables:
cp .env.example .env.local
-
Fill in your
.env.localwith your actual values:TYPESENSE_HOST=your-typesense-host TYPESENSE_API_KEY=your-admin-key NEXT_PUBLIC_TYPESENSE_HOST=your-typesense-host NEXT_PUBLIC_TYPESENSE_API_SEARCH_ONLY=your-search-key CLOUDFLARE_IMAGES_ID=your-cloudflare-id NEXT_PUBLIC_CLOUDFLARE_IMAGES_ID=your-cloudflare-id NEXT_PUBLIC_UMAMI_WEBSITE_ID=your-umami-id
Development:
npm run devProduction build:
npm run build
npm run startpages/
├── index.js # Main search page
├── action.js # Farcaster action page
├── api/
│ ├── frame-farcaster.js
│ ├── frame-degen.js
│ ├── frame-higher.js
│ └── frame-enjoy.js
└── components/
├── Search.js # Main search component
├── ActionFC.js # Farcaster action component
└── ...