An open API service indexing awesome lists of open source software.

https://github.com/igorcbraz/gitfest

Website to generate a festival invite based on your top repositories !
https://github.com/igorcbraz/gitfest

art festival festival-app gitfest github github-integration share

Last synced: 9 days ago
JSON representation

Website to generate a festival invite based on your top repositories !

Awesome Lists containing this project

README

          





Gitfest



GitFest


Create a festival lineup
from your top Github repositories.


GitHub Stars
Netlify Status
MIT License


Key Features
How To Use
Related
License


Final Result


Festival Lineup Result

## Key Features

- Create your own Lineup, see your repositories like never before
- Dark/Light mode
- Giving attention to prefer-color-scheme.
- Github OAuth integration
- Github API consuming
- Manipulating SVG
- Save the result as image

## How To Use (Next.js + TypeScript)

This project was migrated from Create React App to Next.js (App Router) with full feature parity. You'll need [Git](https://git-scm.com) and [Node.js](https://nodejs.org/en/download/) installed.

```bash
# Clone the repository
git clone https://github.com/Igorcbraz/GitFest
cd GitFest

# Copy environment variables
cp .env.example .env.local
# Edit .env.local and add your Supabase credentials

# Install dependencies
npm install

# Run in development
npm run dev

# Lint
npm run lint

# Build for production
npm run build

# Start production server
npm start
```

### Environment Variables

The following variables must be set in `.env.local`:

```
NEXT_PUBLIC_SUPABASE_PROJECT_URL=your_supabase_url
NEXT_PUBLIC_SUPABASE_API_KEY=your_supabase_anon_key
```

### Production

Deploy on any Next.js compatible platform (Vercel, Netlify with Next adapter, etc.). Ensure the environment variables above are configured in the hosting provider.

### Migration Notes

- React Router replaced by Next.js App Router (`app/` folder).
- Global state and theme context moved to `app/context/AuthContext.tsx`.
- Supabase client now uses `NEXT_PUBLIC_` prefixed variables.
- All interactive components are Client Components ("use client").
- Pages: `Landing` -> `app/page.tsx`, `Home` -> `app/home/page.tsx` (protected by context state).
- Tailwind content paths updated for `app/`.

### Scripts

| Script | Description |
| ------- | ------------------------------------- |
| `dev` | Starts Next.js in development mode |
| `build` | Creates an optimized production build |
| `start` | Starts the production server |
| `lint` | Runs ESLint (Next.js config) |

> After migration there is no need for `react-scripts`. All previous functionality (OAuth, theme toggle, repository fetch, SVG generation) was preserved.

## Related

[Instafest](https://www.instafest.app/) - Version to create lineup by your top songs

## Support

Buy Me A Coffee

## You may also like...

- [Calculator](https://github.com/Igorcbraz/Calculadora) - Explain prefer-color-scheme with calculator project

## License

MIT

---

> [igorcbraz.me](https://igorcbraz.me)  · 
> GitHub [@Igorcbraz](https://github.com/Igorcbraz)  · 
> Linkedin [@Igorcbraz](https://www.linkedin.com/in/igorcbraz/)