Welcome to the Project Build portion of Summer Capstone 2022! 🥳 🎊 🎉
Know that your Marcy Lab Family is proud of the work you've put into getting to this moment of the program, but above all else, you should be proud of yourself! This journey is not yet over. In fact, the hardest part is yet to come. Because one last time, we are asking you to push yourself harder than you've ever pushed yourself before. If you are doing this right, you should be focussed and productive as a group for 6 hours during school hours every day. In addition, you should be working an additional 2-3 hours after school every day, and you should be working an additional 4-6 hours every weekend.
In many ways, this Capstone project is going to feel like another Demo Day project. But in other ways, it's going to feel different. The goal of Capstone is to make sure each and every one of you is undeniably job ready. As such, we want this project to build out your skills in the following ways:
- You will work together in a group with other Marcy Lab fellows using Agile methodologies.
- You each will take ownership for building out a specific set of full-stack and full-CRUD feature work.
- As a group, you will attend stand-up with your Project Manager (Associate Instructor) every day.
- As a group, you will check-in with your Capstone Advisor (Mike Cronin) twice a week, 1-hour each time. You will use this time to give project updates and receive a live Code Review.
- You will be demoing your progress in front of your peers and the Marcy Capstone Staff every week.
As a group you will be building a full-stack application with the following requirements:
- Your front-end must be a React project that uses Context API as the primary state manager.
- Your styling must come from a pre-built CSS library.
- Your back-end must be an Express API that is organized into routes, controllers, and models.
- Your database must have at least four entities (database tables) and must have at least two one-to-many relationships.
- As a stretch goal, you can add additional database tables or incorporate any additional technologies that was not part of the Marcy Lab core curriculum. However, your priority features must be full CRUD on all on your database entities before you are allowed to work on your stretch goals.
Here are some examples ERDs for web applications with four entities:
- E-commerce application
- College class enrollement application
- Employee management application
- Film/Movie screenings application
While the goals of this project involve working together as a group, it is your goals and our goal that you are all job-ready on an individual level. Therefore, it must be your individual goal to contribution high-qualty code directly pertaining to the technical curriculum taught at The Marcy Lab School. As such, the process in which you build your full-stack web application must meet the following additional requirements.
- Choose one entity that you all will commit to building out together as a group. If you have a
Users
table, we highly recommend that you choose this entity to implement together. - The key deliverable for Project Build Week 1 is that everyone in the group must build out full-CRUD and full-stack features for this entity together. If you choose your
Users
table for example, as a group, you will build out the full-stack functionality to create a new account, view a user's profile, edit a user's profile, and delete a user's account. You will pair program off one screen at a time and take turns driving. It’s important that each group member understands all the code for this week because it will set you up individually for success. - Each group member will be responsible for implementing full-CRUD, full-stack features for one other entity.
- For example, Person1 builds out all features for
Posts
. Person2 builds out all features forComments
, and Person 3 builds out all features forFriends
. During this phase, you should work with each other and lean on each other, but ultimately, you are responsible for coding out both the front-end and back-end features for your entity. You must be the person committing the code for those specific features.
Week | Focus | Weekly Objectives |
---|---|---|
July 11th - July 15th | Project Scoping and Proposal | Submit a high-quality, detailed Project Proposal |
July 18th - July 22nd | Wireframing and ERD Domain Modeling | Submit a collection of high-quality, detailed technical planning documents |
July 25th - July 29th | Project Build Week 1 | As a group, complete full-stack, full-CRUD features for one entity |
August 1st - August 5th | Project Build Week 2 | Complete full-stack, full-CRUD features for all entities |
August 8th - August 12th | Project Build Week 3 | Integrate all full-stack features together for a seamless user experience |
August 15th - August 19th | Project Build Week 4 | Polish your application and implement stretch features |
August 22nd - August 26th | Case Study Writing | As a group, document your technical journey in a Technical Case Study |
August 29th - September 2nd | Presentation Prep | As a group, prepare a presentation on your Capstone Project |
Assignment | Due Date |
---|---|
Project Proposal | Fri, July 15th |
Wireframes and ERD | Fri, July 22nd |
Complete feature work for one entity | Fri, July 29th |
First Technical Blog | Fri, July 29th |
Complete feature work for all entities | Fri, August 5th |
Publish First Technical Blog | Fri, August 5th |
Complete MVP | Fri, August 12th |
Second Technical Blog | Fri, August 12th |
Polish and Deploy App | Fri, August 19th |
Publish Second Technical Blog | Fri, August 19th |
Case Study Writing | Fri, August 26th |
Project Presentation | Wed, August 31st |