Team Details:
- Aziz Abdullaev: [https://azizabdullaev.site ; https://github.com/azyzz228 ]
- Chukwuemeka Mba: [https://www.emekr-tech.vercel.app; https://github.com/Chukwuemeka-Mba; emakamba10@gmail.com]
- Both of us are 22.Fall.8 Pod members
- Demo https://eye-of-packages.netlify.app/
Many developers make use of the plethora packages that exist in the third party package ecosystem on their various projects. However, managing these packages can become cumbersome, tiring and at worst make one's project vulnerable to attacks.
We built this project to help developers manage their packages better to help seamless and malware-less development.
The sole and primary aim of Eye of Packages is to help you track and manage your Node project's NPM packages and dependencies. Eye of Packages presents data on Github stats, last updated date, and the links to Github repo and issues for the package. It is aimed to help you identify potential incompatibilities as well as security threats that can come the obsolete packages.
The name eye of the package originated from the phrase "keep an eye" which is used to signify that one is tracking or monitoring something. Which means that with our node package tracker you can keep an eye on all the packages and/or dependencies you used in building your project.
This will be beneficial for both the author of the project, the maintainer, contributors and the users.
This application was built with:
- React Js
- Tailwind css
- Node Js
- Javascript
There were lots of challenges on our way, but our primary challenge was in the assembly of the projects various endpoints and making them work together seamlessly.
After we settled on the idea, we separated the work according to everyone's skills. Aziz was primarily working on the Backend-end, while Emeka set up integrations & frontend. We faced most challenges when we tried to allocate segregated chunks into one project.
- A fully working prototype!: This has been intense yet insightful. We are very proud to have designed and built an application within such a short timeframe.
- Learning how to collaborate on GitHub!: Not all of us were familiar with making branches or making a PR and merging. This hackathon has fast-tracked the learning process and we are all now very comfortable in using GitHub! Learning new technology (like Tailwind CSS, routing in React, implementing sophisticated design features), meeting new people, debugging, debugging, and more debugging! The idea of helping developers to manage packages and making positive changes in the developer ecosystem.
For the technical part, we learned how to perform chained API calls with JS with its notoriously complicated Promises. We have also learned about how dates are formatted and how to convert dates from milliseconds after Jan 1 1970 0:00 UTC to actual dates like 25, Sep, 2022. Moreover, we have faced some issues when we were merging the front-end and backend. We also gave our level best to make the UI/UX look minimalistic and useful! Not to mention, documentations and help from Google for technologies we used.
We are aiming at developing our own APIs which will scrap data from Github and NPM. The APIs we have used are accurate but we believe we can be even more precise. Since both of us are very passionate about tackling the issue of helping developers to track their third party packages, it's easy to come up with a lot of ideas for new features (like we did at the beginning of this hackathon!).
Public API endpoints we have used: