Skip to content

ConnectBhawna/DigiManager

Repository files navigation

💙DigiManager💙

DigiManager is app that gives you the power to do more. It manages your daily tasks and boosts your productivity.



⚙️ Application Install

You can Install and test latest DigiManager app from below 👇

DigiManager

⚙️ Setup

Clone the repository on your machine. Open the project on your IDE and connect it to firebase and add dependencies and everything will be setup.

  1. Clone the Repository Repo

    • https://github.com/ConnectBhawna/DigiManager
  2. Open the Project in Android Studio. For installation Follow this

  3. Add the dependencies and connect with Firebase.

  4. Open DigiManager App into the Emulator or Physical Device.



📸 App Screenshots

Splash Screen of the App Starting Page Sign-Up Page
Sign-In Page Profile of User User Task on Profile
SubTask of Task Status of Task Card Adding Under task
Delete Task Assign Task to User Add Colour According to Priority
Select Member Completion Date Profile Task Updation
Update Profile Add Member in Team



About DigiManager

It uses firebase for Storaging Data. It uses Firebase Authentication for email based auth and Google auth, Firebase Crashlytics for crash reporting.

  • Fully functionable.
  • Clean and Simple UI so that any people can use.
  • Support many tasks visible to all members under same organisation.
  • You can see the total task completed or assigned to you.
  • Added the dragging and dropping feature in task list🤩
  • It supports dark theme too 🌗.



Problem it Solves 🤩

As we all know, Every year around 1800 new startup are build in India. So as a founder we need to have a Manager App for your company for scaling our product in the market. SO for this we need to hire a Mobile developer for making app and pay off pay in this as well. So here DigiManager solve the issue you can track the employees working task and all in the same app.



Insights into the app 🔎

I built this app to demonstrate knowledge working in Kotlin and Firebase . This app was built using Kotlin and Firebase. This application supports user authenticatio using firebase.Users are able to create a new account using their email address and can then sign in to save coins to a user specific list. This is made possible by creating a firestore cloud storage database at the time of user registration. Another feature of this application is it offers light as well as dark theme. So now you can use DigiManager in whatever theme you like the most. Have a look at your running task, upcoming and completed tasks all in one place. Create a task by pressing the button. DigiManager gives you notification on assigning as well as on completing the task. Then you will be able to achieve your long term goal.



Built With 🛠

  • Kotlin - First class and official programming language for Android development.
  • Coroutines - For asynchronous and more..offers light as well as dark theme first_quarter_moon. So now you can use DigiManager in whatever theme you like the most. fire DigiManager supports both email based and Social media authentication like Google authentication. Planning to add Facebook authentication too. grin

Have a look at your running task, upcoming and completed tasks all in one place. Create a task by pressing the button. DigiManager lets you start a task watch otherwise you get the notification of not completing the task. Then you will be not able to achieve your long time goal cry.

  • Flow - A cold asynchronous data stream that sequentially emits values and completes normally or with an exception.
  • StateFlow - StateFlow is a state-holder observable flow that emits the current and new state updates to its collectors.
  • Android Architecture Components - Collection of libraries that help you design robust, testable, and maintainable apps.
    • ViewModel - Stores UI-related data that isn't destroyed on UI changes.
    • ViewBinding - Generates a binding class for each XML layout file present in that module and allows you to more easily write code that interacts with views.
    • DataBinding - Binds data directly into XML layouts
    • Room - Room is an android library which is an ORM which wraps android's native SQLite database
    • DataStore - Jetpack DataStore is a data storage solution that allows you to store key-value pairs or typed objects with protocol buffers.
  • Backend
    • Firebase
      • Firebase Auth - To support email based authentication and google authentication
      • Firebase Crashlytics - To report app crashes
    • Firebase Storage - For storing all the data .
  • Retrofit - A type-safe HTTP client for Android and Java.
  • GSON - A modern JSON library for Kotlin and Java.
  • Timber - A simple logging library for android.
  • GSON Converter - A Converter which uses Moshi for serialization to and from JSON.
  • Glide - An image loading and caching library for Android focused on smooth scrolling

Package Structure 👿

com.example.digimanager    # Root Package
.
├── activities                # For Storing all activities
|   ├── BaseActivity          
|   ├── CardDetailsActivity          
│   ├── CreateBoardActivity           
│   └── IntroActivity  
│   └── MainActivity
│   └── MembersActivity
│   └── MyProfileActivity  
│   └── SignInActivity 
│   └── SignUpActivity  
│   └── TaskListActivity  
|
├── adapters                # adapter for inflating all views              
│   └── BoardItemsAdapters
│   └── CardListItemsAdapters
│   └── CardMemberListItemsAdapter
│   └── LabelColorListItemsAdapter
│   └── MemberListItemsAdapter
│   └── TaskListItemsAdapter
|
├── dailogs                   # for applying some special feature on recycler view
|   ├── LabelColorListDialog
|   ├── MembersListDialog
|
├── fcm                       # for implementing firebase notification feature
|   ├── MyFirebaseMessagingService
|
├── firestore                 # for all firebase related stuffs like storage , auth etc
|   ├── FirestoreClass
|
├── models                    # type of view and its data
|   ├── Board
|   ├── Card
|   ├── SelectedMembers
|   ├── Task
|   ├── User
|
└── utils               # Utility Classes / Kotlin extensions
|   ├── Constants

Future Improvement ☠️

  • Changing the name of the app as per the user requirements.
  • Add time timer feature and show graphs on the same.
  • Add to see all tasks organized in the calendar.
  • Adding Facebook authentication as well.
  • Working on improving the UI a little bit.

If you like my projects and want to support me to build more cool open source projects


Contact

If you need any help, you can connect with me here

Releases

No releases published

Packages

No packages published

Languages