Prisma - Project Story

Inspiration

Prisma was born from the everyday frustrations of browsing the modern web. Users constantly confront:

  • Poor readability
  • Relentless distractions
  • Endless articles engineered to waste as much time as possible
  • Loops of endless links designed to trap attention

These difficulties affect everyone, but they weigh disproportionately on users with special needs. The web was not designed with accessibility as a first principle, and the tools that could help are often locked behind paid APIs or proprietary services.

We concluded that what was needed was a personal agent — one capable of understanding the structure and navigation of the web and dynamically adapting it to each user's needs.

What it does

Prisma is a personal agent that adapts the web to your needs. It has full access to a website's DOM, which allows it to answer specific questions about the page you are visiting and to modify the page in real time. With Prisma, a user can:

  • Remove annoying elements
  • Adapt the webpage's style
  • Apply a high-contrast mode to the entire page
  • Simplify the website
  • Search for specific elements on the page
  • And much more

All of this is powered by a local LLM that interprets the user's intent and dynamically reshapes the web according to their requests. Because it runs entirely through Ollama, everything stays private: no data ever leaves the user's machine.

In this way, we built a fully private personal agent capable of adapting the web experience to each profile, while maintaining a free, open-source structure accessible to everyone.

Web accessibility should not be a privilege. It should be something everyone can enjoy, whether or not they have access to an API or the money it entails.

How we built it

To build Prisma, we relied on our combined backgrounds in computer science and intelligent systems. Both team members specialize in computing and intelligent systems, and one of us also has experience in web and extension programming. We decided that combining these skills was the best foundation for the project.

We divided the work and held a long series of programming sessions, distributing responsibilities between the two of us.

For the implementation, we deliberately kept the stack simple — JavaScript, HTML, and CSS — to avoid unnecessary overhead. At the same time, we had to design the entire agent architecture: its tools, its communication with Ollama, and the error handling required to keep the whole process stable at every step.

Challenges we ran into

We faced many difficulties, beginning with time management. Building a complete system in such a short window is a major challenge in itself, so we had to carefully prioritize features and time to reach the minimum viable product we had envisioned within the available range.

Several other challenges emerged along the way:

  • Model compatibility. Making the extension work across the widest possible range of models was very complex. Tasks had to be divided into chunks small enough for a small LLM to handle, but not so small that the waiting time became endless.
  • Debugging. We spent many hours tracing, fixing, and re-testing problems across the pipeline.
  • Feature complexity. Perhaps the biggest complication was implementing the features themselves. Some functions require a long and precise sequence of actions — reading the entire DOM, splitting it into segments, filtering elements, searching for specific attributes, and more. The final flow of each tool ended up being quite intricate, and reaching a correct, stable design required a great deal of iteration.

Accomplishments we're proud of

We are proud of the product we have built, and above all of having made it open, free, and powered by local AI.

The features follow a complex and interesting flow that works reliably in practice. We are especially proud of this, since the flow itself was one of the biggest difficulties we encountered.

Above all, we are proud to be able to say that our tool is helping people browse better and fight the difficulties that normally arise — all while everything remains private and local.

What we learned

This has been one of our largest projects and the one where we have faced the most challenges. It taught us a great deal.

One of the main lessons was teamwork: learning to manage work and responsibilities, and to react constructively to difficulties on either side.

We also learned a great deal about system design — the importance of following strict conventions, and of anticipating errors by preparing debugging tools before failures occur. As mentioned, this was our first time building a system at this scale, and it produced many lessons along the way.

The biggest takeaway, without a doubt, is the new knowledge we acquired about systems, LLMs, web development, AI agents, and the broader set of technologies that surround them.

What's next for Prisma

Prisma's journey has only just begun. We plan to continue the project by:

  • Adding new features
  • Refining the existing flows
  • Expanding accessibility coverage
  • Gathering and incorporating user feedback
  • And more

All of this while maintaining our commitment to open source, freedom, absolute privacy, and zero cost.

We plan to introduce new features and improve the interface. We may also bring new members onto the Prisma team so we can take the project much further.

Our long-term goal is to make the web a place where every user, regardless of ability, can navigate comfortably and without barriers.

Built With

Share this project:

Updates

Submission history