A task management Android application that enables planning of both personal and collaborative work. The topic is from CS-E4100 Mobile Cloud Computing
The backend implemented by using the Google App Engine Flexible Environment. The application use the Firebase Cloud Firestore to sync information across different devices and Cloud Storage to store media. In addition, it use Cloud Endpoints to deploy the API described in the previous section.
The backend provides an API for project management as follows:
- Create a user, which returns a unique project ID and sets user attributes after successful user creation.
- Update user information.
- Query users by username, which gives an array of required users.
- Create a project, which returns a unique project ID after successful project creation.
- Delete a project, which deletes all the content of a project given the project ID. This action is only available to the project administrator.
- Add members to a project, given the project ID and a list of members (it can contain one or more users).
- Query projects by user ID, which returns a list of projects that has that user in it.
- Create a task, given the project ID and the task attributes. It returns the task ID after creation.
- Update a task, which updates the task status given a task ID.
- Assign a task to a user(s), given the project ID and the task ID.
- Query tasks by project ID
npm install
npm start
After setting up a Google Cloud Platform (GCP) SDK in local environment
Deploy the Endpoints configuration to create an Endpoints service
gcloud endpoints services deploy openapi-appengine.yaml
Deploy the API to App Engine
gcloud app deploy