Welcome to Purrfectly, the ultimate online shopping destination for pet owners! Our unique feature, shoppable videos, allows you to see our pet products in action, used by its final consumers, our mascots! And if you fall in love with one of the animals that appears in the videos, you can even adopt them, as they are in need of a home.
- Shoppable videos: This feature allows you to see our pet products in action, used by real mascots.
- Pet adoption: You can adopt one of our mascots if you fall in love with them.
- Wide selection of pet products: We offer a wide variety of high-quality products for all your pet's needs.
- Blog-like section with tips and care about your pets.
This project aims to participate in @midudev hackathon in collaboration with Cloudinary.
View project · Report Bug · Request Feature
A .env
file is needed with the following variables:
DATABASE_URL -> Connection URL of your primary database.
SHADOW_DATABASE_URL -> Connection URL of the shadow database needed by Prisma for migration operations.
SESSION_SECRET -> The session secret used by remix to handle cookie sessions.
VERCEL_FORCE_NO_BUILD_CACHE -> This is needed if deployed in Vercel in order for it to not cache models and avoid problems.
CLOUDINARY_CLOUD_NAME -> The cloud name of your cloudinary account.
STRIPE_SECRET_KEY -> Used to allow payments (test mode).
- Clone the repository
git clone https://github.com/ivsantos/purrfectly.git
- CD into the working directory
cd purrfectly
- Install dependencies
npm install
- Run the app (Docker is needed to create a PostgreSQL instance with docker-compose)
npm run docker
npm run dev
Enjoy! 🎉
- Remix.run
- Typescript
- Tailwind CSS
- Prisma
- Headless UI
- Stripe
- Cloudinary as the core logic of the shoppable videos and catalog images transformations
- Docker
- ChatGTP as the content generation for the catalog, adoptables and blog posts
- iStockPhoto as the video and images provider
- Storyset as the hero logos
- @midudev for the hackathon and the inspiration to the community to keep moving 👋