A web application created by Leah Livingston
Click Here to Check out the App Now
Do you dream of achieving personal BHAG goals, but get overwhelmed thinking about how to get there?
You're not alone.
This project was created to help individuals adopt the same precision and focus as Fortune 100 companies. Set challenging objectives with measurable key results. Align these with a long-term strategy to create your personal roadmap to success. Bring the power of OKRs to your life, and empower your future.
Short for objectives and key results, OKRs are a proven goal-setting tool that holds you accountable, tracks your progress, and helps you achieve milestones that might seem "just out of reach".
- Accountability - Write it down, regularly check-in, and grade your results to pivot when necessary
- Laser Focus - Hone in on what truly matters to you (and future you)
- Motivation - Experience the thrill of accomplishment, one milestone at a time
OKRs are the secret weapon consulting firms deploy at large organizations. Do the same with your life.
🎯 Hit your mark. Achieve success!
Click Here to Check out the App Now
This is a web application hosted on Heroku utilizing the Express framework for Node.js employed with HTML, CSS, and JavaScript, MongoDB & oAuth.
| HTTP METHOD | URL | CRUD | Response | Notes |
|---|---|---|---|---|
full index of items |
||||
| GET | / |
Read (index) | View Landing Page | retrieves the landing page view |
| GET | /home |
Read (home) | View Homepage | retrieves the home page view |
| GET | /whatareokrs |
Read (viewWhat) | View "What are OKRs" page | retrieves the page view that describes OKRs |
| GET | /bestpractices |
Read (viewBest) | View "Best Practices" page | retrieves the page view that provides best practices |
| GET | /okrs |
Read (indexOkr) | Array of OKRs { [ okr, okr ] } |
retrieves the index list of all OKRs |
| GET | /okrs/new |
Read (addNewOkrPage) | View "Add an OKR" page | retrieves the page view to add an OKR |
| GET | /okrs/:okrId |
Read (viewDetails) | View "OKR Details" page | retrieves the page view to see a specific OKR's details |
| GET | /okrs/:okrId/update |
Read (showUpdate) | View "OKR Update" page | retrieves the page view to update an OKR |
| GET | /notes |
Read (indexNote) | Array of Notes { [ note, note ] } |
retrieves the index list of all notes |
| GET | /okrs/new |
Read (addNewNotePage) | View "Add a Note" page | retrieves the page view to add a note |
| GET | /okrs/new/:okrId |
Read (addNewNotePage) | View "Add a Note" page for a specific OKR | retrieves the page view to add a note to a specific OKR |
oAuth index |
||||
| GET | /oauth/google |
Read (show) | oAuth Log-in | oAuth log-in to authenticate a user with their Google credentials |
| GET | /oauth2callback |
Read (show) | oAuth Log-in | oAuth callback to login (either success or fail) |
| GET | /logout |
Read (show) | oAuth Log-out | logs a user out of the app |
| POST | /users |
Create | Add a User | adds a user to database |
adding items to index |
||||
| POST | /okrs |
Create (create) | Add an OKR | adds an OKR to the database |
| POST | /okrs/:okrId/notes |
Create | Add a Note | adds a note to database |
| POST | /notes |
Create (create) | Add a Note | adds a note to the database |
| POST | /notes/new/:okrId |
Create (create) | Add a Note to a specific OKR | adds a note to the database to a specific OKR |
removing items from index |
||||
| DELETE | /okrs/:okrId |
Delete (deleteOkr) | Delete an OKR | removes an OKR from the database |
updating items in index |
||||
| PUT | /okrs/:okrId |
Update (updateOkr) | Update an OKR | updates a specific OKR's details |
A big thank you to Weston Bailey, Rondell Charles, April Gonzalez & Tom Kolsrud for your support.
- Ensure all date input fields visually default to either today or end of the quarter (depending on placement)
- Ensure notes display in descending order
- Add Carousel view to click to the next (i.e.[ okr1 ] [ ok2 ] [ okr3 ] )
- Further improvement to CSS for premium user experience (i.e. Update OKR field best for desktop at the moment) See current Brand Kit here
- Add infotext boxes next to input fields to support user
- Include visual optimization for desktop and tablet
- Add ability to swipe left / right on screen for Homepage & OKR view options
- Change raw error messages to generic error codes such as 400, 404, and 500 for better security
- Update Google Cloud from "mongoose movies" class to individual project called "goal-kr"
- Include ability for private view of individual OKRs and Notes (logged-in user can only see their own input)
- Limit OKR text fields to 140 characters
- Refactor code for simplicity and efficiency
- Update dropdowns for "objectiveSpot" to remove previously chosen answers (i.e. You can't choose Objective One 2 times)
- Remove the dropdown from "QuarterYearChoice" after it's chosen the first time to ensure all OKRs are in the same quarter
- Include ability to update / delete Notes
- Include optimization for desktop and tablet
- Include ability to archive a quarter's OKRs into historical view (or listed below current OKRs)
- Include ability to set annual goals and break into quarterly chunks for long-term planning
- Add home page analytics to show progress over time
- Add notification / Email reminders for regular progress check-ins
- Include ability to join a group (i.e. family, friend or professional group) to work toward shared common goals
- Include ability to share progress with family members / friends on home page
🎯 Hit your mark. Achieve success!
Do you dream of achieving personal BHAG goals, but get overwhelmed thinking about how to get there?
You're not alone.
This project was created to help individuals adopt the same precision and focus as Fortune 100 companies. Set challenging objectives with measurable key results. Align these with a long-term strategy to create your personal roadmap to success. Bring the power of OKRs to your life, and empower your future.
Short for objectives and key results, OKRs are a proven goal-setting tool that holds you accountable, tracks your progress, and helps you achieve milestones that might seem "just out of reach".
- Accountability - Write it down, regularly check-in, and grade your results to pivot when necessary
- Laser Focus - Hone in on what truly matters to you (and future you)
- Motivation - Experience the thrill of accomplishment, one milestone at a time
OKRs are the secret weapon consulting firms deploy at large organizations. Do the same with your life.
It's a web application hosted on Heroku utilizing the Express framework for Node.js employed with HTML, CSS, and JavaScript, MongoDB & oAuth.
| HTTP METHOD | URL | CRUD | Response | Notes |
|---|---|---|---|---|
full index of items |
||||
| GET | /okrs |
Read (index) | Array of OKRs { [ okr, okr ] } |
retrieves the index list of all OKRs |
| GET | /notes |
Read (index) | Array of Notes { [ note, note ] } |
retrieves the index list of all notes |
individual items |
||||
| GET | /okrs/:okrId |
Read (show) | OKR Details | shows a specific OKR's details |
adding items to index |
||||
| GET | /oauth/google |
Read (show) | oAuth Log-in | oAuth log-in to add a user with their Google credentials |
| GET | /oauth2callback |
Read (show) | oAuth Failed Log-in | existing user, but failed oAuth log-in |
| POST | /users |
Create | Add a User | add a user to database |
| POST | /okrs |
Create | Add an OKR | add an OKR to database |
| POST | /okrs/:okrId/notes |
Create | Add a Note | add a note to database |
removing items from index |
||||
| DELETE | /okrs/:okrId |
Destroy | Delete an OKR | remove an OKR from database |
updating items in index |
||||
| PUT | /okrs/:okrId |
Update | Update OKR | update a specific OKR's details |
The minimum viable product (MVP) goal is a functional OKR tool with basic CSS styling.
- AAU, I want the ability to track my OKRs for written accountability and motivation.
- AAU, I want the ability to log-in with my Google account credentials.
- AAU, I do not want other people to see my individual OKRs.
- AAU, I want the ability to update my OKRs (i.e. increase percentage to goal or update spelling mistakes).
- AAU, I want the ability to add notes to track personal progress throughout the quarter.
- Include basic CSS to successfully utilize OKR tool
- Include bottom navigation including 'Logo' icon, 'Home' page link, 'OKR' page link, 'Note' page link and 'Log-out' button
- Include 7 individual page views, including: 'Home' screen, 'All OKRs' screen, 'All Notes' screen, 'Add an OKR' screen, 'Add a Note' screen, 'OKR Details' screen, and 'Update OKR' screen
- Include visual optimization for mobile view
- Include a landing page with ability to log-in via oAuth
- Include ability to log-out after logging-in
- Include ability to add / update / delete individual OKRs
- Include ability to add a Note
- Include optimized functionality for mobile view
- Include ability for percentage progress to be calculated automatically based off key result percentages
- Include CSS styling following a 'Brand Kit'
- Include a 'Brand Kit' for future development use
- Carousel view to click to the next (i.e.[ okr1 ] [ ok2 ] [ okr3 ] )
- Include visual optimization for desktop and tablet
- Add ability to swipe left / right on screen for Homepage & OKR view options
- Include ability to update existing OKRs and Notes in same screen (rather than being directed to a new screen)
- Include ability for private view of individual OKRs and Notes (logged-in user can only see their own input)
- Include ability to update / delete Notes
- Include optimization for desktop and tablet
- Include ability to archive a quarter's OKRs into historical view (or listed below current OKRs)
- Include ability to set annual goals and break into quarterly chunks for long-term planning
- Add home page analytics to show progress over time
- Add notification / Email reminders for regular progress check-ins
- Include ability to join a group (i.e. family, friend or professional group) to work toward shared common goals
- Include ability to share progress with family members / friends on home page
































