Git Product home page Git Product logo

Comments (17)

SpatzlHD avatar SpatzlHD commented on August 12, 2024 1

Hi @SpatzlHD, I'm assigning this issue to you. Kindly raise a PR when you are done 👍

Thanks! I will work on this on the weekend so in something like three days.

from findissues.

SAGARSINGH-1 avatar SAGARSINGH-1 commented on August 12, 2024

Hey @SpatzlHD ,

Thank you for the proposal to implement idea to the project. I'm excited about the opportunity to contribute to the project and explore this idea further.

Before I confirm my ability to contribute effectively, I would like to take some time to thoroughly review the codebase and gain a deeper understanding of the project's structure and requirements. This will help me ensure that I can make a valuable contribution that aligns with the project's goals.

from findissues.

anand346 avatar anand346 commented on August 12, 2024

Hi @SpatzlHD, your idea is great but to implement it we need to redesign the UI of leftsidebar/navbar such that the user can select with which tag and language he/she wants to get the issues result. Something like dropdown we can implement what say?

from findissues.

SpatzlHD avatar SpatzlHD commented on August 12, 2024

@anand346 I don't quite understand what you want to achieve with a drop-down menu tbh. My idea would be to just not reset the selected filter every time the user clicks on a new one. And just show results based on all filters selected. Maybe even extend this concept so you can filter for multiple languages at the same time. And then maybe introduce a reset button in the nav bar that allows you to reset all filters at the same time.

from findissues.

anand346 avatar anand346 commented on August 12, 2024

Sounds interesting, that would be a great approach

from findissues.

anand346 avatar anand346 commented on August 12, 2024

Hi @SpatzlHD, I'm assigning this issue to you. Kindly raise a PR when you are done 👍

from findissues.

SpatzlHD avatar SpatzlHD commented on August 12, 2024

@anand346 after taking a closer look at this I noticed that I probably have to rewrite some of the logic of how the application handles routing and the difference between languages and tags... So I hope that this is ok for you

from findissues.

anand346 avatar anand346 commented on August 12, 2024

Yeah, there can be a change in the routing logic of the web app. Actually an issue might arise with this feature.. the Github API allows only 5000 requests per hour, and if a single user fetch issues by combining different tags and languages at the same time then the limit might get exhausted. Currently there are two PATs are being used in the web app to fetch issues and we are fetching only 30 issues of every language and tag in an interval of 10 minutes using that two PATs. We need to think about it, we may have some other idea or logic to fetch issues instead of fetching on runtime or in an interval of 10 minutes.. we may use Github Actions to fetch issues every 10 minutes and store in a json file.

from findissues.

SpatzlHD avatar SpatzlHD commented on August 12, 2024

Actually an issue might arise with this feature.. the Github API allows only 5000 requests per hour, and if a single user fetch issues by combining different tags and languages at the same time then the limit might get exhausted.

That is true.

we may use Github Actions to fetch issues every 10 minutes and store in a json file.

That would actually simplify things significantly. Because then I would only need to filter the JSON file for the tags and languages and don't need to generate new request url's for all selected filters.

from findissues.

SpatzlHD avatar SpatzlHD commented on August 12, 2024

As I already mentioned here I think it would be a good idea to have your own backend for something like this but for now we can probably get away with GitHub actions but because I didn't work with vercel that much does vercel have to build a new version of the deployment every time the JSON file is updated or can we somehow fetch the data from a JSON file hosted on GitHub on the client? Is it possible to programmatically get the raw file view? Or is this somehow protected from accessing it?

from findissues.

anand346 avatar anand346 commented on August 12, 2024

That would actually simplify things significantly. Because then I would only need to filter the JSON file for the tags and languages and don't need to generate new request url's for all selected filters.

yeah, if you have some reference on how to generate data with github actions and store in a file then kindly send me the link it would be helpful to me. thanks

from findissues.

anand346 avatar anand346 commented on August 12, 2024

As I already mentioned here I think it would be a good idea to have your own backend for something like this but for now we can probably get away with GitHub actions but because I didn't work with vercel that much does vercel have to build a new version of the deployment every time the JSON file is updated or can we somehow fetch the data from a JSON file hosted on GitHub on the client? Is it possible to programmatically get the raw file view? Or is this somehow protected from accessing it?

The idea is we'll use Github Actions to fetch and store issues every 10 minutes in a json file and will render all the issues from that json file in the web app. Currently we are fetching issues every 10 minutes with the help of getStaticProps(). But after implementing Github Actions there will be no need of getStaticProps.

And for the active repo list we'll make another json file and every time the authenticated user on our web app submit a new repo url a new PR will be created from his/her account to the main repo and once everyday I'll review all the submitted url PRs and merge it so that the submitted repo url get stored in that json file

Both Active repo list functionality and storing issues with Github Actions functionality are separate from each other. Hope it is clear

from findissues.

SpatzlHD avatar SpatzlHD commented on August 12, 2024

The idea is we'll use Github Actions to fetch and store issues every 10 minutes in a json file and will render all the issues from that json file in the web app. Currently we are fetching issues every 10 minutes with the help of getStaticProps(). But after implementing Github Actions there will be no need of getStaticProps.

But then we still have the problem of having to re-deploy to vercel every 10 minutes when the JSON file updates... Or am I wrong?

from findissues.

SpatzlHD avatar SpatzlHD commented on August 12, 2024

@anand346 can you please verify my assumption about the JSON file?

from findissues.

anand346 avatar anand346 commented on August 12, 2024

Hi @SpatzlHD, we can apply configuration to vercel that if changes made to the json file then the project should not be rebuild.

Check it for example: https://stackoverflow.com/questions/70615014/how-to-prevent-vercel-from-deploying-master-branch-if-only-readme-md-is-changed

from findissues.

SpatzlHD avatar SpatzlHD commented on August 12, 2024

Hi @SpatzlHD, we can apply configuration to vercel that if changes made to the json file then the project should not be rebuild.

Check it for example: https://stackoverflow.com/questions/70615014/how-to-prevent-vercel-from-deploying-master-branch-if-only-readme-md-is-changed

So we would need to still fetch the file and not bundle it inside the code? But instead of fetching the GitHub API we just fetch the content of the file hosted on GitHub?

from findissues.

anand346 avatar anand346 commented on August 12, 2024

Hi @SpatzlHD, we can apply configuration to vercel that if changes made to the json file then the project should not be rebuild.
Check it for example: https://stackoverflow.com/questions/70615014/how-to-prevent-vercel-from-deploying-master-branch-if-only-readme-md-is-changed

So we would need to still fetch the file and not bundle it inside the code? But instead of fetching the GitHub API we just fetch the content of the file hosted on GitHub?

yeah that's true

from findissues.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.