This is a Next.js application that serves as a dashboard to explore and filter United Nations mandates.
- Search: Find mandates by keyword, symbol, or entity.
- Filter: Narrow down results by Priority Area or by the issuing Entity.
- Active Filters: A clear view of all active filters.
- Next.js - React Framework
- TypeScript - Typed JavaScript
- Tailwind CSS - Utility-first CSS framework
- Shadcn/ui - Re-usable components built using Radix UI and Tailwind CSS.
Make sure you have Node.js (v22 or higher) and pnpm installed on your machine. Ø
First, install the dependencies:
npm installTo start the development server, run the following command:
npm run devThis will start the application on http://localhost:9002.
Build and run the container locally from the repo root (the build context must be the root so the Dockerfile can access files outside website/):
docker build -f website/Dockerfile -t un-mandates .
docker run -p 3000:3000 un-mandatesThe app will be available at http://localhost:3000.
Pushes to dev and main automatically build and deploy the container to Azure Web App via GitHub Actions (see .github/workflows/). No manual steps are needed.
npm run dev: Starts the development server with Turbopack.npm run build: Creates a production build of the application.npm run start: Starts the production server.npm run lint: Lints the codebase using Next.js's built-in ESLint configuration.npm run typecheck: Runs the TypeScript compiler to check for type errors.npm run genkit:dev: Starts the Genkit development server.npm run genkit:watch: Starts the Genkit development server in watch mode.npm list tailwindcssnpx tsc --noEmit