Giter Club home page Giter Club logo

alc-mmsystem-mentor's Introduction

ALC Mentors Management System (MMS) Mentor

This is the app for the Mentors Management system admin. MMS is a people management app that enables proper coordination of mentors needed to execute projects, ranging from recruitment to off-boarding. The project will be built using 100% Kotlin and using the Model-View-ViewModel (MVVM) architecture. You can read more about the guidelines of the recommended architecture here

Prerequisites

The app has the following minimum requirements:

  1. minSdk 21
  2. targetSdk and compileSdk 32
  3. Android studio Chipmunk | 2021.2.1 | Patch 1 or higher is recommended

App Features

The main app features and functionalities are as follows:

  1. Authentication/Authorization
  2. Recruitment
  3. Communication and Engagement
  4. Program Scheduling
  5. Activities Tracking and Reporting
  6. Discussion Forum

There are three groups of user categories namely Admin, Mentor Manager(MM), and Mentor. The expected access levels for the group users is listed as follows:

Mentor

  • Apply to be a mentor
  • Receive application status message
  • Login/Logout
  • Set up my profile
  • Access assigned programs
  • Access the list of assigned tasks
  • Apply to be assigned to a program/tasks
  • Engage on the discussion forum
  • Browse assigned MM’s details
  • Compose updates on your assigned tasks
  • Share tasks’ update with your assigned MM
  • Receive notification from task’s assignment
  • Apply for mentor certificate
  • Receive notification to download or not qualify for the certificate
  • Chat 1:1 with any user

Development tools of choice

For this project, stick to the recommended Jetpack Components as much as possible. The idea is to give knowledge of these tools and your certification will be on them. You can read about them here

Libraries:

  • Dagger Hilt
  • Retrofit
  • ViewModel
  • LiveData
  • Coroutines
  • ViewBinding
  • Navigation Components
  • etc.

How to use this repo

To use and contribute to the project, do the following:

  1. Fork it to your GitHub account.
  2. Clone the repo with the command git clone to your local mechine.
  3. Open a feature branch from the 'develop' branch.
  4. Make sure the name is descriptive for your branch but not too long. Lead with what the the branch is doing eg new feature or bug but follow this pattern type/branch-description eg feature/add-login-functionality.
  5. Ensure your branch is up to date with latest changes before pushing.
  6. Reference the issue you worked on in your PRReference the issue you worked on in your PR.
  7. Open a pull request against the develop branch and request a review from your Team Lead.

Design

  • The design can be find here
  • Work on your Team assigned task eg. Team 1, Team 2 etc.
  • NOTE: Stickly adhere to the style guide on the design, buttons, texts etc.

Creating issue for your Teams

  • Your Issues should take this simple pattern for easy identification by your team members: feature or bug name-mmm-team-9
  • Find a sample here

alc-mmsystem-mentor's People

Contributors

peculiaruc avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.