alfg / opendrinks

:cocktail: Open Source Drinks! Add your own recipe in a pull request! Inspired by ๐ŸŽƒHacktoberfest!
https://opendrinks.io
MIT License
372 stars 552 forks source link

๐Ÿ’ก Ideas #50

Closed alfg closed 5 years ago

alfg commented 5 years ago

Looking for ideas, suggestions and feedback for https://opendrinks.netlify.com.

Feel free to post them here.

ArelySkywalker commented 5 years ago

Some ideas I have (I have a similar app that i built!) ๐Ÿ˜„:

I would love to help contribute for Hacktober Fest! ๐ŸŽƒ

alfg commented 5 years ago

Good ideas @ArelySkywalker!

I plan on opening a few feature requests for search filtering and adding tags to the drink recipe json. Recommended Serving Glass would be nice as an optional field.

alfg commented 5 years ago

101 and #102 created. Feel free to take on any of these if you like!

ArelySkywalker commented 5 years ago

Awesome, thanks!!

SorielV commented 5 years ago

Some ideas I have PWA Support

Some tools that may be useful. Gridsome JamStack Vuex Store

alfg commented 5 years ago

Hi @SorielV,

I am not too familiar with Gridsome, but checking into it.

For Vuex, I'm not sure it seems necessary to use a centralized store for this app yet, but where do you feel it might be needed?

TobyAsE commented 5 years ago

Add the capability to export a chosen recipe. Either as a printable page/pdf or machine-readable (just dump the json...)

eg9y commented 5 years ago

Add a similar drinks section for each recipe. Similar drinks are drinks that have common keywords/ingredients. We can limit the number of recommendation and pick the ones that have the most similarities.

alfg commented 5 years ago

Good ideas @TobyAsE and @VVNoodle. I've added #133 and #134 respectively.

TobyAsE commented 5 years ago

A list view where all the drinks are shown. Maybe in list form or as a tiled display. Should be sortable by keywords.

Edit: The "explore" tab is exactly that, so we should add a keyword-filter there.

alfg commented 5 years ago

@TobyAsE This is currently the explore page, but hopefully we can get pagination added first, then we can add filters/sorting. I added #163 as the feature request.

TobyAsE commented 5 years ago

Wow, @stevenanthonyrevo was fast. Once #175 is merged, we can add the keyword filter.

TobyAsE commented 5 years ago

As @VVNoodle said in #173 , I also think that it would be a great idea to seperate the ingredients into multiple parts. name and quantity are obvious, I would also add something like comment. This could be quite a task to apply to all recipes now, but it's just a bit of tedious work. This would make searching and comparing way easier down the road.

alfg commented 5 years ago

Yeah, I like the idea of updating ingredients into name and quantity. But yes, it can be a tedious task to update the existing ones. Or maybe a one-off script to update all of them.

Assisting commented 5 years ago

I could take a crack at writing something for that, I've done some similar work in the past in Python.

alfg commented 5 years ago

I could take a crack at writing something for that, I've done some similar work in the past in Python.

@Assisting That would be great! Feel free to try and let us know!

Assisting commented 5 years ago

Well, the results are in PR #186. I feel like it went OK, although some of the weights and measures were pretty loose in these ingredient lists and so I didn't try to normalize the inputs or anything.

alfg commented 5 years ago

Thanks @Assisting! I've updated the CONTRIBUTING docs with the updated JSON schema for ingredients!

TobyAsE commented 5 years ago

I just added prettier to my project locally and I am getting screamed at. Maybe we should require a linter in the project to keep the style consistent across the codebase.

alfg commented 5 years ago

Hey @TobyAsE, would this be different from the supplied .eslintrc file? I think this was part of the vue-cli generator.

I've been re-linting some of the warnings popping up occasionally.

TobyAsE commented 5 years ago

Ah, I see. Somehow, eslint didn't recognize that (or I am stupid). It's working now an I'm occasionally getting some warnings. Could you create an issue for the re-linting, we could move this conversation there? ;)

alfg commented 5 years ago

Sure, @TobyAsE. Created #225

kcusaac commented 5 years ago

What about adding a feature for favoriting drinks? It can be stored in the browser. If that is something that you think should be added I can work on it.

TobyAsE commented 5 years ago

@kcusaac sounds like a good idea to me. If the user has stored some drinks as favourite, we can display them quick and easy on the main page.

shultztom commented 5 years ago

Would it make sense to have a .nvmrc or specify the version of node in the package.json? With this many contributors, it might be nice to all be on the same version of node.js

alfg commented 5 years ago

@kcusaac This is a great idea and something I had in mind to propose as a feature request. Something like saving favorites to local storage by "starring" a drink. I'll add the feature request today.

alfg commented 5 years ago

@shultztom Yes, good call. I'll add one with the latest LTS version (v10.16.3)

shultztom commented 5 years ago

@alfg

@shultztom Yes, good call. I'll add one with the latest LTS version (v10.16.3)

I've made a PR here if would want to look at that

https://github.com/alfg/opendrinks/pull/232

alfg commented 5 years ago

@shultztom Thanks, checking it out now.

alfg commented 5 years ago

Another idea as the project continues to grow in features would be to add unit testing. Jest and Mocha seem to be supported for component and unit testing.

eg9y commented 5 years ago

I'd be down to initiate a test environment. Should we create a tests folder mimicking the src folder, or have the test side-by-side with the file to be tested?

TobyAsE commented 5 years ago

To make contributing a recipe easier we could build a recipe-builder with a nice ui that generates the json of a recipe.

alfg commented 5 years ago

I'd be down to initiate a test environment. Should we create a tests folder mimicking the src folder, or have the test side-by-side with the file to be tested?

I'd say in a tests folder.

alfg commented 5 years ago

To make contributing a recipe easier we could build a recipe-builder with a nice ui that generates the json of a recipe.

This is cool idea, but I feel if we go that route, we might as well build out a full API backend (which is out of scope for this project) since that's kinda creating a form for it, ha. However, I'm trying to keep the project strictly a static website for now.

For Hacktoberfest, I like the idea of recipes being submitted as JSON by users to keep it developer-oriented, but we can revisit this in the future.

Maybe some kind of recipe schema validation tool? Or even some kind of bot that validates the PR. ๐Ÿ’ก

TobyAsE commented 5 years ago

I'll have a look into creating a validator. A bot sounds like a nice idea

eg9y commented 5 years ago

I'd say in a tests folder.

I've create an issue for creating the test environment. Can you assign it to me? Thanks!

alfg commented 5 years ago

@VVNoodle looks like there's a PR up for it on #265 as a starting point. Is this similar to what you had in mind too?

eg9y commented 5 years ago

Yeah my bad didn't see that. I thought PRs should correspond to existing Issues.

Chrispy404 commented 5 years ago

Yeah my bad didn't see that. I thought PRs should correspond to existing Issues.

My bad @VVNoodle I got a little ahead of myself. I saw mention of testing in the ideas thread here the previous day, but there was never an issue made so i figured it had been overlooked or forgotten about and quickly put something together. As @alfg said, what I've put up is simply a starting point so if you're wanting to work on tests there's still plenty to do.

TobyAsE commented 5 years ago

We're getting a few warnings when npm install, should we do something about this?

TobyAsE commented 5 years ago

There is nothing we do with @kcusaac s favoring-Feature right now. We should change that. Output the favorites somewhere.

alfg commented 5 years ago

@TobyAsE I believe @kcusaac mentioned he would create the Favorites view once #239 was merged. @kcusaac are you working on this?

alfg commented 5 years ago

We're getting a few warnings when npm install, should we do something about this?

@TobyAsE I updated package.json to clear up 2 of the warnings from missing fields. Not sure how to fix the other 2, but I think they are minor and shouldn't really affect anything.

kcusaac commented 5 years ago

@TobyAsE I believe @kcusaac mentioned he would create the Favorites view once #239 was merged. @kcusaac are you working on this?

Yeeh, I'll push it tomorrow. Do you think we should have a new tab with the favorites?

alfg commented 5 years ago

@kcusaac Sure. A new tab is fine.

alfg commented 5 years ago

Another idea and something I've been working on is to create a mobile app using the same recipe data as a "recipes feed" for the mobile app to fetch its data from.

Example feed: https://opendrinks.netlify.com/.netlify/functions/getRecipes

I'm currently experimenting with React-Native/Expo to create the mobile app, and using Netlify's Functions service to implement feeds for the mobile app to consume.

Also, Netlify has upgraded this project to their Open Source plan to help sponsor the project! ๐ŸŽ‰

alfg commented 5 years ago

~Another idea is eventually I would like to replace the Home/Random view with something like a "Featured" view. In this view we can display a curated list of drinks configured by a JSON schema.~

~It would be cool to create customized lists of drinks, by popularity, themed, seasonal, etc... Like Halloween based drinks. :) It would give it more of a true "homepage" feel.~

Added! #395

alfg commented 5 years ago

https://opendrinks.io is registered and live!

alfg commented 5 years ago

Thanks for all the ideas! This was a fun project!

See the v1.0.0 release at: Thank You Hacktoberfest 2019!

See you again next year! ๐ŸŽ‰

Assisting commented 5 years ago

Good job team! Thanks for having us along for the ride @alfg! :clap: