Before you begin, you'll need to set up accounts and configure a few services:
-
Open Format Dashboard
- Create an account at Open Format Dashboard
- Generate an API key to get your
OPENFORMAT_API_KEY
-
Privy Dashboard
- Create an account at Privy Dashboard
- Create a new app to get your
NEXT_PUBLIC_PRIVY_APP_ID
andPRIVY_APP_SECRET
from the Settings section of your Privy app - In the Login Methods section of your Privy app, enable:
- Discord
- Telegram
-
Database
- Set up a Supabase project, or use any PostgreSQL database
- Get your database connection string to set as
DATABASE_URL
- If using Supabase, use the pool connection string from the project settings
All environment variables are required for the application to function properly:
Variable | Description | Reference |
---|---|---|
NEXT_PUBLIC_PRIVY_APP_ID |
Public app ID for Privy social wallet and authentication | Privy Dashboard |
PRIVY_APP_SECRET |
Secret key for Privy server-side operations | Privy Dashboard |
DATABASE_URL |
PostgreSQL connection string for storing community metadata and branding | Supabase Connection Strings |
NEXT_PUBLIC_THIRDWEB_CLIENT |
Public client ID for Thirdweb IPFS storage | Thirdweb Dashboard |
THIRDWEB_SECRET |
Secret key for Thirdweb server-side operations | Thirdweb Dashboard |
OPENFORMAT_API_KEY |
API key for Open Format leaderboard generation | Open Format Dashboard |
OPENFORMAT_API_URL |
Base URL for Open Format API endpoints (default: https://api.openformat.tech/v1) | Open Format Docs |
Instantly deploy your own copy of the template using Vercel or Netlify:
-
Clone the repository:
git clone https://github.com/open-format/community-platform.git cd community-platform
-
Install dependencies:
npm install # or yarn install # or pnpm install # or bun install
the postinstall script will run the following commands:
npm run db:generate // generate the schema npm run db:migrate // migrate the schema
-
Copy the
.env.example
file to.env
and fill in the missing values:cp .env.example .env.local
-
Start the development server:
npm run dev # or yarn dev # or pnpm dev
-
Open http://localhost:3000 in your browser to see the application.