Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
100 commits
Select commit Hold shift + click to select a range
6ed169a
template app
jasukej May 31, 2025
bfccd34
add pages and placeholder content
jasukej May 31, 2025
9b8c5ba
make sidebar collapsible
jasukej May 31, 2025
bf3b4b3
populate app page and db utils
jasukej May 31, 2025
70a1d5c
util for portal config
jasukej May 31, 2025
b435df3
portal dashboard ui
jasukej May 31, 2025
0f5175f
add loading component
jasukej May 31, 2025
51647d9
remove judging placeholder
jasukej May 31, 2025
18c6d55
under construction page
jasukej May 31, 2025
673310d
add status overrides
jasukej May 31, 2025
07a9fb5
change evaluation response container to readonly inputs
jasukej May 31, 2025
d4c921d
bulk accept ui
jasukej May 31, 2025
aa3215e
add fb hosting config
jasukej May 31, 2025
1f7e1d5
restyle: text size for accessibility
jasukej May 31, 2025
ad8f4a4
add logo
jasukej May 31, 2025
fb562a4
dynamically load questions
jasukej May 31, 2025
905db88
fix: linting
jasukej Jun 1, 2025
4bc9c3e
Merge branch 'main' into feat/auth
hib4 Jun 1, 2025
09bca99
Merge pull request #5 from GarudaHacks/feat/auth
hib4 Jun 1, 2025
22e7fab
chore: delete firebase hosting
hib4 Jun 1, 2025
d79d1cb
Merge pull request #6 from GarudaHacks/chore/delete-firebase-hosting
hib4 Jun 1, 2025
2b85d3c
chore: add Vercel Analytics
hib4 Jun 1, 2025
f2748a9
chore: change favicon
hib4 Jun 1, 2025
17e6b5e
fix: Vercel Analytics
hib4 Jun 1, 2025
ab96201
chore: update README
hib4 Jun 1, 2025
bdc8291
feat: email integration
hib4 Jun 23, 2025
fad5024
fix: eslint
hib4 Jun 23, 2025
5fb3ed1
fix: eslint
hib4 Jun 23, 2025
e358ea8
Merge pull request #7 from GarudaHacks/feat/email-integration
hib4 Jun 23, 2025
6e55492
better show modal
heryandjaruma Jun 23, 2025
0bede51
add filtering in application accept modal
heryandjaruma Jun 23, 2025
759e7f2
add loading spinner and better row ui
heryandjaruma Jun 23, 2025
13039dd
add lucide dependency
heryandjaruma Jun 23, 2025
4262592
better app row ui
heryandjaruma Jun 23, 2025
31d1b38
add preview in accepting application
heryandjaruma Jun 23, 2025
36eece2
minor fix on ui
heryandjaruma Jun 23, 2025
b715783
add select and unselect all
heryandjaruma Jun 23, 2025
59c733c
add better ui to accept applications
heryandjaruma Jun 23, 2025
ddd9a6b
better confirmation modal
heryandjaruma Jun 23, 2025
414c3b5
add react hot toast dependency
heryandjaruma Jun 24, 2025
490f1c9
init function bulk accept
heryandjaruma Jun 24, 2025
369a570
add filter
heryandjaruma Jun 24, 2025
66e6fff
add sort
heryandjaruma Jun 24, 2025
fe964e9
fix filtering logic
heryandjaruma Jun 24, 2025
8afc6f9
proper sorting
heryandjaruma Jun 24, 2025
9bcd8e0
add finalModal
heryandjaruma Jun 24, 2025
ca1a88b
add accept application modal
heryandjaruma Jun 24, 2025
f1c6e0c
better toast
heryandjaruma Jun 24, 2025
0c7012d
style: acceptance email
hib4 Jun 25, 2025
8ad538e
better loading ui when accepting
heryandjaruma Jun 25, 2025
39f134e
Merge branch 'main' into feat/bulk-accept
heryandjaruma Jun 25, 2025
20e742c
minor fix loading
heryandjaruma Jun 25, 2025
dcca4c6
better ui for confirmation
heryandjaruma Jun 25, 2025
fc97e90
add acceptance timestamp
heryandjaruma Jun 25, 2025
26434ca
add evaluation max score
heryandjaruma Jun 25, 2025
b0f9cfa
proper submit score
heryandjaruma Jun 25, 2025
144ef21
Merge pull request #8 from GarudaHacks/feat/bulk-accept
hib4 Jun 25, 2025
4cc8d4b
fix: max score
hib4 Jun 25, 2025
3b57f58
Merge pull request #9 from GarudaHacks/fix/max-score
hib4 Jun 25, 2025
8297ae5
chore: acceptance email
hib4 Jun 27, 2025
c05ab9e
chore: acceptance email
hib4 Jun 27, 2025
d234b00
Merge pull request #10 from GarudaHacks/chore/acceptance-email
hib4 Jun 27, 2025
d021ad1
style: rsvp confirmed
hib4 Jun 28, 2025
f8699c5
Merge pull request #11 from GarudaHacks/style/rsvp-confirmed
hib4 Jun 28, 2025
b7818d3
feat: list of teammates
hib4 Jul 1, 2025
8ec987a
Merge pull request #12 from GarudaHacks/feat/list-of-teammates
hib4 Jul 1, 2025
3d7508c
chore: add last name
hib4 Jul 1, 2025
bd265bd
chore: add gender
hib4 Jul 5, 2025
46a8394
revamp rejection email
heryandjaruma Jul 13, 2025
ef289f5
Merge pull request #13 from GarudaHacks/feat/rejection-email-revamp
hib4 Jul 14, 2025
d7585bd
all mentors view
heryandjaruma Jul 16, 2025
defd87f
minor layouting
heryandjaruma Jul 16, 2025
574a478
add specialization filter view
heryandjaruma Jul 16, 2025
5def4d5
add mentoring availability
heryandjaruma Jul 16, 2025
e1af786
add mentor item component
heryandjaruma Jul 16, 2025
28e5730
better item component
heryandjaruma Jul 16, 2025
d04699b
add back button
heryandjaruma Jul 16, 2025
74a3e63
init mentor detail
heryandjaruma Jul 16, 2025
a5963ca
init mentorings time slots
heryandjaruma Jul 16, 2025
21b1978
available mentorings
heryandjaruma Jul 16, 2025
f671fd7
add mentoring slots for mentor
heryandjaruma Jul 16, 2025
8ffb4bd
use mentoring container
heryandjaruma Jul 16, 2025
7a030b5
improve ui
heryandjaruma Jul 16, 2025
6ca6b89
define mentorship slot
heryandjaruma Jul 16, 2025
6261d4f
better draw mentorship slot
heryandjaruma Jul 16, 2025
d028dbc
better mentorship schedule view
heryandjaruma Jul 16, 2025
a9fcb90
better layouting
heryandjaruma Jul 16, 2025
6e2ad26
change mentorship impl; edit type
heryandjaruma Jul 17, 2025
4c86686
add better layouting
heryandjaruma Jul 17, 2025
cdedab9
change mentor layouting
heryandjaruma Jul 17, 2025
fd462a7
add mentorship page
heryandjaruma Jul 17, 2025
d725daf
better add mentorship slot ui
heryandjaruma Jul 17, 2025
1e07e8f
proper add mentorship slots
heryandjaruma Jul 17, 2025
f79b5d8
add batch add slot
heryandjaruma Jul 17, 2025
643e277
remove unused code
heryandjaruma Jul 17, 2025
b8ab959
add delete mentorship appointment
heryandjaruma Jul 17, 2025
a6702ff
better mentor layouting
heryandjaruma Jul 17, 2025
a7b013c
add image support
heryandjaruma Jul 17, 2025
8db90d6
minor fix mentorship
heryandjaruma Jul 17, 2025
2515fde
better mentorship layout
heryandjaruma Jul 17, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions .firebaserc
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"projects": {
"default": "garuda-hacks-6-0"
}
}
93 changes: 0 additions & 93 deletions .github/workflows/nextjs.yml

This file was deleted.

4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -39,3 +39,7 @@ yarn-error.log*
# typescript
*.tsbuildinfo
next-env.d.ts

# for dev only - Ryan
/app/api/create-mentors/**
*adminsdk*.*
142 changes: 122 additions & 20 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,36 +1,138 @@
This is a [Next.js](https://nextjs.org) project bootstrapped with [`create-next-app`](https://nextjs.org/docs/app/api-reference/cli/create-next-app).
# Garuda Hacks Admin Portal πŸš€

## Getting Started
The official admin portal for Garuda Hacks 6.0, a premier hackathon event. Built with modern web technologies to provide a seamless experience for administrators.

First, run the development server:
## πŸ› οΈ Tech Stack

- **Frontend**

- Next.js 15
- React 19
- TypeScript
- TailwindCSS
- Vercel Analytics

- **Backend**

- Firebase Cloud Functions
- Firebase Authentication
- Firebase Firestore

- **Deployment**
- Vercel
- Vercel Analytics

## πŸš€ Getting Started

### Prerequisites

- Node.js (v18 or higher)
- npm or yarn
- Firebase account

### Installation

1. Clone the repository

```bash
git clone https://github.com/your-username/gh-admin.git
cd gh-admin
```

2. Install dependencies

```bash
npm install
```

3. Set up environment variables

```bash
cp .env.example .env
```

Fill in your Firebase configuration in `.env`

4. Start development server

```bash
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev
```

Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.
### Building for Production

```bash
npm run build
```

## πŸ“ Project Structure

```
gh-admin/
β”œβ”€β”€ app/ # Next.js app directory
β”œβ”€β”€ components/ # Reusable UI components
β”œβ”€β”€ contexts/ # React context providers
β”œβ”€β”€ lib/ # Utility functions and Firebase config
β”œβ”€β”€ public/ # Static assets
β”œβ”€β”€ static/ # Additional static files
β”œβ”€β”€ .github/ # GitHub workflows and templates
β”œβ”€β”€ firebase.json # Firebase configuration
β”œβ”€β”€ next.config.ts # Next.js configuration
└── tailwind.config.ts # Tailwind CSS configuration
```

## πŸ”§ Configuration

### Environment Variables

Required environment variables:

- `NEXT_PUBLIC_FIREBASE_API_KEY`
- `NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN`
- `NEXT_PUBLIC_FIREBASE_PROJECT_ID`
- `NEXT_PUBLIC_FIREBASE_STORAGE_BUCKET`
- `NEXT_PUBLIC_FIREBASE_MESSAGING_SENDER_ID`
- `NEXT_PUBLIC_FIREBASE_APP_ID`
- `NEXT_PUBLIC_FIREBASE_MEASUREMENT_ID`

## 🀝 Contributing

1. Fork the repository
2. Create your feature branch (`git checkout -b feat/amazing-feature`)
3. Make your changes following our commit conventions:

```bash
# Format
<type>(<scope>): <description>

You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file.
# Examples
feat(auth): add Google OAuth login
fix(api): resolve proxy configuration
docs(readme): update installation steps
style(ui): improve button hover states
refactor(forms): simplify validation logic
test(api): add auth endpoint tests
chore(deps): update dependencies
```

This project uses [`next/font`](https://nextjs.org/docs/app/building-your-application/optimizing/fonts) to automatically optimize and load [Geist](https://vercel.com/font), a new font family for Vercel.
Types: `feat`, `fix`, `docs`, `style`, `refactor`, `test`, `chore`
Scope: optional, indicates the module affected

## Learn More
4. Push to the branch (`git push origin feat/amazing-feature`)
5. Open a Pull Request

To learn more about Next.js, take a look at the following resources:
## πŸ“ License

- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API.
- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial.
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js) - your feedback and contributions are welcome!
## πŸ™ Acknowledgments

## Deploy on Vercel
- [Next.js](https://nextjs.org/)
- [React](https://reactjs.org/)
- [Firebase](https://firebase.google.com/)
- [TailwindCSS](https://tailwindcss.com/)
- [Vercel](https://vercel.com/)

The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js.
---

Check out our [Next.js deployment documentation](https://nextjs.org/docs/app/building-your-application/deploying) for more details.
Made with ❀️ by the Garuda Hacks Team
Loading