Issues - SE701Group2/daily-focus GitHub Wiki

Creating Issues

If you want to make a change to the codebase - create an issue! Once you have approval on the issue, you can go ahead and start coding.

How to Create

  1. Go to the 'Issues' tab on the main repository, and click 'New Issue'
  1. Click 'Get Started' for the issue template that best represents the change you want to make
  1. Give the issue a title. Replace the text in [square brackets] to complete the issue. Ensure that you fill in the options on the right - assign yourself to the issue, add the correct labels, etc.
  1. Click 'Submit New Issue' and you are done! Yay! Refer to the following Approving Issues section for what to do next.

Approving Issues

How to get approval

After creating an issue:
Send a message to the #issue-approvals channel in the Discord.
Include a link to the issue.
Wait for at least 2 thumbs up reacts 👍 or comments of approval on your issue indicating you should go ahead with the work.

How to approve

Keep an eye on the #issue-approvals channel in the Discord.
Thumbs up react 👍 on the issue if you think the issue is good.
Thumbs down react 👎 on the issue if you disagree with the issue. If you thumbs down, you must leave a comment explaining why.

How to react to an issue:

Ask for questions/clarification if the you think the issue is incomplete.

What to Include

Issue templates have already been created that provide the necessary issue headings. This section is just for reference.

Enhancement (An issue for a new feature)

Title: [A brief description of the issue's goal]
Example: Create a Google search bar component

User Story: [Describe the user need that is being solved by completing this issue]
Example: As a user, I want to be able to perform a google search from the home page.

Acceptance Criteria: [A bullet point list to describe what must be included in this new feature]
Example:

  • A search bar where a search query can be typed
  • A button that, when clicked, will open a new tab with a google search of the typed query
  • The component is created with Material UI and styled according to our design (see screenshot below)

Additional Context: [Any other useful information. e.g. design screenshots, any work previously done]

Dependencies: [If applicable, links to other issues that this issue is dependent on]

Labels

enchancement, frontend OR backend

Bug (An issue for reporting a bug)

Title: [A brief description of the bug]
Example: App.js styling is displayed incorrectly

Describe the bug: [Describe the bug in, if necessary, more detail than the title]

Steps to reproduce: [Bullet point steps for someone to follow to observe the bug]
Example:

  • open the home page of the app
  • observe that the CSS styling is incorrect

Screenshots: [Screenshots/screen recordings of the bug]

Expected behaviour: [What do you expect to see]
Example: The page should have a dark blue background. Instead it is white and the text is janky.

How to fix: [If you know how to fix it, say so]
Example: Change the imported CSS file in App.js to be App.css instead of style.css

Additional information: [If applicable]

Labels

bug, frontend OR backend

Setup (An issue for changes that aid development)

Title: [A brief description of the issue's goal]
Example: Add material UI icons as a dependency

Developer Story: [Describe the developer need that is being solved by completing this issue]
Example: As a developer, I want material UI icons to be a dependency so I can use the icons.

Acceptance Criteria: [A bullet point list to describe what must be done]
Example:

  • Material UI is added to the package.json

Additional Context: [Any other useful information]

Dependencies: [If applicable, links to other issues that this issue is dependent on]

Documentation (An issue describing documentation that needs to be created)

Title: [Name of the documentation that needs to be created]

Team Story: [Description of the benefit the team wants to get from the document]
Example: As a team, I want a code of conduct document so that I understand the behaviour that is expected by contributors to the codebase.

Acceptance Criteria: [Outline of necessary contents of the piece of documentation]

Additional Context: [Any additional information about the documentation]

Labels

documentation, frontend OR backend [if applicable]