Bachelor of Engineering (BE) Final year project
Web platform designed to connect individuals who are passionate about helping stray animals. It provides a centralized space where users can offer assistance, such as providing food, shelter, or medical aid, to stray animals in need. Through this platform, users can easily find and connect with others who share their commitment to improving the welfare of stray animals.
Front-end:
Nextjs Framework
Typescript
TailwindCss
React-Icons library
Back-end:
Prisma
Prisma for db schema design
Mongodb for backend connectivity
API's:
-Google oAuth
-Cloudinary
-NextAuth
-Pusher (for sending messages between clients)
Twilio (sms)
Twilio client
DATABASE_URL=
NEXTAUTH_SECRET=
NEXT_PUBLIC_PUSHER_APP_KEY=
PUSHER_APP_ID=
PUSHER_SECRET=
NEXT_PUBLIC_CLOUDINARY_CLOUD_NAME=
GOOGLE_CLIENT_ID=
GOOGLE_CLIENT_SECRET=
npx prisma db push
Url's for setup API keys and secret in .env
https://pusher.com/ - pusher
https://cloudinary.com/ -image upload cloudinary
https://console.cloud.google.com/apis/credentials - oauth sigin google
https://cloud.mongodb.com/ - database
Key Features:
- Real-time messaging using Pusher
- Message notifications and alerts
- Tailwind animations and transition effects
- Tailwind design for sleek UI
- Full responsiveness for all devices
- Google authentication integration
- Credential authentication with NextAuth
- File and image upload using Cloudinary CDN
- Client form validation and handling using react-hook-form
- Server error handling with react-toast
- Online/offline user status
- Message read receipts
- Message attachments and file sharing
- Group chats and one-on-one messaging
- Creating and managing chat rooms and channels
- User profile customization and settings
- Sms functionality using twilio
- pin a message etc, soon to be implemented