-
Notifications
You must be signed in to change notification settings - Fork 1
Final Report
The Dream Catcher web app allows anyone to create new Dreams, add sub-goals to that dream, and monitor progress towards reaching each of the sub-goals and ultimately the dream itself. It is an easy way to make and set goals with a specific purpose in mind.
The initial landing page provides a new user with the ability to briefly learn about the functionality of the site with the option to create a new account on log in with an already existing account. After an account is created and the user logs in to the website, a back-end landing page gives the user the option to view current dreams or create a new dream. The user can navigate through the dreams and goals that have been created to monitor and track progress towards accomplishing their dream.
DreamCatcher is an app intended to help people more easily reach their dreams. Our app allows them to create a dream, and fill it with the goals that they need to reach to make their dreams come true. With only about two full weeks to work on the implementation, and the loss of one of our group members half way through, we were limited to implementing only the core functionality. The landing page gives a description of the different attributes of our product, and urges new visitors to "Create your first Dream."
From the landing page a user can either register or sign in. We have a fully functional authentication system, which only allows a user who is logged in to access any of the data in our database. Users are also limited to viewing only the goals and dreams that they have created themselves.
The user home page features an overview of their progress in completing each dream, and after creating their first dream, shows a pie chart which visualizes the different categories of dreams they have created. The goal of the pie chart is to motivate them to diversify their goals, to encompass more aspects of their lives.
From the home page, the user can use the navigation bar along the left to go deeper into the levels of dreams and goals. Due to the complexity of calculating and updating goal progress, we have limited the amount of nested goals to just the base level. However, the ability to create nested goals to any depth has been fully implemented, and can be tried out by simply uncommenting the "add a goal" button from the goal page.
In order to create a goal or a dream, just click on the "Add a dream" button from the home page. This will route you to either the dream or goal creation pages. From within each page, you can specify the details of the dream or goal, as well as instantly create subgoals with the same level of detail. Clicking "Submit Dream" will save your changes to the server, and your new dream should appear on the home page.
DATABASE SCHEMA: Describe how data is stored in your database. If you used a relational database, show your entity-relationship diagram that includes all entities, attributes, and relationships, and explain what it contains. You should use the standard entity-relationship format as shown in class. Use a program to draw this diagram, such as lucidchart or dia. If you used a document database, show your JSON document structure and explain what it contains.
FUTURE WORK: Describe a roadmap for future development, with additional features you could add or changes to the interface.