Inspiration
A few days ago, there was a meme going around the internet comparing a beginner programmer to an experienced one. The beginner had a full keyboard. The experienced one only had four keys: Ctrl, C, V, and Z. It was funny, but also kind of true. As computer scientists/students/humans, a surprising amount of our time isn’t spent inventing brand-new code/creating new work. It’s spent searching through old assignments, past projects, random GitHub repos, or forgotten Google Docs trying to find something we already wrote. Humans are lazy in a very specific way - we hate repeating the same work twice. So I started wondering: how can we be even lazier, but also more efficient? That question eventually turned into Palimpsest. A palimpsest is a manuscript page that has been written on, scraped off, and reused for new text. That felt like the perfect metaphor for how we actually create things.
What it does
Palimpsest is a knowledge-reuse engine built around your own work. Instead of generating answers from scratch, it helps you build new work by reusing what you have already written or coded. It connects to your existing documents, notes, and codebases. Once everything is synced, your past work becomes an active resource instead of something buried in old folders. As you work, the extension reads the context on your screen, whether that's an assignment, a bug, or a prompt, and suggests questions you might be trying to answer. When you pick one, it searches across your own files to find relevant snippets and shows where they came from. You choose what to reuse, and Palimpsest composes a new response directly from that material. The result reflects your own terminology, structure, and style because it’s built from your history.
How we built it
I built Palimpsest as a browser extension and web app with a React frontend and a Python backend. The system syncs a user’s documents and code, breaks them into chunks, and converts them into embeddings for similarity search. When the user asks a question, it retrieves relevant snippets and uses them as the foundation for the generated response. Most of the current prototype was built using Gemini AI Studio to quickly test ideas, wire together the retrieval pipeline, and iterate on the interaction design.
Challenges we ran into
The hardest part was relevance. It’s easy to retrieve something vaguely similar, but much harder to retrieve something actually useful. I had to experiment with different chunk sizes, embedding strategies, and ranking approaches to avoid results that felt random or out of context. Another big challenge was building everything quickly enough to demonstrate the idea, which was where Gemini AI Studio comes in.
What we learned
I learned that most productivity tools are built around creating new content, but very few are built around reusing old content. I also realized how messy personal knowledge actually is. People don’t organize their work perfectly, and any useful system has to handle that chaos.
What's next for Palimpsest
Right now, Palimpsest is a functional prototype. The next step is turning it into a real product. That means rebuilding parts of the system outside of Gemini AI Studio, improving reliability, designing a proper backend, and making syncing faster and more secure. I also want to focus on onboarding, performance, and a cleaner user experience so it can work for people beyond a demo environment. The goal is to launch Palimpsest as a usable tool for students, developers, and knowledge workers and turn this product into something people can actually rely on every day.
Log in or sign up for Devpost to join the conversation.