Skip to content

Sprint 1: Repository Setup, Project Management, CommerceTools Integration, and Development Environment Configuration - #21

Open
Pavelvl21 wants to merge 41 commits into
mainfrom
develop
Open

Sprint 1: Repository Setup, Project Management, CommerceTools Integration, and Development Environment Configuration#21
Pavelvl21 wants to merge 41 commits into
mainfrom
develop

Conversation

@Pavelvl21

@Pavelvl21 Pavelvl21 commented Aug 7, 2023

Copy link
Copy Markdown
Collaborator

Description

Sprint 1: Repository Setup, Project Management, CommerceTools Integration, and Development Environment Configuration

Motivation

Set up a project repository, set up efficient project management with a task board, integrate with CommerceTools for project creation and an API client, and set up a development environment with builder, TypeScript, ESLint, Prettier. , Husky and Jest for testing.

Type of change

  1. Repository Setup:
  • Create a GitHub repository for the project, complete with a README file, .gitignore, and necessary dependencies
  • Set up a clear and organized folder structure within the repository, ensuring a maintainable and scalable codebase
  • Invite all team members and the mentor as collaborators, ensuring everyone has access to contribute to the repository
  • Create a pull request template with a clear structure for describing proposed changes and the rationale behind them
  1. Task Board Setup:
  • 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
  • Break down project tasks into smaller, manageable subtasks and assign them to team members, ensuring a clear delegation of responsibilities
  • Share the task board with the team members and the mentor, ensuring everyone can track progress and update the status of their tasks
  1. CommerceTools Project and API Client Setup (30 points):
  • Create the project in CommerceTools, setting up the currencies, languages, and other configurations in the Merchant Center
  • Create the API client for CommerceTools, enabling access to the platform's APIs and managing permissions and scopes required for the project
  1. Development Environment Configuration:
  • Set up and configure a bundler (e.g., Webpack, Vite, Parcel, or other) for the project, supporting both development and production build modes
  • Configure TypeScript to enforce strong typing and improve code quality throughout the project
  • Set up ESLint to enforce consistent coding styles and identify potential issues in the codebase
  • Configure Prettier to automatically format code, ensuring a consistent and readable code style
  • Initialize Husky to manage Git hooks, automating tasks such as code formatting and linting checks during the commit process
  • nstall and configure Jest as the testing framework for the project, enabling comprehensive testing of code functionality
  1. Development Scripts:
  • Create a script for running ESLint across the codebase, enabling quick and efficient identification of coding style issues and potential errors
  • Create a script for running Prettier across the codebase, simplifying code formatting and ensuring uniform code style
  • Create a script for running Jest tests, streamlining the process of executing tests and generating reports on test outcomes
  1. Comprehensive README:
  • Add a thorough README file in the repository, describing the project, its purpose, and the technology stack used
  • Clearly document all available scripts (e.g., for running ESLint, Prettier, and Jest tests) and their usage in the README file
  • Provide detailed instructions for setting up and running the project locally, ensuring newcomers and contributors can quickly get started

Checklist:

  • My code follows the style guidelines of this project
  • I have performed a self-review of my code
  • I have commented my code in hard-to-understand areas
  • My changes generate no new warnings

Maxim and others added 30 commits July 26, 2023 14:43
create-react-app typescript template
chore: move file from subfolder
docs (Issue 1_10): add eslint react+ ts recommended rules
docs (Issue 1_21): add pull request template
Issue 1_12: Initialize Husky (8 points) 🐶
* feat(Issue 2_19): Implement Direct Navigation Links to Main, Login, and Registration Pages for Unauthorized Users (#19)

feat: Implement Direct Navigation Links to Main, Login, and Registration Pages for Unauthorized Users

* feat(iIssue 2_17, ssue 2_18) : implement a header with links to all functional pages and redirect to the relevant pages(#20)

* feat(Issue 2_09/Issue 2_01): implement client-side validation for required fields in the registration/login form (#23)

* feat: improve functional page styles

* feat:(Issue 2_10, Issue 2_11, Issue 2_12): Integrate the registration form with a chosen authentication service/ Implement error handling for failed registration attempts/ Display clear error messages for invalid inputs in the registration form (#24)

* feat(Issue 2_03): Integrate login form with CommerceTools authorization service (#27)

* feat(issue 2_05): Redirect users to the main page upon successful login (#28)

* feat(Issue 2_13): redirect after login (#29)

* feat(issue 2_06): Redirect logged-in users to the main page from the … (#30)

* feat(Issue 2_07): Handle Authentication Token (#31)

* feat (2_15/2_14) Allow users to set a default address during registration, Enable users to select different billing and shipping addresses during registration

* feat: Migration to sdk client + issue (2_02/2_04): login error handling (#33)

* feat: add sdk deps & 1 success customers call

* refactor: switch registration into sdk

* refactor: switch all existing functionality into sdk

* refactor: prettier

* refactor: use obj destructing

* refactor: remove comments, change constants notation

* chore: delete axios dep

* feat(issue 2_23): implement Logout Functionality for Authorized Users (#34)

---------

Co-authored-by: Pavel Yudenka <66093034+Pavelvl21@users.noreply.github.com>
Co-authored-by: Pavel <p.yudenko@gmail.com>

* feat: implement on-change client-side validation

* feat: implement login with password flow

* refactor: Improve signup form layout

* feat: group address fields & checkboxes

* fix: remove bg image since it hiding burger icon

* feat: set navBar links consistent color

* refactor: Burger links state rendering (#40)

* feat: implement postal-code validation (#42)

* fix: update on-change validation, update errors messages

* feat: implement pages

* feat: add pages

* chore: move navgroup to seporate module

* feat: add style css

---------

Co-authored-by: Pavel <p.yudenko@gmail.com>
Co-authored-by: Maxim <fil.maxim13@gmail.com>

* feat: add unit tests for sprint-2 features (#36)

* chore: move CountryInput to separate module, install mui (#46)

* reafactor: fix remarks (#47)

---------

Co-authored-by: glitch-surfer <121193837+glitch-surfer@users.noreply.github.com>
Co-authored-by: FilMaxim <61318799+FilMaxim@users.noreply.github.com>
Co-authored-by: Maxim <fil.maxim13@gmail.com>
FilMaxim and others added 2 commits September 8, 2023 18:40
…mentation

* About Us Page Implementation (#74)

* Issue RSS-ECOMM-4_10/11/12/13/14/15: Cart page (#75)

* Refactor/integrate cart (#76)

* feat: implement "Clear Shopping Cart" Button

* feat: implement clear cart btn

* feat: add confirm

* feat: implement accessibility

* feat: add eslint a11y plugin

* fix: category card accessibility issues

* fix: customer page address  accessibility issues

* fix: product page  accessibility issues

* Implement Footer (#80)

* Detailed Product Page Implementation (#79)

* feat: integrate catalog page with commercetools api (#81)

* chore: merge dev branch

* chore: update naming

* feat: implement integration the Catalog Product page with the commercotoola api

* refactor: update ls handler

* chore: fix eslint errors

* refactor: change type in filter (#83)

* feat: implement main page

* feat:4_16/4_17: implement cart promocode

* feat: improve cart styles & adaptive

* feat(Issue 4.03.2): Navigation Controls: If implementing pagination, provide clear navigation controls for the user to navigate through different pages.

* feat: update main, remove contacts page

* fix: resolve cart styles conflict mistake (#88)

* chore: update about page (#91)

* chore: update about page

* chore: update linl

* feat: implement skeletons load (#93)

---------

Co-authored-by: Vladislav <121193837+glitch-surfer@users.noreply.github.com>
Co-authored-by: Pavel Yudenka <66093034+Pavelvl21@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants