Exercise Friday

Independent Projects Overview

Project prompts will be available on Epicenter at 8:00 am Friday for full-time students and 8:00 am on Thursday for part-time students. Before you begin your project, make sure to take a moment to review the Independent Projects and Code Reviews lesson.

Routing with Ruby Project Objectives

Your code will be reviewed for the following objectives:

  • Full CRUD functionality for two classes.
  • Routes are named using RESTful conventions.
  • Sinatra application uses views, instance variables and forms.
  • Sinatra routes process GET and POST requests/responses.
  • Project includes thorough and passing integration specs.
  • Project is in a polished, portfolio-quality state.
  • The prompt’s required functionality and baseline project requirements are in place by the deadline.

What is a polished, portfolio-quality state?

When a project is both polished and in a portfolio-quality state, this means:

  • You've reviewed your project and your README prior to submitting it to make sure there are no errors or missing information and you are consistent in your indentation, spacing, and code structure.
  • You are following the best practices and coding conventions we teach.

What are the baseline project requirements?

All independent coding projects at Epicodus have these baseline requirements:

  • A complete and informative README
  • The project's commit history demonstrates that the project’s required work schedule and hours have been met:
    • 8 hours completed on Friday is required for full-time students
    • 4 hours completed over the weekend is required for part-time students
  • Completion of the project based on the prompt and objectives. The prompt contains details on the project's theme and features that are not always detailed in the objective. Carefully read through the prompt towards the end of your work session to make sure that you are not missing anything.

Best Practices & Coding Convention

For reference, here is a list of best practices and coding convention that your project should follow:

  • Objects are created from a custom class with custom methods.
  • Specs have complete coverage for the behaviors that need to be tested.
  • All specs are passing.
  • Logic is easy to understand.
  • Code has proper indentation and spacing.
  • Variable names are descriptive.
  • Good Git documentation (regular commits with clear, consistently formatted messages and complete README).
    • Message syntax should complete the sentence "This commit will..."; for example "update image files on the home page".
    • README should include application name, author name, description, setup instructions, licensing.


Submit your code for review to the Routing with Ruby code review on Epicenter.

Visit Independent Projects and Code Reviews for details on how to submit, how feedback works and course completion requirements.

Lesson 37 of 37
Last updated July 28, 2022