Skip to content

Conversation

@tmlmt
Copy link
Owner

@tmlmt tmlmt commented Jan 11, 2026

Description

Introducing ShoppingCart and ProductCatalog to enhance shopping functionality. This PR adds:

  • ProductCatalog class to manage product options from TOML files
  • ShoppingCart class to find optimal product combinations for shopping lists
  • Support for matching ingredients to products with compatible units
  • Optimization algorithm to minimize shopping costs
  • Virtual shopping cart functionality with price calculation

The documentation has been updated to split "Shopping" into its own feature section, highlighting the new ability to parse category configurations, create shopping lists, and fill in a virtual shopping cart based on a product catalog.

Type of change

  • New feature (non-breaking change which adds functionality)
  • This change requires a documentation update

Copy link
Owner Author

tmlmt commented Jan 13, 2026

Merge activity

  • Jan 13, 3:18 PM UTC: A user started a stack merge that includes this pull request via Graphite.
  • Jan 13, 3:19 PM UTC: Graphite rebased this pull request as part of a merge.
  • Jan 13, 3:20 PM UTC: @tmlmt merged this pull request with Graphite.

@tmlmt tmlmt changed the base branch from ci/pre-release to graphite-base/83 January 13, 2026 15:18
@tmlmt tmlmt changed the base branch from graphite-base/83 to v3 January 13, 2026 15:19
tmlmt added 7 commits January 13, 2026 15:19
…st to products from a catalog (#64)

Resolves: #38

* feat: new class ShoppingCart to match products from a catalogue with a shopping list's ingredients

* feat(ShoppingCart): add total price per selected product

* feat: new class `ProductCatalog` to manage product catalogs

* feat(ShoppingCart): add possibility to provide shopping list and/or catalog in the constructor

* docs: added additional types to the API section

* test: maximize coverage (100%)

* docs: improve docstrings, add examples and remarks
@tmlmt tmlmt force-pushed the feat/shopping-cart branch from 16c7fe2 to d361b7d Compare January 13, 2026 15:19
@tmlmt tmlmt merged commit b926d73 into v3 Jan 13, 2026
1 of 2 checks passed
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.

2 participants