PawHaven is a full-stack platform designed to support stray animal rescue and adoption, connecting volunteers, adopters, and the community.
The platform allows users to report rescue cases, track rescue progress, share rescue stories, and improve the visibility and coordination of rescue efforts.
In addition to the application itself, PawHaven also serves as a practice of modern full-stack engineering, focusing on scalable architecture, maintainable code, and efficient development workflows.
-
Rescue Case Management
Create and track rescue cases, helping volunteers coordinate rescue operations. -
Authentication & Authorization
Secure authentication with JWT and role-based access control. -
Knowledge Base
Provide rescue guides and adoption knowledge through a centralized content system. -
Community Interaction
Share rescue stories and exchange experiences within the community.
- Monorepo architecture using
pnpm workspace - Full-stack TypeScript with shared types between frontend and backend
- React + React Query + React Hook Form for scalable frontend architecture
- NestJS microservices for backend service isolation
- Engineering practices including ESLint, Prettier, Husky, and CI/CD pipelines
| Layer | Technology |
|---|---|
| Frontend | React, TypeScript, React Query, React Hook Form |
| Backend | NestJS, Node.js |
| Architecture | Microservices, Monorepo |
| Package Management | pnpm workspace |
| Code Quality | ESLint, Prettier, Husky |
| CI/CD | GitHub Actions |
PawHaven is an open and evolving project.
If you are interested in animal rescue, open-source development, or project architecture discussions, you are welcome to join the community.
π¬ Discord
π https://discord.gg/znnG258E
You can use the Discord server to:
- discuss project ideas and features
- talk about technical architecture
- ask development questions
- collaborate with other contributors
Detailed documentation can be found in the /docs directory.
- Application Overview
- Architecture Design
- Project Structure
- Monorepo & Project Standards
- Authentication & Authorization Architecture
Contributions are welcome.
If you would like to contribute:
- Open an issue to discuss ideas
- Fork the repository
- Create a feature branch
- Submit a pull request