Skip to content

Latest commit

 

History

History
83 lines (58 loc) · 7.84 KB

Sprint#1.md

File metadata and controls

83 lines (58 loc) · 7.84 KB

Sprint 1: Repository Setup, Project Management, CommerceTools Integration, and Development Environment Configuration (150 points) 😊

In the first sprint, the team will focus on setting up the project repository, establishing effective project management using a task board, integrating with CommerceTools to create the project and API client, and configuring the development environment with a bundler, TypeScript, ESLint, Prettier, Husky, and Jest or Vitest for testing. 😎 The mentor will evaluate the team's progress and assign points based on achieving specific goals and milestones.

Working with the Repository 📁

  • Create a develop branch from the main or master branch.
  • For each task, create a new branch from the develop branch, make the changes, and create a pull request to merge the changes back into the develop branch after a code review. Multiple issues can be combined into a single pull request. 🔄
  • At the end of the sprint, create a pull request from the develop branch to the main or master branch with a description in accordance with the requirements of rs-school. 🎓
  • Share the pull request link with the mentor for review and evaluation. 👀

Mentor Evaluation Criteria (150 points - Total): 🎯

1. Repository Setup (29 points) 🧐

  • (10 points) Create a GitHub repository for the project, complete with a README file, .gitignore, and necessary dependencies. RSS-ECOMM-1_01 📚
  • (10 points) Set up a clear and organized folder structure within the repository, ensuring a maintainable and scalable codebase. RSS-ECOMM-1_02 🏗️
  • (4 points) Invite all team members and the mentor as collaborators, ensuring everyone has access to contribute to the repository. RSS-ECOMM-1_03 👥
  • (5 points) Create a pull request template with a clear structure for describing proposed changes and the rationale behind them. RSS-ECOMM-1_21 📝

2. Task Board Setup (Trello, Jira, etc.) (14 points) 📋

  • (6 points) Create a project task board using a project management tool (e.g., Trello or Jira), organizing tasks into lists or columns corresponding to their status (e.g., To Do, In Progress, Done). RSS-ECOMM-1_04 ✔️
  • (5 points) Break down project tasks into smaller, manageable subtasks and assign them to team members, ensuring a clear delegation of responsibilities. RSS-ECOMM-1_05 🧩
  • (3 points) Share the task board with the team members and the mentor, ensuring everyone can track progress and update the status of their tasks. RSS-ECOMM-1_18 🤝

3. CommerceTools Project and API Client Setup (30 points) 💻

  • (15 points) Create the project in CommerceTools, setting up the currencies, languages, and other configurations in the Merchant Center. RSS-ECOMM-1_06 💼
  • (15 points) Create the API client for CommerceTools, enabling access to the platform's APIs and managing permissions and scopes required for the project. RSS-ECOMM-1_07 🔐

4. Development Environment Configuration (43 points) ⚙️

  • (10 points) Set up and configure a bundler (e.g., Webpack, Vite, Parcel, or other) for the project, supporting both development and production build modes. RSS-ECOMM-1_08 📦
  • (5 points) Configure TypeScript to enforce strong typing and improve code quality throughout the project. RSS-ECOMM-1_09 🧮
  • (5 points) Set up ESLint to enforce consistent coding styles and identify potential issues in the codebase. RSS-ECOMM-1_10 📏
  • (5 points) Configure Prettier to automatically format code, ensuring a consistent and readable code style. RSS-ECOMM-1_11
  • (8 points) Initialize Husky to manage Git hooks, automating tasks such as code formatting and linting checks during the commit process. RSS-ECOMM-1_12 🐕
  • (10 points) Install and configure Jest or Vitest as the testing framework for the project, enabling comprehensive testing of code functionality. RSS-ECOMM-1_13 🧪

Note: In this sprint, we will also integrate a front-end framework (e.g., React, Angular, Vue) to facilitate efficient and organized development of the user interface, but it will not be part of the evaluation criteria for the sprint. 🌐

5. Development Scripts (15 points) 🖊️

  • (5 points) Create a script for running ESLint across the codebase, enabling quick and efficient identification of coding style issues and potential errors. RSS-ECOMM-1_14 🐞
  • (5 points) Create a script for running Prettier across the codebase, simplifying code formatting and ensuring uniform code style. RSS-ECOMM-1_15 🎨
  • (5 points) Create a script for running Jest or Vitest tests, streamlining the process of executing tests and generating reports on test outcomes. RSS-ECOMM-1_16 🧾

6. Comprehensive README (19 points) 📝

  • (10 points) Add a thorough README file in the repository, describing the project, its purpose, and the technology stack used. RSS-ECOMM-1_17 📘
  • (5 points) Clearly document all available scripts (e.g., for running ESLint, Prettier, and Jest or Vitest tests) and their usage in the README file. RSS-ECOMM-1_19 📜
  • (4 points) Provide detailed instructions for setting up and running the project locally, ensuring newcomers and contributors can quickly get started. RSS-ECOMM-1_20 🚀

Evaluation by the Mentor 🎓

During this sprint, the mentor will be the sole evaluator of the team's progress and efforts. They will assign points (up to a total of 150) based on the successful completion of the above tasks, collaboration, and overall organization of the project setup.

Useful Links and Resources 🔗

To help the team understand the various tools and technologies used in this project, here's a list of helpful resources and guides:

  1. GitHub - Creating a new repository 💻
  2. Trello - Getting started 🗂️
  3. Jira - Quick start guide 🧭
  4. CommerceTools - Getting started 🛠️
  5. Webpack - Getting started 🗜️
  6. React - Getting started ⚛️
  7. Angular - Getting started 🅰️
  8. Vue - Getting started 🟢
  9. TypeScript - Getting started 📏
  10. ESLint - Getting started
  11. Prettier - Getting started 🎨
  12. Husky - Getting started 🐕
  13. Jest - Getting started 🧪
  14. Vitest - Getting started 🧪

Here is the final points distribution: 🎖️

  • Mentor Evaluation Criteria: 150 points
  • Total points for Sprint 1: 150 points

With all these exciting tasks at hand, remember that the journey of a thousand lines of code begins with a single keystroke. So keep your spirits high, fingers on the keyboard, and let's sprint to success! Remember, we're not just writing code, we're brewing magic. Happy coding, wizards! 🧙‍♂️🎉