This project is an extension of my previous MERN ToDoList.
Features include:
-
Google and Local Authentication with Firebase Authentication
-
Multiple lists per user
-
Sharing lists with other users
-
Tasks with tagging and status to faciliate filtered searches.
The webapp is built using the Firebase Framework with a React.js front-end. Within Firebase, the following are used:
-
Firebase Authentication
-
Firestore Database
-
Hosting
The Firestore Architecture is as such
The security rules for database access are provided in ./src/firestorerules.txt
.
In Firebase Authentication, you need to set-up both Google and local (email and password) sign-in options.
After cloning the repo, build using
npm install && sed -i 's/;;/;/' node_modules/semantic-ui-css/semantic.min.css && npm run build
.
Note that the above command removes a duplicate ;
in node_modules/semantic-ui-css/semantic.min.css
from semantic-ui-css:2.4.1
which would cause typescript to crash.
You can then serve using serve -s build
after installing serve
globally using npm
.
This app was hosted on Firebase Hosting, serving from the ./build
directory.