Skip to content

jpardike/project-2-1020

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Project Wayfarer

Brief

We have been commissioned to build a travel community, code-named Project Wayfarer for now, for users to share tips (AKA posts) about their favorite locations around the world.

Client Contract

The client has provided basic wireframes and user stories. In some cases, these requirements may be vague or incomplete.

Process

The client contract consists of three core sprints and four bonus sprints. Each sprint contains a set of user stories. You may not complete all of the sprints within the time period, and that's ok. The goal is to gain experience working on a development project in a group while navigating a client's feature list.

IMPORTANT: You may not begin a new sprint or start on a bonus without client approval.

You will work in groups of 3-4, and we expect you to pair program for the majority of the time you're writing code.

During morning scrums and in smaller check-ins throughout the day, clearly communicate your current status and next steps to your teammates. Use a kanban-style scrum board such as Trello to organize tasks (example Trello board).

Commit changes at least once for each user story. Put effort into your design. Use a CSS framework (e.g. Bootstrap or Materialize), partials, and some custom CSS or Sass/Less.

Work as git collaborators, build on developer branches, and submit pull requests for approval and merging.

After you have completed your project, deploy to heroku to get practice getting the app online. The earlier you resolve deployment, the easier it will be to fix bugs.

Refactor your code after each sprint, considering:

  • Indentation
  • Readability/clarity
  • Naming
  • Organization
  • Commenting
  • DRYness

Questions to Ask Yourselves

  1. Are you all clear about what the client wants? Identify vague areas. Seek clarification in any cases where you feel less confident about your interpretation of the client's vision.

  2. What will the UX/UI flow be? Hammer out any areas of ambiguity in the wireframes

  3. Which models do you need to implement? Create an ERD for the client to reference.

  4. What are the major milestones that you need to complete? How can these be turned into tasks that group members can complete in pairs? Where do these milestones overlap and how will those related tasks be managed?

  5. What milestones are you and your group members interested in working on? How can you effectively delegate the work into pairs so that each group member is interested, challenged, and productive?

Presentation

Each group will present their project on 10/14/2020.

Each member of your group should speak for equal parts during your presentation and mention which parts of the project they worked on.

Your presentation should include:

  • Tour (demo) of your app, ideally deployed on heroku (but not required).
  • How did your group approach the requirements? (mention anything unique or creative your group chose to do)
  • What was easier than you thought? What was more challenging?
  • What is a lesson you will carry forward to working on your next project?
  • Shout outs for fellow students!

Evaluation

You will be evaluated on the following measures:

  1. Project workflow
  • frequent commits with good commit messages
  • cooperative group work including majority of pair programing
  • effective use of branches
  • planning to avoid excessive merge conflicts
  • deliberate approach - routeside-in, logical progress from skateboard to car
  • the code is your original code
  1. Readability
  • to what degree does your app fulfill the user stories?
  • code is clean
  • follows good naming conventions
  • code is free of obvious errors and bugs
  • code demonstrates good problem solving
  • code is DRY
  1. Technical requirements

Every project must have all of the following requirements met to be considered complete:

  • Django: Use Django as the core framework for Python.
  • PostgreSQL: Use PostgreSQL for your database in development and production.
  • Data Models: Include at least two data models with associations.
  • Data Validation: Your application should validate incoming data before entering it into the database.
  • Error Handling: Forms in your application should also validate data, handle incorrect inputs, and provide user feedback on the client side.
  • Views: Use partials to follow DRY (Don’t Repeat Yourself) development in your views.
  • Home & About Pages: Create a landing page (homepage) that clearly explains your app's value proposition and guides the user through the "get started" funnel. Create an about page that includes photos and brief bios of your team members.
  • User Experience: Ensure a pleasing and logical user experience. Use a framework like Bootstrap to enhance and ease your CSS styling. For this project, please choose a framework other than Materialize.
  • Responsive Design: Make sure your app looks great on a phone or tablet.
  • Heroku: Deploy your app to Heroku. Ensure no app secrets are exposed.
  • Github: Projects must have a minimum of 60 specific commits.

Teams

Happy Coding :)

  • Jed Godsey, Sri Edam, Joshua Pardike, Bryan Romero
  • Brittany Servent, Kihwan Lee, Justin Blalock, Andy Doan
  • Simone Poe, Christopher Zalapa, Elias Baez, Jia Cooper
  • Katie Hermalik, Brendan Howe, Josh Sanford, Morgan Jaouni
  • John Temple, Daniel Gutierrez, Cirrus Mokhtari, Onias Israel
  • Juliana Zlatevski, Laura Pease, Benjamin Closson, William VanHook
  • Minhazur Rahaman, Emily Forester, Kyle Howard, Tyler Smith

About

repo for the wayfarer project

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • HTML 45.6%
  • Python 45.2%
  • CSS 9.0%
  • JavaScript 0.2%