PetSoft is a subscription-based platform designed to streamline the management of pet daycare services. With features tailored for pet daycare centers, it provides an efficient and user-friendly solution for managing subscriptions, scheduling, and more.
- Subscription Management: Handle recurring subscriptions with Stripe integration.
- User Authentication: Secure authentication with NextAuth.
- Scheduling and Booking: Easily manage daycare schedules and bookings.
- Responsive UI: Modern and responsive interface built with TailwindCSS.
- Theme Customization: Support for light and dark themes via NextThemes.
- Form Validation: Robust forms powered by React Hook Form and Zod.
- Prisma: Database ORM for managing relational data.
- Next.js: Framework for building the application.
- Stripe: Payment gateway for managing subscriptions.
- React 18: Component-based architecture.
- TailwindCSS: Utility-first CSS framework for styling.
- Radix UI: Accessible and customizable UI components.
- React Hook Form: Simplifies form handling and validation.
- Zod: Schema validation for forms and APIs.
- Zustand: Lightweight state management.
- Sonner: Elegant toast notifications.
- TypeScript: Strongly typed language for better reliability.
- ESLint: Code linting and formatting.
- PostCSS: CSS transformations and optimizations.
- Prisma: Schema management and seeding for the database.
Follow these instructions to set up and run the project locally.
Ensure you have the following installed:
- Node.js (>= 16.x)
- npm or yarn
- A PostgreSQL database (or any supported Prisma database)
-
Clone the repository:
git clone https://github.com/your-username/petsoft.git
-
Navigate to the project directory:
cd petsoft
-
Install dependencies:
npm install # or yarn install
-
Set up environment variables: Create a
.env
file in the root directory and add the necessary configuration. Refer to.env.example
for required variables. -
Set up the database:
npx prisma migrate dev
-
Seed the database:
npm run prisma:seed
Start the development server:
npm run dev
# or
yarn dev
Access the application at http://localhost:3000.
To create a production build:
npm run build
# or
yarn build
Start the production server:
npm start
# or
yarn start
Run the linter to check for code issues:
npm run lint
# or
yarn lint
Contributions are welcome! Please follow these steps:
- Fork the repository.
- Create a new branch for your feature:
git checkout -b feature-name
- Commit your changes:
git commit -m "Add new feature"
- Push to your branch:
git push origin feature-name
- Open a pull request.
- UI components by Shadcn UI
- CSS utilities by TailwindCSS
- Payment integration by Stripe
Enjoy managing your pet daycare with PetSoft! 🐾