This Cloud Application was developed using AppWrite as a BaaS (Backend as a Service), React as its frontend, and Tailwind CSS. The users can signup/login, read other users' posts or create, edit or delete their posts.
appwrite_react_blog.mp4
The video shows the implementation of the following:
- Authentication (SignUp and Login)
- Authentication storage in Redux
- Reading the posts created by others
- Creating a post
- Editing a post that was owned by a respective user
- Unable to Edit or Delete other users' posts
Implementation of Appwrite that gives BaaS (Backend as a Service) on Cloud (Similar to AWS).
Inorder to separate the dependency of Appwrite which is a Backend as a Service, a separate service has been created. This ensures separating the app if the app needs to be migrated to any other cloud platform.
Implementation of Clean Code
Redux Toolkit is used to track the authentication (login and logout)
In the branch named
post-redux
, postSlice has been created to cache the posts to minimize the GET request from the server.
useForwardRef is used to transfer the state from parent to child component
Usage of React hook form for signup and login
Slug Transformation: used
watch
method of React hook form to watch the activity of thetitle
field and transformed slug based on thetitle
.
Protected Container is created to protect pages and routes