DeepSourceCorp/good-first-issue

Using a single page to handle the display, filtering and sorting of repos

TakasiVenkataSandeep-08 opened this issue · 4 comments

Hi @jai-deepsource @siddhant-deepsource
Currently there are two different pages to handle the display and filtering of repos

  1. language/index.vue
  2. language/_slug.vue

as both the pages were almost doing the same thing and handling the filter repos by label using language/_slug.vue is adding limitations, code repetition and complexity to support features like multi label select and deselect to filter the repos.

Propose solution

  1. instead it would be much better if we can handle these things in language/index.vue page by adding a new state to maintain the active tag or label selected (example: javascript) and filter the repos accordingly if there is any active tag or tags. else all the repos can be displayed.
  2. remove language/_slug.vue page and it's dependent code.

i can raise a PR for this if this sounds reasonable to you guys

Demo:

ezgif com-gif-maker

Note: I have suggested this solution as per my understanding on the project but please let me know if i'm missing anything or if there are any complications with my approach

Thank you!

Hey @TakasiVenkataSandeep-08 having multiple pages is good from an SEO point of view, it also becomes easier to share these links with others. While we can definitely improve code reuse, merging those pages does not serve the site best. LMK your thoughts

Okay this makes sense to me @shivam-deepsource but can you confirm if this solution looks ok if we can manage to have multiple languages in the slug?

could do it using react need my help

Hey @TakasiVenkataSandeep-08 @shivam-deepsource @abiel13 ! I tried to contribute to this repo as well but I haven't seen any activity in the last few months. I decided to fork it to keep it alive. Please see https://github.com/lucavallin/gfi and feel free to open a pull request or an issue there. At this time I am setting up the hosting and cleaning up the code. If you're up for it, I could use some help to convert the app from Nuxt.js & Python to Next.js & Typescript.