Skip to content

Equipment list variants

Pier Dolique edited this page Jul 14, 2024 · 2 revisions

We have some options for how to implement the equipment list.


Variant 1

Every user has their equipment list:

  • User Woof has tent Mumba Yumba UL2 Black
  • User Bark has tents Mumba Yumba UL2 Black and Small Aegis UL

In this case in the database equipment we will have 3 records:

id item_name user_id
0 Mumba Yumba UL2 Black 0
1 Mumba Yumba UL2 Black 1
2 Small Aegis UL 1

For users:

id user_name
0 Woof
1 Bark

Pros

  • Independent equipment in equipment list per user.
  • No need to manage global lists, every user can add any crap and only the user will see that.

Cons

  • Database will grow significantly because of equipment duplicates (potentially).
  • Bad UX. Each user should do the work that someone has already done.

Variant 2

The app has a global list of equipment:

In the app, we have only one record for Mumba Yumba UL2 Black and one for Small Aegis UL

id item_name
0 Mumba Yumba UL2 Black
1 Small Aegis UL

And we have users who added such equipment to their lists:

equipment_item_id user_id
0 0
0 1
1 1

For users:

id user_name
0 Woof
1 Bark

Pros

  • High-quality equipment list in case of moderation.
  • Database will not have duplicates.
  • Better UX. If the piece of equipment is already in the database, the user can just pick it up.

Cons

  • We need to write a moderation system/wiki approach for equipment.
  • We need to support factory modifications (e.g.: extra options).
  • We need to support custom equipment modifications (e.g.: custom weight).

Variant 3 (TBD)

Mixed between Variant 1 and Variant 2

  • Global list with predefined items.
  • Local list of items at the same time.
  • Users can add predefined equipment to their lists and add custom items as well.

Pros

  • Equipment moderation is not necessary. "Approve" can be set later by a moderator.

Cons

  • A question "How to approve equipment and make it available for everyone?".
Clone this wiki locally