Skip to content

Latest commit

 

History

History
90 lines (65 loc) · 4.15 KB

README.md

File metadata and controls

90 lines (65 loc) · 4.15 KB

Getting Started

Prerequisites

Before you begin, you'll need to set up accounts and configure a few services:

  1. Open Format Dashboard

  2. Privy Dashboard

    • Create an account at Privy Dashboard
    • Create a new app to get your NEXT_PUBLIC_PRIVY_APP_ID and PRIVY_APP_SECRET from the Settings section of your Privy app
    • In the Login Methods section of your Privy app, enable:
      • Discord
      • Telegram
      • Email
  3. 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

Environment Variables

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

Deploy

Instantly deploy your own copy of the template using Vercel or Netlify:

Deploy with Vercel Deploy with Netlify

Local Development

  1. Clone the repository:

    git clone https://github.com/open-format/community-platform.git
    cd community-platform
  2. 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
  3. Copy the .env.example file to .env and fill in the missing values:

    cp .env.example .env.local
  4. Start the development server:

    npm run dev
    # or
    yarn dev
    # or
    pnpm dev
  5. Open http://localhost:3000 in your browser to see the application.