cellerarius's People
cellerarius's Issues
Data model
The software will be strictly tailored to me, so only my thoughts on important edge cases and acceptable workarounds matter.
- User: nooooope no user model, I'm not in the mood. Can set a browser-local username to be used in the changelog. Yes, makes it unsuitable to being hosted online. Good.
- Event: Everything will be event scoped. Recipes and groups will have to be re-created (with a "copy" option, so historical data like addresses and recipes don't get modified when things change the next year).
- Attributes: name, comment (just to jot down some notes on how things went
- Recipe: per-event model of a recipe
- Attributes: name, event, output (amount of cookies in the default run), duration (optional, minutes), link, package_size (default=2, smaller / easier ones can go up to 4, super fancy ones just = 1. Will be multiplied with package multiplier).
- Properties: is_vegan
- Methods: contains(ingredient), multiply(), import() (from recipe-md data)
- RecipeIngredient: through-model. No unit because we're using whatever's the obvious unit, fuckit.
- Attributes: recipe, ingredient, amount
- Ingredient: event-independent, used for shopping lists (transient) and planning based on allergies and preferences
- Attributes: name, is_vegan, is_nut, is_milk, price (optional), comment, unit
- IngredientStock: We're not tracking movements for ingredients, since we are not building an accounting tool. Simple interface to change what's there.
- Attributes: event, ingredient, amount, material (like, paper, box, etc)
- CookieStock: What's actually there. Again, like with ingredients, not actually a set of transactions, because โฆ no
- Attributes: recipe, amount
- Package: It's called "package" rather than "recipient", because groups where one person has an allergy are two packages. Granted, they ship together, but still. Equally, people who get cookies multiple times are in here multiple times, and screw normalisation.
- Attributes: name, shipping, only_vegan, no_nuts, no_milk, multiplier (default=1)
- Shipping: One or more packages
- Attributes: name, shipping_method (post, direct, carrier pidgeon), shipping_info, shipping_date (important!), done, event
- PackageContents: Who gets what
- Attributes: recipe, amount
- LogEntry: generic model to track changes and make things reversible
- Attributes: Who even knows? Probably an action_type, JSON data and probably not even a GFK
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.