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

feat: Library command #26

Draft
wants to merge 28 commits into
base: master
Choose a base branch
from
Draft

Conversation

sustained
Copy link
Collaborator

@sustained sustained commented Oct 1, 2019

Any thoughts so far? For now I just decided to go with JSON files for storage.

We could make it so that people can add and modify libraries via commands and use a proper DB and everything but I think it's overkill. It's really not much work to add a JSON file for each library, in my eyes.

Heck large parts of it could be automated anyway if need be.

  • Add LibraryService.
  • Add !library command.
  • Reduce info for now per request of gusto.
    • Reduce link overload.
    • Shorten descriptions.
  • Add tons more libraries.
  • Return similarly named libraries if no exact match or alias is found.
  • 🚧 Add icons for major/noteworthy libraries/frameworks.
  • Searching/filtering e.g. by tag etc.
  • 🚫 A way to list all libraries (another blocked by util: Paginated embeds. #25).
  • Anything I missed?

Future improvements (not this PR)

  • Automated retrieval of latest version / release date for each library?
  • Categories (use Vue Community + Awesome Vue's categories to help categorise).

image

image

@sustained sustained added priority: Medium The issue is significant. status: In Progress It's currently being worked on. type: Feature Something entirely new will be added. status: Awaiting Input It needs input from other contributors. labels Oct 1, 2019
@sustained sustained self-assigned this Oct 1, 2019
@sustained
Copy link
Collaborator Author

It's ugly but for now it works: https://github.com/sustained/vue-ecosystem-data

And by works I mean dumps tons of JSON files containing the data this command needs.

I think that constantly hitting the Github API makes no sense:

  • it will slow down the !library command significantly
  • we could potentially hit rate limits
  • if there's an outage then the command is unusable
  • it's not going to take particularly much memory to keep the libraries in memory
  • this data rarely changes anyway, no need to hit the network constantly, we can just update the data on a schedule or something

@sustained
Copy link
Collaborator Author

Anyway, I can work on getting this feature finished now that I have all the data I need. Probably should be done in a day or two, one hopes. Then back to the !rfc and other features.

@sustained sustained mentioned this pull request Oct 6, 2019
@sustained sustained changed the title Feat: Library command feat: Library command Oct 6, 2019
@sustained sustained added this to the 0.1 milestone Oct 6, 2019
@sustained sustained mentioned this pull request Dec 3, 2019
@sustained sustained modified the milestones: 0.1, 0.2 Dec 30, 2019
@sustained sustained added status: On Hold It's been started but is temporarily on hold. and removed status: Awaiting Input It needs input from other contributors. status: In Progress It's currently being worked on. labels Dec 30, 2019
@sustained sustained modified the milestones: 0.2, 0.3 Jan 6, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
priority: Medium The issue is significant. status: On Hold It's been started but is temporarily on hold. type: Feature Something entirely new will be added.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant