Making a Project

1. Gathering an Idea and Brainstorming

Before you start to code, make sure everyone in your group is interested in your project. Try to come up with multiple different ideas and narrow it down to the one that gorup members are most interested in and is the most attainable

2. Planning

Start designing your website based on the requirments and your ideas. Make sure to clearly detail each page of your project and the color scheme of the website.

Tools for designing: Google Slides, Canva, Figma, etc.

3. Tracking your progress

Use GitHub Issues to create and track progress on requirments as well as note any major changes to the project

1. In your repository, click the `Issues` tab 
2. Click `New Issue`
3. Create a title for your issue, making sure to be detailed. Add links from your code or any other resources
4. To collaborate on a project, assign others to the issue

Use Github pages to make weekly blogs about your progress, including technical details about what went well and what you could improve on, making the goals for the next week clear.

Use a Scrum Board to assign weekly tasks to each person and keep track of what is being completed.

Projects

Steps to create your project and collaborate

1. In your project, navigate to projects,, and create a new project.
2. Add a project description and readme (you can update your readmme as you go). 
4. Once you've created your poject, you can add columns to organize issues for your project's repositories
    For example, frontend and backend repositories or other repositories to test

3. Development

Make sure to install the GitHub extension with VS Code so that you can use the two platforms together.

  1. Fork the main project repository. This will give you a copy of the upstream repo, allowing you to iterate on ideas before merging your changes into the main project.

In the repository, click on fork:

  1. Clone the forked repository onto your local system. This is the copy of the code that you will be working with. This also makes it so that you are able to test locally You can also navigate to vs code directly (making sure to be in wsl for Windows) and click "Clone from a Git Repository" to clone

  2. Enter your project's directory, and open the project in VS Code.

  3. If you make any changes, first stage them. Then, commit them. This will assign your changes to a "commit", making them easier to keep track of. Make sure to push before you pull to prevent running into any errors Make sure to commit frequently and add a descriptive commit messages so you can find that commit if necessary

  4. Push your changes to your forked repository.

Branching

Instead of pushing all of your changes to the main branch, it's good practice to work on a separate branch specifically dedicated to the feature you are testing. When you switch branches, your commits will be saved to the branch you have checked out.

To switch branches, use the command: git checkout <name of branch>

For more details on this, use this.

Pull Requests

Once you're ready to merge your changes with the main upstream repository, you can create a Pull Request

Tutorial Source

  1. Navigate to the branch with the changes you want to merge.

  2. Click Pull Request above the list of files.

  3. Make sure your pull request has the main repository of the upstream branch as the base. Double check you are on the right branch.

  4. Add a title and description to your pull request, and create it. Document the changes that you made, and include any helpful screenshots/information.

  5. Your pull requests can be tested or viewed by others to make sure it worksbefore merging to the master branch

4. Deployment

Deployment connects the backend repository to the frontend repository

Instructions for AWS Deployment can be found here.

Set up automatic deployment for your backend to speed up the development process and test faster.