Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Streamline Adding New Quotes and Enriching Existing Quotes #52

Open
nelsonic opened this issue Aug 29, 2021 · 7 comments
Open

Streamline Adding New Quotes and Enriching Existing Quotes #52

nelsonic opened this issue Aug 29, 2021 · 7 comments
Labels

Comments

@nelsonic
Copy link
Member

While manually adding quotes to the quotes.json file I was reminded that this isn't a very beginner-friendly way of contributing ... 💭

Can we do it better with a Web App using auth? 💡

@nelsonic nelsonic added enhancement New feature or request discuss technical labels Aug 29, 2021
@gbottari
Copy link

Do you think importing from CSV files might help? A lot of people are comfortable with spreadsheet software like Microsoft Excel and Google Sheets that can create CSV files. Moreover, you could setup a Google Forms that writes to a spreadsheet to accept submissions in a more user-friendly way.

@nelsonic
Copy link
Member Author

@gbottari good question. A CSV interface could be useful for some people in the short-term,
but ultimately it requires people editing the whole dataset and we want to avoid that. 💭

@gbottari
Copy link

Yeah, I agree that editing a giant file with quotes is not ideal.
What do you imagine the web app would do? Edit the json file so that the user can open a PR later with it?

@nelsonic
Copy link
Member Author

@gbottari our idea was to build a basic web app with 2 tables and a simple UI that would allow people to:

  1. contribute new quotes
  2. enhance existing quotes with a source link and/or tags
  3. download the entire quotes library as JSON with the click of a button as a file
  4. source the quotes via an API similar to: https://phoenix-content-negotiation.herokuapp.com/.json

I wouldn't expect this App to be very complex.
We just don't have much time to build it right now.

@gbottari
Copy link

I see. But how would these contributions end up on the quotes.json file in this repo? The app would just write the json file and the contributor would open the PR? Or maybe the app would create the PR for the user? That step is not clear for me.

@nelsonic
Copy link
Member Author

@gbottari as always, good questions. We either have a trade-off between having more GitHub contributors or we have more quotes because we streamline the contribution process.

If we had infinite time to work on this we would use GitHub Auth and create a PR on behalf the contributor so we get the best of both worlds.

@gbottari
Copy link

Oh, I see now @nelsonic . The current workflow is not ideal because the user has to edit the big json file to open a PR. What you wish is to somehow make this process more straightforward.

Having a system to create the PR for the user seems rather complex. I'm trying to think of simpler solutions that might achieve what you want. 🤔

What if we split the contributing step from the actual use of the quotes by the system? What I mean is having a workflow that is easier to contribute and a separate one that compiles the big quotes.json file for the system to read.

Imagine that every quote had its own file. For instance:

quotes
├── abraham-lincoln
│   ├── a-house-divided.json
│   └── important-principles-may.json
├── albert-camus
│   └── autumn-is-a.json
└── albert-einstein
    └── god-always-takes.json

This would make it very easy for someone to find and edit a quote or add more quotes to an author. Then, in another step, a simple script would merge all the quotes generating the quotes.json file to be used by the application only, not the quote contributors.

Would that be helpful?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants