An android application using Java that enables the student to measure the daily performance level through the streak points by completing different priorities of tasks within a deadline.
- Student can import classes and assignments from Canvas Learning Management System (LMS)
- Student can manually add assignments/task and set the priority level.
- Student can earn the streak points upon completing those tasks.
- Student can monitor their daily performance level through streak history.
Programming Languages:
- Java
- XML
Tools
- Google Firebase Authentication was used to authenticate users
- Google Firestore (NoSQL Database) was used to maintain the user records
- Canvas LMS REST API was used to generate new tasks from the Class’ portal.
All the layout (Activity and Fragment Layout) is located in the sub-dir: /app/src/main/res/layouts/
In Layout, the xml file name and id of element is written in snake-case formatting.
All the Java files is located in the sub-dir: /app/src/main/java/
Inside of it, the template_and_keys hold all the blue-print of objects like Classes, Task, User,Streak, SessionManagement and Priority, and /app/src/main/java/com/example/performance_tracker/ hods the implementation of the templates.
All Java Class name is in Pascal Case, whereas, all the variables and methods are in Camel Case
Clone this repository: git@github.com:hprabesh/android-performance-tracker.git
Set up the firebase account: Follow Google's documentation on how to set up firebase account
In the firebase console, enable the firestore database, and set up the database rule on how users perform CRUD operation.
This is the one that I used
Rule:
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write: if
request.auth!=null;
}
}
}
Please make sure that /app/google-services.json has been updated with the new keys.
(Please follow the google documentation on how to set up google-services.json file)
Login and Registration is a straight forward process. Fill out the registration page and then you will receive a link for the verification in your email to verify the account
Please view the demo above on how to add tasks, set priority, create deadline and all those good stuff.
Importing the classes and assignments from Canvas LMS requires you to generate a new API Key. So, please visit this site Canvas Manual Token Generation on how to generate token
(Please follow the Canvas Terms and Conditions about using OAuth2.0 and Manual API Token).
Finally, copy that token, and click on Import Class from Canvas and paste it in the pop-up box, and then you can import the classes and assignments.
Please view the demo above to learn how to add the API Key