Skip to content

bensenescu/graham

Repository files navigation

Graham - Refine your answers

I'm constantly fielding similar questions. Graham is for refining the answers to questions. One great example: helping your team to perfect your application to YCombinator.

Features:

  • 📔 Use templates like the YC App questions.
  • 🤪 Create pages for your pitch to investors, customers, or friends and family.
  • ✨ AI Review with customizable prompts
  • 🎤 Practice mode: answer questions verbally, get transcriptions, and self-rate your performance
    • Mobile friendly ✅
  • 👫 Share pages for real-time multiplayer editing
  • 🔒 Authentication & User Management via Every App

Customizable AI Review

Customizable AI Review

Collaborate with your teammates

Collaborate with your teammates

Practice your answers

Practice your answers

Run Locally (Demo)

If you don't have a Cloudflare account and just want to test it out, run it locally with these steps:

git clone https://github.com/bensenescu/graham.git
cd graham
pnpm i
DEMO_MODE_LOCAL_ONLY=true pnpm run dev

If you want use AI features, create a .env.local with these values:

VITE_APP_ID=graham
OPENAI_API_KEY=your-key

Self Hosting

  1. Complete Prerequisites
  2. Run these commands:
git clone https://github.com/bensenescu/graham.git
cd graham
npx everyapp app deploy
  1. Add your OPENAI_API_KEY (other providers should be easy to add if you want to contribute a PR!):
npx wrangler secret put OPENAI_API_KEY

Prerequisites

Graham was built as part of my larger project: Every App. Every App hoists common logic out of individual apps like auth and user management so that each app doesn't need to reinvent the wheel.

The goal is to foster an open source ecosystem of apps and make them more accessible to people who aren't already self hosting software themselves.

Every App apps are self hosted on Cloudflare so there is a little bit of initial setup, but then self hosting more apps is as simple as the npx everyapp app deploy above.

  1. Make a Cloudflare Account (No credit card needed) - https://dash.cloudflare.com/sign-up

    Skip any Cloudflare onboarding like configuring a domain, this is unnecessary for Every App.

  2. Authenticate with Cloudflare (choose one):

    • Login via the Cloudflare CLI (recommended):
      npx wrangler login
    • Or set the CLOUDFLARE_API_TOKEN environment variable
  3. Self host the Every App Gateway

    • npx everyapp gateway deploy
    • Follow the link this returns to create your account in the Gateway.

Local Development

Setup

  1. cp .env.example .env.local
    • The GATEWAY_URL should match your gateway from npx everyapp gateway deploy
  2. pnpm run db:migrate:local
  3. pnpm install

Run locally

pnpm run dev

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors