Write My Paper Button

WhatsApp Widget

BS-CSP Programming Assignment: Simplified Google Photos App with Firebase, Firestore & Google App Engine

1 Assignment Information

Course: BSCH
Stage / Year: 4
Module: Cloud Services & Platforms
Submission: Upload to Moodle
Weighting: 50% of the Module

2 Introduction

In this assignment, you will build a simplified version of a photo gallery app like Google Photos, hosted on Google App Engine. Each user should be able to:

Register/log in using Firebase Authentication
Upload, view, download, and delete their photos
Organize photos using albums
Share albums in read-only mode with other users

The assignment is split into progressive groups. Each group must be fully implemented and working before subsequent groups will be evaluated.

Stuck in This Assignment? Deadlines Are Near?

Hire Assignment Helper Now!

3 Technologies Required

Google App Engine (Python)
Firebase Authentication (JavaScript)
Firebase Admin SDK
Firestore (NoSQL)
Google Cloud Storage

4 Submission Requirements

You must submit:

A zip archive of your complete GAE project with .git directory (≥7 commits)
A PDF of your documentation (approx. 1500 words)

Important: No GitHub or external libraries. Only standard SDKs are allowed. Use of external repos or AI-generated code will result in 0.

5 Coding Tasks (80%)

Group 1 Tasks (20%) — Authentication & Setup

Firebase login/logout system using firebase-login.js and local-constants.py
On first login, create a Firestore user document and a default album (“My Photos”)
Allow users to create albums (Firestore document)
Allow users to delete albums (only if empty)

Group 2 Tasks (40%) — File Handling

Users can switch between albums (directories)
Users can upload images to the current album (stored in GCS)
Prevent duplicate image uploads unless the user chooses to overwrite
Provide image preview in the UI (thumbnail rendering from GCS)

Group 3 Tasks (60%) — Advanced Features

Users can delete individual photos
Users can download a photo to local device
Prevent deletion of albums with images still inside
Detect duplicate photos using image hash (SHA256) and visually highlight duplicates

Group 4 Tasks (80%) — Sharing and UX

Detect duplicate photos across all albums (display paths + names)
Allow read-only sharing of an album with another user via their email
Intuitive UI design: mobile-responsive, clearly laid out albums/photos, user-friendly

6 Major Bugs (10% Penalty Each if Present)

Allowing duplicate album names in the same user account
Deleting or displaying incorrect photos
Overwriting a photo without prompt
Shared albums show incorrect or unauthorized content

7 Documentation (20%)

Approximately 1500 words, in a well-structured PDF, covering:

High-level explanation of each method/function
How Firestore structure is designed
How Firebase Auth integrates with backend
Error handling & bug prevention strategy
UI design rationale

8 Learning Objectives

Students will:

Deploy applications using Google App Engine
Use Firebase Authentication securely
Store/retrieve data from Firestore
Manage user media in Cloud Storage
Structure and maintain scalable cloud-based code
Develop UIs integrating cloud backend services

TOTAL MARKS 100

Get 30% Discount on This Assignment Answer Today!

Take Expert Help Now!

The post BS-CSP Programming Assignment: Simplified Google Photos App with Firebase, Firestore & Google App Engine appeared first on Malaysia Assignment Help.