A 3D globe where your circle’s commits spark beams of light across the world.
- 3D Globe Visualization: Interactive globe displaying commit activity.
- Following Activity: Visualizes commits from people you follow over the last 3 days.
- Real-time Updates: See new commits appear as beams of light on the globe.
- Responsive Design: Works across different screen sizes.
- Frontend: React, Vite
- 3D Graphics: Three.js, React Three Fiber, React Globe GL
- Styling: Vanilla CSS, Framer Motion
- Icons: Lucide React
- Utils: d3-geo, date-fns
- Backend/Auth: Supabase
- Node.js (v18 or higher recommended)
- npm or yarn
-
Clone the repository:
git clone https://github.com/hearsilent/CommitCampfire.git cd CommitCampfire -
Install dependencies:
npm install
-
Register a new GitHub App:
- Go to GitHub Developer Settings > New GitHub App.
- Set Homepage URL and Callback URL to
http://localhost:5173or your GitHub Pages URL. - Uncheck Active under "Webhook".
- Under Permissions & events, select:
- Followers: Read-only
- Click Create GitHub App.
- Copy the Client ID and Client Secret.
-
create a
.envfile in the root directory and add your credentials:VITE_SUPABASE_URL=your_supabase_url_here VITE_GITHUB_CLIENT_ID=your_client_id_here GITHUB_CLIENT_SECRET=your_client_secret_here
Start the development server:
npm run devThe application will be available at http://localhost:5173.
Build the application for production:
npm run buildPreview the production build:
npm run previewDeploy to GitHub Pages:
npm run deployDeploy to Supabase Functions:
supabase functions deploy github-authSet up environment variables in Supabase:
supabase secrets set --env-file .env