Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Friday

Mention @friday with an informal request in Slack. Friday researches current options, keeps the decision moving, coordinates with vendors when needed, and records the confirmed plan in Convex.

This repository is the build workspace for the 2026 Convex All Gas Hackathon. The frontend uses ChatGPT Sites. Convex owns durable data, backend functions, and realtime updates.

Current foundation

  • ChatGPT Sites and Vinext frontend
  • Local Convex development deployment
  • One validated table, one query, and one idempotent mutation
  • Convex React client with a clear missing-configuration state
  • Convex Auth v2 alpha with username-first passkey sign-up and sign-in
  • One private, per-user note protected by Convex authorization
  • In-memory authorization tests for isolation, validation, and unauthenticated access
  • AgentMail Convex component mounted
  • Firecrawl Convex component installed and ready to configure when an API key is available
  • Official Convex ESLint rules
  • Public, evidence-based build log in hackathon.md

Local setup

Use Node.js 24. Then run:

npm install
npx @convex-dev/auth
npx convex env set AUTH_RP_ID all-gas.localhost
npx convex env set AUTH_ORIGIN https://all-gas.localhost
npx convex dev
portless all-gas npm run dev

Keep both commands running in separate terminal panes. The Site is available at https://all-gas.localhost. Convex writes the public local backend URL to .env.local; keep that file private. Run the Auth setup command once for each new deployment. It generates signing keys and stores them in that deployment. Run npm test to check the private-note authorization contract without a live deployment.

Auth v2 playground

The project uses @convex-dev/auth v2 alpha with username-first passkeys. A new username creates an account and passkey. An existing username asks for its registered passkey. After sign-in, the playground can read and write one note that is indexed and authorized by the authenticated Convex user ID.

The local deployment is configured for:

Relying party ID: all-gas.localhost
Origin: https://all-gas.localhost

Passkeys are permanently bound to their relying party ID. Before publishing, set AUTH_RP_ID and AUTH_ORIGIN on the production Convex deployment to the final chatgpt.site host, generate separate production signing keys, and test a new production passkey. Set NEXT_PUBLIC_CONVEX_URL to the public production deployment before the publish build; production rejects loopback URLs. Never copy local signing keys to production. Production Convex URLs must use HTTPS.

Passkey autofill is off in this playground, so a page visit does not create a WebAuthn challenge. Manual registration is still a public write path. Add rate limits or another abuse gate before a public launch.

Sponsor configuration

Set secrets on the Convex deployment. Do not add them to .env.local or commit them.

npx convex env set FIRECRAWL_API_KEY
npx convex env set FIRECRAWL_WEBHOOK_SECRET
npx convex env set AGENTMAIL_API_KEY
npx convex env set AGENTMAIL_WEBHOOK_SECRET

After a Firecrawl key is available, add its typed environment mapping and component registration to convex/convex.config.ts. AgentMail is already registered. Product-specific wrappers must enforce authentication, authorization, and rate limits before they call either paid service.

OpenAI integration will be selected with the product idea. This avoids choosing an SDK, model, or agent architecture before the user workflow is known.

Submission requirements

  • Start the app on or after August 25, 2026 at 12:00 PM PT.
  • Use Convex as the backend and make OpenAI, Firecrawl, and AgentMail do real product work.
  • Publish a public chatgpt.site URL that works without an invite.
  • Keep the GitHub repository public and hackathon.md current.
  • Share the build on X or LinkedIn and tag the four sponsors.
  • Submit the repository, live URL, and a demo video under three minutes by September 22, 2026 at 12:00 PM PT.

About

Friday turns an informal Slack request into a confirmed group plan.

Topics

Resources

Code of conduct

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages