Get your project and yourself set up for success on your team
Activities
Full-Stack
- At your first week Sprint 1 full-stack meeting: you should cover the following project details. Have one group member take notes as you go, write the information in a Slack message and pin it to your group’s channel for later reference.
- What will you be building?
- What problem does your app solve?
- What elements will you need? Outline your database’s models and relationships.
- What features will you include? Outline what users can do with your app.
- Check out this list of 60 ideas if your group is stuck!
- What are the expectations of each group member?
- Consider group norms like responding to messages in a timely manner, and building on one another’s ideas.
- When will you plan to hold meetings?
- Consider full-stack meeting time +/- front-end only and back-end only meetings
- Receive your GitHub repo link from your mentor. This is where all the code for your Node API will be stored.
- Create a “Github Projects board”
- Begin to define work using tickets, or “Issues” on your Kanban board. Break tasks into small, manageable chunks.
- Be sure to include a ticket for adding/editing the ReadMe
- You will also need to consider how your React front-end will integrate with your Node back-end. Review JWT authentication and incorporate some tickets relating to setting this up.
- Review your GitHub Project workflow.
- What will you be building?
- At you second week Sprint 1 full-stack meeting:
- Make a final decision on your app (if you haven’t already)
- Decide what part of the app each team member would like to focus on:
- Front end: more design and styling OR more functional component building
- Back end: database OR API (you will still have to do both, but you can do more of one or the other)
- Testing
- Map out features from the front end to the API to the database model to understand the flow of data across front and back end
- Talk about how JWT and authorization works (is it realistic to add to your app?)
- Update/create the readme.md in the repo of the categories to talk about:
- Name
- Description
- Demo (screenshots)
- Technology Used
- API Routes
- Database Schema
- Setup Instructions
- …
- At your weekly meetings, you’ll review the backlog (your “To-Do” column) and decide what needs to be worked on next.
- Team members will assign themselves to tickets and that will be their project work for the week.
- When a ticket is complete, move it to “Done,” resolve any merge conflicts, and make a pull request (more on that next week).
- Outside of your meeting, each team member will need to clone the project repo which will pull down the repo to their local machine and set up their local development environment. Follow the Setting up for this Git Workflow section in the CTD Git Workflow for Closed Source Applications guide
- If needed, review the guide on Configuring Your Machine for Node Development
Back-End
- Data Modeling and Schema, led by the backend team.
Front-End
- UI Design and wireframing – led by the front end team.
__________________________________________________________
Additional Resources
- Full-stack related resource so students understand concepts of how Node + React work together, what each “end” is doing (link coming soon)
- Article: Documenting Your Projects on GitHub (GitHub Guides)
- Video: Copying a GitHub Repository to Your Local Computer (The Data School)
- Use these two Data School videos to fork a Node project and clone it to your desired environment (your local computer or a cloud instance) so that you can work on the code.
- Article: How to Start a Group Project (Codecademy)
- Video: Working with Code Written by Someone Else (Codecademy)
- Video: DevOps CI/CD Explained in 100 Seconds (Fireship)
- Brief explanation of why you should work in tiny bites and integrate your code into the project very often (continuous integration).
- List: Git Commands Cheat Sheet (Atlassian)
- Video: What is a Pull Request? (Codecademy)
- Article: Creating a Pull Request (GitHub Guides)
- Optional article: Git Handbook (GitHub Guides)
- Refresher on Git and GitHub concepts
Dev Methods
- Optional video: Agile Principles and Values in 5 Minutes (Agile in 5 Minutes)
- Optional video: What is Scrum? (Scrum Alliance)
- Optional video: Intro to Kanban in Under 5 Minutes (Axosoft)
- Optional video: The Lean Software Development Process (Alliance Software)