This web application allows volunteers to manage and review scholarship applications for the ESN Porto Scholarship.
- Dashboard Displays statistics such as application distribution and application status.
| Dashboard |
|---|
![]() |
| Statistics Overview |
| Import View |
|---|
![]() |
| Edition & Data Management |
| Review Interface |
|---|
![]() |
| Application Review Panel |
- React (Vite)
- Tailwind CSS
- React Router
- Firebase Authentication
- Cloud Firestore
rechartsfor chartspapaparsefor CSV parsinglucide-reactfor iconsfirebaseSDK
- Node.js (v18+ recommended)
- npm or yarn
-
Clone the repository:
git clone https://github.com/ESN-Porto/scholarship-website.git cd scholarship-website -
Install dependencies:
npm install
Create a .env file in the project root:
VITE_FIREBASE_API_KEY=your_api_key
VITE_FIREBASE_AUTH_DOMAIN=your_project_id.firebaseapp.com
VITE_FIREBASE_PROJECT_ID=your_project_id
VITE_FIREBASE_STORAGE_BUCKET=your_project_id.appspot.com
VITE_FIREBASE_MESSAGING_SENDER_ID=your_messaging_sender_id
VITE_FIREBASE_APP_ID=your_app_idStart the local dev server:
npm run devThe app runs at: http://localhost:5173
src/
├── assets/ # Static assets
├── components/ # UI components
│ ├── common/ # Shared components
│ └── ... # Feature-specific components
├── context/ # Context providers
├── data/ # Static data
├── hooks/ # Custom hooks
├── services/ # Firebase and other service modules
├── utils/ # Helpers and utilities
├── App.jsx # Root component
└── main.jsx # Entry point


