Demo link: https://www.youtube.com/watch?v=9PA3WveNp-g
-
Members: Zichuan Zhang, Zhimin Liang
-
Describe your data model and the 3 collections you will use.
--Users collection
uid
email
userName
phoneNum:
location:
userAvatar
post:[],
followers:[],
following:[]
--Posts collection UserID Description Image_URL Timestamp Location Weather(external API) CommentsID
--Comments collection postId: The ID of the post the comment is related to. userId : The UID of the user who made the comment. text : The comment text. Timestamp: The time when the comment was made.
-
Describe which of the CRUD operations are implemented on which collections.
We use CRUD in the User collection, we write user information in user collection when signup account, and in the editProfile, the app will fetch(read) the exist information from database, and it also allow user to updata the personal information, In the profile page, we enble user to delete their account which will delete the docID in user collection and then signout the app
-
Your readme should reflect the current state of the application, with screenshots as appropriate (at least 1)
-
A detailed description of what each member has contributed so far.
ZiChuan Zhang: Implemented the home screen. Search Functionality, Signin/Signup.
Zhimin Liang: Setup the base environment of the app Create navigator tab, add signin and signup screen Write post screen content which allows user to add description and photo from libary or camera, and write the post to collection Write profile screen which fetch post history for login user, and allow user navigate to detail page for each post item Write editProfile screen,which fetch(read) the exist information from database, and allow user to updata the personal information Add delete button in the profile page to allow user to delete their account which will delete the docID in user collection and then signout the app Add fetchInfoById and updateFromDB function in firebaseHelper to allow user to read data by id and updata data from database
Iteration 2:
We have add the following functionalities :
-- Authentication:
From start page, we will navigate to to signUp screen, and user can signup or signIn if they have account, after login, it will navigate to Home
-- Camera, Location, External API:
Camera: In post screen, user can choose camera ot photos from libary, and in edit page, user can change their avatar
Location: In post screen, user can press location to locate their current position, and it will show the address
External API: We use weather as out external API, after selcet location, user ia able to get their local weather base on the location
-- We have not add notification, so there is no reaction when you click notification
when you click post history, you can see the list of all your posts, and click each postId you can navigate to the post Detail
A detailed description of what each member has contributed:
ZiChuan Zhang: Fixed errors from iteration 1. Completely remade the home screen. Fixed the TimeLine component entirely.
Zhimin Liang: fix error in interation1, add location and external api , improve layout and style of post, profile, postlist, and postDetail screen
Iteration 3:
- We have add the following functionalities :
-- Notification: user can set notification to remind them to post every day
-- Commment: User can write comments to thier friends
-- VisitMap: user can see all their post location
- we have make some improvement for our app:
-- Start Screen : add own design logo and improve styling
-- Post Screen : improve delete icon and styling
-- Post History Screen : show post base on time line
-- Post Detail Screen: improve delete styling and improve layout for different amount of images
- A detailed description of what each member has contributed:
ZiChuan Zhang: Redesigned the Home Screen, Login Screen, and Sign-up Screen. Created the Comment Collection and implemented the functionality of positing to this collection. Also, implemented the comment Modal so that comments can be correctly displayed.
Zhimin Liang: fix error, add Visitmap , notification and postlist , improve layout and style of post, editpage and postDetail screen