Bootcamp
Search…
📅
Course Schedule
0: Language and Tooling Teaching Guide
1: Frontend Basics Teaching Guide
2: Backend Basics Teaching Guide
3: Backend Applications Teaching Guide
4: Backend Structure Teaching Guide
5: Full-Stack Applications Teaching Guide
6: Frontend Infrastructure Teaching Guide
7: React Teaching Guide
8: Advanced React Teaching Guide
9: Advanced Topics Teaching Guide
🧮
Algorithms Teaching Guide
💼
Interview Prep Teaching Guide
☺
User Experience Teaching Guide
Project 6: Capstone

Introduction

This is the capstone project. The objective of this project is to allow you to pursue a specific interest or field and choose your own tech stack based on its applicability or merits, while under the guidance of RA instructors. At the end of this project you should be able to justify the technology choices you've made and understand some of the tradeoffs between the available options. You can choose to work alone or in teams of two.

Requirements

  1. 1.
    Your app must include unit testing for all non-CRUD logic that happens on the backend. The unit tests should run in continuous integration whenever anyone pushes to the GitHub repo.
  2. 2.
    The app must work without errors.
  3. 3.
    Your app must be complete in the sense that it cannot rely on the theoretical existence of another system, e.g. an API that doesn't exist. You are free to use any 3rd-party APIs available on the internet, e.g. NPM libraries.
  4. 4.
    You are responsible for any seed data your app would need to run without errors. If the app is a web app, the final version must be populated with data that looks at least semi-realistic. For example, a social media app would have more than 1 post, 1 comment and 1 like in the system.

Ideas

Be creative when thinking about what you want to accomplish in this project.
Do you want to build the perfect Express.js app that has no bugs and beautiful code and amazing CSS? Do you want to write a mobile app that solves some problem that you're passionate about? Do you want to create a React Component NPM package that you think people would want to use?
Take some time to consider what kind of learning outcome and what kind of project you want to produce in the time that you have left at Rocket Academy.

Project Timeline

Course Day
Deliverable
Instructor Feedback
CD20.3
Start: Ideation Phase 1. Introduce project, post project ideas in Slack for feedback
Instructor to share feedback on project ideas in Slack.
CD20.4
Start: Ideation Phase 2.
Create planning docs: user stories, wireframes, and DB ERD.
​
CD20.5
Due: Ideation Phase 2.
Finalise project idea and share planning docs in GitHub repo over Slack.
Instructor to review planning docs over Slack and over Zoom if necessary.
CD20.5
Peer Planning Review.
​
CD20.5
Start: Project Start.
Begin Project Implementation.
CD23.1
Due: MVP deadline.
Users should be able to perform the primary user story. Please deploy your app to Heroku. Students to review code in pairs during class.
Instructor to review code on GitHub, share feedback in Slack and Zoom if necessary.
CD24.3
Due: Feature freeze.
No more developing new app functionality. Use remaining time to focus on polish, i.e. fixing UX/UI, refactoring code.
Quick project review in class to discuss improvements post-feature freeze.
CD24.5
Due: Project presentations.
30-minute post-mortem with instructor. Instructor to review code in PR on GitHub.
Post-Course
Due: Video demo.
​

Ideation Phase 1

Brainstorm app ideas. What problem does the app solve, for whom? How does the app solve the problem? What data does the app handle?

Ideation Phase 2

Plan the app implementation with the following planning docs.
  1. 1.
    ​User-flow diagram​
  2. 2.
    Wireframes of minimal UIs that enable our user flows
  3. 3.
    Database ERD to support our user flows and wireframes.
Save these planning docs in a project GitHub repo and share it in Slack. Instructors will review these planning documents with you before you begin implementation.

MVP Deadline

A user should be able to play the game through once without encountering errors. App should be deployed to Heroku. Peer code review during class.

Feature Freeze

The app and all its features should run without errors. Brief demo in class to demonstrate user experience and clarify work to do before presentations. Latest app should be deployed.

Project Presentations

Presentations should cover the topics in this list.

Post-Mortem Meeting

Please answer the project post-mortem questions before the post-mortem meeting with your instructor. These questions will be similar to the presentation questions, but we will dig deeper into your code.

Video Demo

Last modified 2mo ago