Paldo is a full-stack scholarship application system that connects students and local government scholarship providers. This README covers the repo layout, local and Docker startup, and links to the walkthrough docs.
- Backend docs: docs/backend.md
- Frontend docs: docs/frontend.md
- Docker docs: docs/docker.md
- File walkthroughs: docs/file-walkthroughs/README.md
The repository contains two main parts:
backend/- ASP.NET Core Web API with EF Core and PostgreSQL.frontend/- React + Vite single-page application.
Both can run independently in development or together via Docker Compose.
Prerequisites:
- Node.js v18+
- .NET 8.0 SDK
- PostgreSQL, or the Docker database from the Compose setup
Frontend:
cd frontend
npm install
npm run devBackend:
cd backend
dotnet restore
dotnet runBy default, Vite runs on port 5173. The backend port comes from appsettings.Development.json or the console output.
Start the full stack with Docker Compose:
docker compose up --buildNotes:
- The Compose stack uses service hostnames so the backend can reach the database without changing localhost-based connection strings.
- See docs/docker.md for Dockerfile patterns and development tips.
backend/ # ASP.NET Core API, controllers, services, EF Core models and migrations
frontend/ # React (Vite) app, components, pages, services, and styles
docs/ # Overview docs and per-file walkthroughs
- Use
dotnet watch runinsidebackend/for automatic recompiles. - Use the Vite dev server (
npm run dev) for fast frontend iteration. - For end-to-end local parity, use
docker compose up --build.
Run backend tests with:
cd backend
dotnet testThe frontend includes developer/demo shortcuts to simulate application lifecycle changes from the student dashboard:
Shift + 3- simulate approvalShift + 4- simulate rejectionShift + 5- simulate completion/end
Open a PR against main and include any migration or configuration steps needed for your change.