Inspiration
We are using lots of different open source software/lib/tools in our project, and suppose we quickly want to know how this feature is implemented in their codebase. so, we need a tool that can quickly load the codebase files, navigate to different files of different folder or understand the codebase with multiple open files and navigate between then.so, that we can quickly get into the implementation details without the need to clone the repository on the cloud or local system.
What it does
It helps us to quickly load the github codebase and see the content of a file into an editor and can open multiple files and navigate to different files and folder easily.
How we built it
We are built using :
- React : for the frontend
- Github GraphQL API : for fetching repository files and folder data
- React Primer ( Design System for Github ) : We choose this because it's a github tool so it has to follow some design standard made by github and also the UI which all user is familiar with.
- Monaco Editor : for showing content of files and navigate different files for reading
- react query : for managing state,caching , refetching data
Challenges we ran into
Some Challenges we faced is :
- how to integrate editor
- how to show files, we are getting different datas from the graphql api, how we can transform it and plug the data into files section and editor section
- managing states
Accomplishments that we're proud of
I always want this types of tool for quick reading, I have searched different tools on the internet but all have some pros and cons, and now we build it and it's working. This tool is existing now for other hackers to use it, this is our accomplishment that we are proud of .
What we learned
we have learned a lot about all the tools that we use in this project, how to collaborate with other hackers, how to fix bugs that are not in your system but in your other teammate system.
What's next for GitRead
We also have different plans for the gitread, We are actively maintain this repo and using this tool. we also have some feature that are coming in future like :
- support for private repos
- saving codebase locally
- multiple branch support and much more.
Log in or sign up for Devpost to join the conversation.