• Skip to primary navigation
  • Skip to main content
  • Skip to footer
Code The Dream School
Code the Dream Labs Logo

Code The Dream School

Main hub for class materials for Code the Dream’s classes

  • Code the Dream Home

Search Code The Dream School

Front End (React.js) Final Project

(prior to Dec 2021)

Developing Your Own React.js Application

For the final project, you will each design and develop your own React application.  You will have two weeks to complete the project.  As that is a short time for a fully functional application, the applications will have to be relatively simple, with only a few features implemented.

For students who would like to become interns with Code the Dream, the final project is very important, because it is the best indication of how well you would succeed as an intern.

Goal of the Application

The goal of the project is to showcase what you have learned during class. You will have the opportunity to demonstrate your knowledge and creativity. You are required to create a React application from scratch. A proposal for what your application will do is required to be submitted before you start working on the project.

Code the Dream primarily develops applications that help organizations deliver services to the community, or contribute toward social good in other ways. You can see descriptions of some of the applications now in production here: https://www.codethedream.org/portfolio/.  

For your final project, ideas for applications that could contribute in this way are strongly encouraged.  The COVID-19 virus creates some new needs that may inspire you. 

However, don’t let this limit you. Other types of applications will also be considered.

Please don’t think you have to match any of the applications in the Code The Dream portfolio. Those applications are many person months of hard work. You just have to demonstrate some key skills.

Examples

Check out this video of presentations of final projects by previous Ruby on Rails students to give you some ideas.

Before You Start

Please discuss your proposal with us.  You will fill out a form to describe your proposal, saying what you would like to do.  We will evaluate the proposal to make sure:

  • That it is doable in the allotted time.  If the project seems too complicated, we may suggest that it be limited to just a few features.
  • That it demonstrates the skills you have learned in the class series so far.  It should not be so simple that it doesn’t show key skills.  
  • That it gives you an opportunity to demonstrate creativity, which is important for a developer.

You may find that you want to use some concepts, technologies, or gems we didn’t cover, which is worth some extra points so long as it doesn’t get too hard.

Requirements for the Project (Rubric)

  1. A React Application using create-react-app
  2. Using Firebase as your database/api layer
  3. Application must have at least two data models that have CRUD functionality (add, edit, delete, view, one of them should be users with additional meta data added to the user object)
  4. Using a variety of data types: integer, string, boolean, object
  5. Wireframes that express functionality of application and how a user flows through the app.
  6. Routing and at least one route using :params
  7. Authentication 
  8. Form controls should include several types of input fields.  You might use text fields, drop-down lists, checkboxes, radio buttons, and/or others, and there should be some links to connect the application together. 
  9. Error handling (for authentication, and any other places where applicable)
  10. API keys should not be exposed in the code or on github (use a .env file)
  11. Application code stored in GITHUB
  12. Links or buttons to help the users navigate to different views/containers within the application.
  13. Style your application by adding CSS, the use of bootstrap is highly recommended
  14. The application should be attractive with inclusion of images, color, fonts and other css styling.
  15. Application should be responsive and/or mobile friendly
  16. If you are using an external API, check in with us to make sure we approve

Submission

You should submit a link to your Github repository which contains your application. It is highly encouraged that you use git branches to implement each feature. We will share a link to a form before the due-date which you can use to submit your link.

Presentation

Each student will present their application in a Zoom meeting.  You will only have 5 minutes for each presentation, but we will have reviewed your application with you ahead of time.

Footer

Copyright © 2025 Code the Dream School | All Rights Reserved | Privacy Policy