Scholarly

Inspiration

In the academic world, students navigate a sea of digital resources: textbooks, articles, and various websites. Yet, the wealth of information isn't always straightforward. Clarification and deeper exploration are often needed, leading to a cumbersome dance between multiple platforms. Scholarly simplifies this by merging these tools into a unified, one-click solution.

What it does

Scholarly, a browser extension for Chromium-based browsers, transforms text into knowledge. Highlight text, right-click, and choose "Enlighten Me" to activate Scholarly. It leverages Google Cloud's PaLM AI and Google Scholar, providing explanations and related scholarly articles in a convenient pop-up widget. This widget not only presents article titles with hyperlinks but also snippets for a quick content preview.

How We Built It

The construction of Scholarly was a journey through JavaScript's landscape, involving background.js, content.js, pop-up.js, manifest.json, widget.js, and their CSS and HTML counterparts.

  • background.js: This is where the magic starts. We integrated two pivotal API calls here—one to Google Cloud's PaLM and another to the Serp API. The PaLM API call is crafted using prompt engineering to interpret highlighted text and generate a comprehensive explanation of the concepts.

  • Topic Identification: PaLM also plays a crucial role in pinpointing the key topics, which become the seeds for our second API call.

  • Serp API Call: With the topics in hand, we reach out to the Serp API to fetch a curated list of articles, complete with titles, links, and article snippets.

  • Widget Presentation: The retrieved data is then elegantly displayed in a custom HTML widget, which springs to life on the user's browser upon invoking Scholarly with a right-click.

  • CSS Magic: The final touch of style is added with CSS, ensuring that the widget isn't just informative but also a visual treat.

Challenges We Ran Into

API Integration

Achieving fluid communication between Google Cloud's PaLM AI API and the SERP API was a hurdle. We grappled with asynchronous calls and data management to keep user experience delay-free. Zul, with his expertise in LLM applications and open-source APIs, faced a steep learning curve with Google Cloud’s API.

API Rate Limiting

Navigating the SERP API's rate limits was like a strategic game, balancing the quest for comprehensive scholarly links with the constraints of the free tier.

UI Responsiveness

Crafting a browser extension UI that was both intuitive and responsive was a design and technical puzzle. We aimed for a pop-up widget that looked good and worked smoothly across different devices, which meant lots of testing and tweaking.

Wi-Fi Issues

The hackathon's Wi-Fi was like a capricious wind, sometimes there, sometimes not, making cloud access and GitHub collaboration a challenge.

Chrome Extension Development

Diving into Chrome extension development meant getting to grips with manifest files and browser security policies, which was an educational expedition into new territory.

Accomplishments We're Proud Of

Seamless API Symphony

We successfully integrated Google Cloud's PaLM AI and SERP APIs, creating a backend that enriches our extension with smart, accessible knowledge.

Crafting a Universal Interface

We designed a user interface that adapts to any screen and feels like an integral part of the browser, showcasing our commitment to detail and user experience.

Mastering the Chrome Extension Craft

We navigated the complexities of Chrome extension development, producing a tool that's both powerful and easy to use.

Resourcefulness Amidst Restrictions

Confronted with API rate limits, we optimized our requests to deliver maximum value, ensuring every interaction counts.

The Power of Connection

More than coding, we built a team. The bonds formed here, the shared purpose, and the collective ingenuity are the true triumphs of our endeavor.

Our journey with Scholarly is more than a tale of development; it's about the connections made and the shared vision that continues beyond this hackathon.

What We Learned

Diving into the integration of advanced APIs taught us the intricacies of handling asynchronous data and the importance of prompt engineering to extract meaningful AI responses. We learned the value of user interface design that not only functions well but also engages the user. The challenges of rate limiting introduced us to innovative problem-solving techniques to maximize efficiency within constraints. Most importantly, we learned that building technology is as much about fostering teamwork and collaboration as it is about writing code.

What's Next for Scholarly

Moving forward, Scholarly is set to evolve with features like user customization, allowing individuals to tailor the learning experience to their needs. We plan to incorporate more diverse databases and APIs to broaden the scope of accessible knowledge. Machine learning will be harnessed to refine the relevance of content delivered. We're also looking at community features, enabling users to contribute to and benefit from shared insights. Scholarly will not just be a tool but a growing community of curious minds and avid learners. All of the creators plan to use this in our future academic endeavors!

Built With

Share this project:

Updates