Skip to content

NotesKeeper is a very simple aap that lets you make notes. You can add labels, set reminders , save notes locally using room and also have a backup with firebase.

License

Notifications You must be signed in to change notification settings

iamShekharGH/NotesKeeper

Repository files navigation

NotesKeeper

Hi,

NotesKeeper is a very simple aap that lets you make notes. You can add labels, set reminders , save notes locally using room and also have a backup with firebase. It is a fun project which honestly is not about the app as much as it is about learning how to code in MVVM patterns. I have followed MVVM pattern to write this aap. This is following the Guide to app Architecture.

Dependencies used are :~

  • Dagger Hilt
  • Room DB
  • Navigation Component
  • Viewmodel
  • Kotlin coroutine
  • Gson
  • flexbox
  • firebase -> datastore, crashlitics, auth
  • Datastore (preference)
  • Glide

Firebase (Cloud Firestore) Rules

rules_version = '2';
service cloud.firestore {
    match /databases/{database}/documents {
    
        match /testNote/{testNote}{
        
          allow read: if isLoggedIn()
          allow update,create: if authIsSame()
          allow delete: if isLoggedIn()          
        }
    }
    
    function isLoggedIn(){
    	return request.auth.uid != null
    }
    
    function authIsSame(){
     return request.auth.uid == request.resource.data.firebaseUserId
    }
    
} 

Here are a few(a lot) screenshots:~

SignUp

Add/Edit Note

Set Reminder

Menu Options like sort,Delete all Notes.

List and search

About

NotesKeeper is a very simple aap that lets you make notes. You can add labels, set reminders , save notes locally using room and also have a backup with firebase.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages