Tracks where a dog is, and pairs them with others based on that location. Could be used as a dating app, or just meeting new dogs in the same area.
- Category: Social Networking
- Mobile: This app would be primarily developed for mobile but would perhaps be just as viable on a computer, such as tinder or other similar apps.
- Story: Analyzes users music choices, and connects them to other users with similar choices. The user can then decide to message this person and befriend them if wanted.
- Market: Any individual could choose to use this app, and to keep it a safe environment.
- Habit: This app could be used as often or unoften as the user wanted depending on how deep their social life is, and what exactly they're looking for.
- Scope: First we would start with pairing people based on music taste, then perhaps this could evolve into a music sharing application as well to broaden its usage. Large potential for use with spotify, apple music, or other music streaming applications.
- A User will be able to login to application.
- User can select between multiple navigation items.
- A new user may create a profile.
- A user may post an image.
- A user may view a collection of posts.
- The SignIn page will have a custom design.
- Redesign of Post creation page.
- The SignIn page will have a custom design.
- The Signup Functionality will be done via button on Login page
- A user will be able to create a blog.
- [] A user may update their profile.
- [] A user may delete their profile.
- [] A user will be able to post their location.
- [] Users with close locations will be matched.
- [] Users will be able to delete their account.
- Login
- Register - User signs up or logs into their account
- Messaging Screen - Chat for users to communicate
- Upon selecting location choice users matched and message screen opens
- Profile Screen
- Allows user to upload a photo and fill in information that is interesting to them and others
- Match Screen
- Gives the user permission to match the similar locations or to decline.
Tab Navigation (Tab to Screen)
- Profile
- Location
- Settings
Flow Navigation (Screen to Screen)
- Log-in -> Account creation if no log in is available
- Profile -> Text field to be modified.
- Location ->
Property | Type | Description |
---|---|---|
objectId | String | unique id for the user post (default field) |
author | Pointer to User | image author |
image | File | image that user posts |
caption | String | image caption by author |
Property | Type | Description |
---|---|---|
objectId | String | unique id for the user post (default field) |
emailVerified | boolean | Check user email status |
username | String | a online username for any given user |
password | String | a password to protect a user's account |
String | a user's email, used for account recovery |
In this final segment of the sprint, the following screens were added to the program: The profile screen and the update profile screen. The profile screen has the ability to show a a users information and allow the to modify via the update profile screen. When the update screen is active, the user can alternatively delete their account whilst on the update screen. There are a few steps to be worked out in the future, however that is the final goal for this project.
-
Home Feed Screen
- (Read/GET) Query all posts where user is author
let query = PFQuery(className:"Post") query.whereKey("author", equalTo: currentUser) query.order(byDescending: "createdAt" print(error.localizedDescription) } else if let posts = posts { print("Successfully retrieved \(posts.count) posts." } }
- (Create/POST) Create a new comment on a post
- (Read/GET) Query all posts where user is author
-
Create Post Screen
- (Create/POST) Create a new post object
-
Profile Screen
- (Read/GET) Query logged in user object
- (Update/PUT) Update user profile image
HTTP Verb | Endpoint | Description |
---|
`GET` | /characters | get all characters
`GET` | /characters/?name=name | return specific character by name
HTTP Verb | Endpoint | Description |
---|
`GET` | /cities | gets all cities
`GET` | /cities/byId/:id | gets specific city by :id
`GET` | /continents | gets all continents
`GET` | /continents/byId/:id | gets specific continent by :id
`GET` | /regions | gets all regions
`GET` | /regions/byId/:id | gets specific region by :id
`GET` | /characters/paths/:name | gets a character's path with a given name