baisong / trademax

Work-in-progress: NPM module version of Jeff Michaud's 2018 Javascript translation of Chris Okasaki's 2007 Java Trade Maximizer (developed and used through BoardGameGeek/BGG game swap events)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

trademax

Work-in-progress: A generic library for determining maximal item exchanges among a group of people based on ranked want lists.

Work-in-progress

This will take a little time!

Thank you

The story of this code

Some people love board games. Some of those people have met up to share their games via BoardGameGeek/BGG.

Around 2007, Chris Okasaki implemented a 700-line Trade Maximizer in the Java language, and it was used to maximize the number of trades based on what games/items people have, and which of those items people want.

Around 2018, Jeff Michaud translated that Java library into a 1600-line Javascript version.

This package is an NPM module version for generic use in web applications, such as for neighbors sharing common items (see nextjs-potluck by Kevin Nguyen).

Built and packaged using create-svelte

This project was started by typing npm create svelte@latest using the "Skeleton Library" project preset, and built into an npm package by running svelte-package.

About

Work-in-progress: NPM module version of Jeff Michaud's 2018 Javascript translation of Chris Okasaki's 2007 Java Trade Maximizer (developed and used through BoardGameGeek/BGG game swap events)

License:GNU General Public License v3.0


Languages

Language:JavaScript 98.8%Language:TypeScript 0.5%Language:HTML 0.4%Language:Svelte 0.3%