Girl Gang is a shared space to celebrate and empower all things femme.
Created in a one week sprint, Girl Gang is a single-page, four model CRUD app built with MVC file organization. User authentication is handled through Bcrypt.
- Express Session
One challenge we faced occured when building the music section. It was really important to us that the user not have to do any of the heavy lifting to render the spotify play button iframe for the song they wanted to post. We also wanted the user to be able to listen to Spotify songs added by other users directly from the site and not have to open another window or the Spotify app. In order to do this we had to take the url input from the user, split the track id from the url, and then send it back to the client side as an angular binding into the iframe html fragment. However, Angular was not trusting the binding and we were receiving an unsafe value error. After some research on Stack Overflow and the AngularJS documentation, we were able to successfully set up a delegate for strict contextual escaping in order to whitelist the Spotify domain.
The user profile of this application is twofold:
First, general users of this application are people who wish to play without saving their scores.
- Users land on the home page and given basic information about the application along with a login/register form
Another user of this application is the registered user who logs in to maintain their own profile and scores.
- Registered users can log in to manage their profile content
- Registered users can add posts and edit/delete their authored posts
- Registered users can like and leave a comment on any content
- Registered users can delete their account
Features In Progress:
- Add the ability for each section to be filtered by popularity, created date, or keyword
- Fix bug that allows users to like an item more than once
- Give users the option to tag their posts by category and add as filter on landing page
- Users have a profile ('home') page that displays only the items they have created,liked, and/or commented on
- Modals are displayed in middle of user's view position
- Comments include the name of the author, date posted, and can be filtered by date posted (i.e., 'most recent')
- Create forgot password functionality that allows users passwords to be emailed to their email address on file