Petsee is an open-source REST API framework designed for pettech projects, offering a comprehensive suite of features for managing various aspects of pet-related businesses and services.
- Customer Management: Handle customer data and additional contact persons
- Animal Management: Manage animals with support for multiple ownership relationships
- Organization Structure:
- Facility → Merchant → Group hierarchy
- Person entity for staff and other individuals
- Inventory Management:
- Entities: Brand, Supplier, Product, Warehouse, Stock, Stock Ledgers
- Notes System: Create and manage notes for customers and animals
- Task System: Create and manage tasks for people
- Service Management:
- Basic service creation
- Value override capabilities (Group, Merchant, Facility, Customer, Animal, Breed, Species, Person)
- Tagging System: Apply and manage tags for Animals and Customers
- Resource Management: Manage different kind of resources like rooms, hardware
- Shift Management: Manage shifts and shift types
- Document Management:
- Document template creation
- Document creation based on templates
- Location System: Track locations eg. factility address, pet tracking
- Custom Fields: Extend entity information with custom fields (see details below)
- Translatable Dictionaries: Support for species, breeds, blood groups, allergens, diagnoses, reference categories, and values
- File Storage: Integrated file management system
- Project Management: Create and manage multiple projects
- API Key Generation: Secure API access management
- Webhook Support: Create and manage webhooks
- Webhook Logging: Comprehensive logging for webhook activities
- Data Lake: Track changes and modifications across all entities
- Notification Center: Manage communication channels
- SMS: Send and track sms messages
Petsee is built with modularity in mind, allowing easy adaptation and extension of core functionalities.
- Current support: Minio
- Default: Minio
- Coming soon: S3 support
- Extensible: Create custom adapters for other storage solutions
- Current support: Meilisearch
- Default: Meilisearch
- Optional: Can be disabled if not needed
- Extensible: Implement adapters for other search engines
- Default: Auth0
- Future plans: Support for additional authentication providers
- Current support: Twilio
- Default: Twilio
- Extensible: Implement adapters for other search engines
Petsee supports the addition of custom fields to extend information for various entities, providing flexibility and customization options for different use cases.
- Customer
- Animal
- Facility
- Merchant
- Group
- Person
- Notification Center
- Document Template
- Document Template Field
- Document Template Field Option
- Document
- Location
- Add extra attributes to entities beyond the standard fields
- Support for various data types (e.g., text, number, date, boolean)
- Searchable and filterable
- Add breed-specific health indicators for animals
- Include loyalty program information for customers
- Track facility-specific certifications or specializations
- Store custom merchant categories or business types
- Add group-wide policy or procedure references
- Include person-specific skills or qualifications
- Custom notification types to manage
- Flag document template fields that are printable
- Image for document template field option
- Title of a created document
- Name of a location
Custom fields provide the flexibility to tailor the Petsee platform to specific business needs without modifying the core data structure.
Petsee is currently in its alpha stage of development. This means:
- The API and features are subject to change
- Stability is not guaranteed, and breaking changes may occur
- Documentation may be incomplete or change frequently
We're actively seeking input from the pettech community to ensure Petsee meets real-world needs and enables faster development of innovative solutions. Your feedback is crucial in shaping the future of this project.
- Try out Petsee and report any bugs or issues
- Suggest features or improvements that would benefit your pettech projects
- Share your use cases to help us understand diverse industry needs
- Contribute to discussions on architecture and API design
- Participate in our community forums or GitHub discussions
Your insights will help us refine Petsee, making it a robust foundation for a wide range of pettech applications. Together, we can build a tool that accelerates innovation in the pet care industry.
- Docker
- Node 20
- Install dependencies
yarn
- Set up environment variables
cp .env.example .env
- Setup docker containers
yarn docker:dev
- Run db migrations
yarn prisma:migrate
- Run db migrseedations
yarn prisma:seed
- Run dev
yarn start:debug
# unit tests
$ yarn test
# e2e tests
$ yarn test:e2e
# test coverage
$ yarn test:cov
# test supertest
$ yarn test:supertest
We welcome contributions! Please see our Contributing Guidelines for more details.
Disclaimer: Everything you see here is open and free to use as long as you comply with the license. I promise to do my best to fix bugs and improve the code.