Marcy Lab School Docs
  • Welcome
  • Student Guidelines & Policies
    • Student Handbook
    • AI Policy
    • Academic Calendar
  • Environment Setup
    • Local Environment Setup - Mac
    • Local Environment Setup - Windows
    • GitHub Setup
    • Postgres Setup
  • How-Tos
    • How To Code at Marcy: Code Style Guide
    • How to Do Short Response and Coding Assignments
    • How to Debug
    • How to PEDAC
    • How to Create A GitHub Organization and Scrumboard
    • How to Create Projects with Vite
    • How to Deploy on GitHub Pages
    • How to Deploy on Render
    • How to Test your API with Postman
  • Mod 0 - Command Line Interfaces, Git, and GitHub
    • Overview
    • 1. Command Line Interfaces
    • 2. Git & GitHub
    • 3. Git Pulling & Merging
    • 4. Git Branching & PRs
  • Mod 1 - JavaScript Fundamentals
    • Overview
    • 1. Intro to Programming
    • 2. Errors
    • 3. Node & Node Modules
    • 4. Variables, Functions & String Methods
    • 5. Control Flow, typeof, and Math
    • 6. Loops
    • 7. Arrays
    • 8. Objects
    • 9. Higher Order Functions: Callbacks
    • 10. Higher Order Functions: Array Methods
    • 11. Regex
  • Mod 2 - HTML, CSS & the DOM
    • Overview
    • 1. HTML
    • 2. CSS
    • 3. Accessibility (a11y)
    • 4. The Document Object Model (DOM) API
    • 5. Events
    • 6. Forms
    • 7. The Box Model and Positioning
    • 8. Flexbox
    • 9. Grid & Media Queries
    • 10. ESModules
    • 11. Vite
    • 12. LocalStorage
  • Mod 3 - Async & APIs
    • Overview
    • 1. Promises
    • 2. Fetch
    • 3. Building a Fetching App
    • 4. Async & Await
    • 5. A Generic Fetch Handler
  • Mod 4 - Project Week!
    • Important How Tos and Guides
      • How to Create a GitHub Organization and Scrum Board
      • How To Start a Project with Vite
      • How To Deploy a Project with GitHub Pages
    • Project Week Overview
    • Agile Methodologies
    • Deliverables & Milestones
    • Technical Requirements Checklist
    • Free API List
    • Collaborative GitHub
  • Mod 5 - Object-Oriented Programming
    • Overview
    • 1. Intro to OOP, Encapsulation, Factory Functions, and Closure
    • 2. Classes
    • 3. Private & Static
    • 4. UML Diagrams & Has Many/Belongs To Relationships
    • 5. Challenge: Implementing Has Many/Belongs To
    • 6. Inheritance
    • 7. Polymorphism
    • 8. Review and Practice
    • MDN: Object Prototypes
  • Mod 6 - Data Structures & Algorithms
    • Overview
    • Important How Tos and Guides
      • How to Debug
      • How to PEDAC
    • 1. Nodes & Linked Lists
    • 2. Singly & Doubly Linked Lists
    • 3. Stacks & Queues
    • 4. Recursion
    • 5. Trees
  • Mod 7 - React
    • Overview
    • Important How Tos and Guides
      • How to Create Projects with Vite
      • How to Deploy on GitHub Pages
    • 1. Intro to React
    • 2. Events, State, and Forms
    • 3. Fetching with useEffect
    • 4. React Router
    • 5. Building a Flashcards App
    • 6. React Context
    • 7. Global Context Pattern
  • Mod 8 - Backend
    • Overview
    • Important How Tos and Guides
      • How to Deploy on Render
      • How to Test your API with Postman
      • Postgres Setup
    • 1. Intro to Express
    • 2. Building a Static Web Server with Middleware
    • 3. Securing API Keys and Environment Variables
    • 4. RESTful CRUD API
    • 5. Model-View-Controller Architecture
    • 6. SQL and Databases
    • 7. JOIN (Association) SQL Queries
    • 8. Knex
    • 9. Your First Fullstack App!
    • 10. Migrations & Seeds
    • 11. Schema Design & Normalization
    • 12. Hashing Passwords with Bcrypt
    • 13. React Express Auth Template Overview
  • Mod 9 - Civic Tech Hackathon
    • Overview
    • Rubric
  • Mod 10 - Capstone
    • Overview
Powered by GitBook
On this page
  • Deliverables
  • Milestones
  1. Mod 4 - Project Week!

Deliverables & Milestones

PreviousAgile MethodologiesNextTechnical Requirements Checklist

Last updated 3 months ago

Deliverables

Unlike your solo projects where the project itself was the main deliverable, for a portfolio-level project, you will be required to do a bit more. The deliverables below will help keep you and your partner organized and will help your Engineering Manager (your instructor) informed on your progress. In the end, all of these deliverables will serve as valuable artifacts that document your work.

  • A Project Spec Sheet — A project spec sheet is a document that provides key details about the project including the API being used, the intended features/user stories, and wireframes.

  • A Github Organization with your Repository — A GitHub Organization is a shared account on GitHub where you and your teammates can collaborate on repositories.

    • Note: your organization only needs one repository. This example has a few to show progress after each day, but you shouldn't do that.

  • A Scrum Board — A scrum board is a tool for creating and assigning tasks ("tickets") within a project. Typically, a scrum board will organize tasks into three columns: Backlog (tasks waiting to be assigned), In Progress (assigned tasks that are being worked on), and Done (completed tasks).

    • !

  • A Deployed Project Link

  • A Presentation + Walkthrough Demo Video

    • &

Milestones

As you work on this project, don't set your sights on the fully completed project from the jump. Give yourself smaller goals that you can reach each day and focus on one goal at a time. As long as your goals build on each other, you will eventually reach your final destination.

For this Art Viewer project, you can see the progress made on each day.

Note: no need to create a new repo for each day - this is just done this way for demonstration purposes.

Eventually, you will need to develop the skill of planning out your objectives. However, for this project we've laid out some daily milestones that you can strive for with bare minimum requirements, ideal progress, and stretch goals:

    • Bare Minimum: Two examples of API fetch calls. One for many things. One for one thing.

    • Ideal: Descriptions of user stories. Wireframe shows thoughtful idea about what data is displayed.

    • Stretch: Link to their created GitHub organization and repo in their group slack channel

  • Note: If you have not submitted your proposal and are undecided about your API by this deadline, you will be assigned an API by your Engineering Manager.

  • 1:30pm (soft deadline): Create and fill out your scrum board with tickets.

  • 3pm (soft deadline): Start working on deploying skeleton code to GitHub pages if you have not already done so

    • Bare minimum: The repo has an index.html file with a title of the project name

    • Ideal: The above, plus 2 console logs showing the two successful fetches. One fetch for the full set of data and a second fetch for details on just one resource.

    • The stretch: The 2 fetch’s data is displayed roughly on the page somehow (e.g. you just dump the data into the body with document.body.innerHTML += "...")

  • 5pm: Deploy the skeleton code and share a link to your website in Slack. Repo has a filled-out scrum board.

  • 9am-5pm: Work on your Minimum Viable Product (MVP). MVP is:

    • Bare minimum: Full set of data is fetched and displayed

    • Ideal: You can click on one item and fetch details about that one item (don't need to render it yet)

    • Stretch: You can click on and render data about a single item

  • Meet with your Engineering Manager to provide a detailed update on progress.

  • 5pm: Post a screenshot of the deployed MVP in their group chats.

  • 5pm: Post a screenshot(s) of their app with some “marked improvement” so either: a rough new stretch feature from their proposal, or a more fully styled site (layout, colors, fonts, animations)

    • Bare minimum: Flexbox / Grid is used to organize fetched data set

    • Ideal: Consistent fonts and colors used throughout the page with a mobile view and a desktop view.

    • Stretch: A new feature is added (localStorage, a form to filter fetches, additional fetches, etc…)

  • 4pm: Deploy whatever the “final” version of the app is with screenshots. The app should be frozen in its deployments. That should be:

    • 2 fully completed MVP Features

    • 1 or more fully completed stretch features

    • Fully styled and responsive site

  • 5pm: Complete Presentation with a walkthrough video that is no longer than 3 minutes.

    • The walkthrough is a simple screen share of one user walking through the site and narrating what they’re doing. The minimum 2 features should be demonstrated on a deployed site.

(just the app is deployed. It doesn't do anything yet)

(we can fetch and then render a list of pictures)

(we can click on a picture to fetch more details about that one picture)

5pm: The is complete and posted in the group Slack channel.

Project Spec Sheet Template
Example
Example
Example
Read here to learn about creating a scrumboard
Example: Art Viewer
Example: PokiDash
Example: TeamFoodies
Presentation Template
Example 1
Example 2
https://art-viewer-mike-example.github.io/art-viewer-day-1
https://art-viewer-mike-example.github.io/art-viewer-day-2
https://art-viewer-mike-example.github.io/art-viewer-day-3
proposal document