Derived from my anxiety to illegal dog trading in online groups and offline dog dealer that is lack of awareness of dog healt. Along with my group in Binar Academy, Timo and Wildan, we made this idea come true. Some main features like Authentication, Admin Dashboard, Online Appointment with Kennel Owner are successfully implemented as part of Final Project Challenge Completion. Site is live in https://asuki.netlify.app/
The following lists show my development stack:
Integrating NextJS and Firebase
=> First time working with some of capability in Firebase. Since it is a serverless backend, we're using services provided by Google so we don't have to write a single line of code for backend. I use Firestore as main database (NoSQL), Firebase Auth as user authentication, and Firebase Storage as file management (uploading/retrieving direct link that being used in the app).Redux Toolkit Implementation
=> I have worked withRedux
a few times before this project, but Redux Toolkit was blew my mind. It reduces our effort to write some boilerplate code and make it easy since already bundled with some common package likeRedux Thunk
andImmer
. The implementation is much easier than I thought, but some of Firebase feature can replace redux functionality especially related to User Authentication.Netlify Deployment
=> Free deployment platform nowaday is super helpful. It comes with CI/CD as well. In This project Netlify handle everything smoothly, some configuration may be needed at first but after that. The site is deployed automatically with GitLab merge trigger.
- User Authentication using Firebase Auth
- Book Appointment for adopting dog online
- Dedicated Admin space for CRUD of User, Puppy, Booking, and Pricing
- UI that contains Information about the Kennel and the Dogs
If you want to edit the code, you need to have nodejs
and NPM
.
Install all dependencies by this command if you already get node and npm installed in your system.
cd <repository-folder>
npm install
- Set your terminal directory to
repository folder
- Start the Next Server by running this command
npm run dev
- Open
localhost:3000
in your browser
- Responsive website implementation, still not work as expected
- There's still bugs regarding Firebase Storage, worth to investigate.
- Still slow when doing SSR and retrieving image from Firebase Storage, worth to investigate why
Distributed under the MIT License.
Sedana Yoga - @cok_yoga