Revise
Our Story
What Inspired Us
In our information-saturated world, we constantly consume content but struggle to retain and connect the knowledge we gain. Traditional bookmarking falls short—saving articles for "later" that we never revisit, losing valuable insights in the depths of browser tabs. We were inspired by the concept of spaced repetition, a learning technique proven to enhance long-term memory retention, and wondered: What if we could apply this to all the content we consume online?
The inspiration struck when we realized that knowledge isn't just about individual facts—it's about the connections between concepts. Like neurons in our brain, information becomes more valuable when it's part of an interconnected web of understanding.
What We Learned
Building Revise taught us invaluable lessons across multiple domains:
Technical Growth:
- Chrome Extension Development: Mastered manifest v3, content scripts, and background service workers
- AI Integration: Implemented sophisticated prompt engineering for knowledge extraction and graph generation
- Angular Architecture: Built scalable applications using Angular's latest standalone component model
- API Design: Created robust REST APIs with proper error handling and data validation
- Email Systems: Integrated with Resend API for reliable email delivery with Handlebars templating
How We Built Our Project
Phase 1: Foundation (Chrome Extension)
- Started with Angular 19 and Chrome Extension APIs
- Implemented content extraction using Mozilla's Readability library
- Built popup and side panel components for seamless user interaction
Phase 2: Intelligence Layer (Backend API)
- Developed Node.js/Express backend with multi-LLM support (Claude, OpenAI, Gemini, Ollama)
- Created sophisticated prompt engineering for content processing
- Implemented file-based JSON storage for rapid prototyping
Phase 3: Memory System (SRS Scheduler)
- Built automated daily digest system with node-cron
- Implemented mathematical SRS algorithms for optimal review timing
- Created beautiful HTML email templates with Handlebars
Phase 4: Visualization (Web Frontend)
- Developed Angular 21 dashboard for content management
- Built interactive knowledge tree visualization
- Implemented parent-child concept mapping algorithms
Architecture Decision: We chose a three-tier architecture to maximize flexibility and user experience:
- Extension: Quick capture and immediate feedback
- Backend: AI processing and data persistence
- Frontend: Rich visualization and content management
Challenges We Faced
1. Chrome Extension Security Constraints Chrome's Content Security Policy (CSP) restricted our initial implementation. We solved this by:
- Moving AI processing to the backend
- Using message passing between content scripts and service workers
- Implementing proper CORS handling for cross-origin requests
2. Knowledge Graph Complexity Creating meaningful connections between concepts proved challenging. Our solution:
- Developed "mandatory connectivity" rules ensuring no isolated concepts
- Implemented "intermediate hubbing" to prevent star topologies
- Created depth requirements for rich, multi-level knowledge structures
3. Email Deliverability Initial email integration faced sandbox limitations. We overcame this by:
- Integrating with Resend API for reliable delivery
- Implementing proper email templates with inline CSS
- Adding comprehensive error handling and delivery tracking
4. State Management Across Components Coordinating state between extension, backend, and frontend required careful design:
- Implemented reactive RxJS patterns for Chrome storage
- Created efficient caching strategies to minimize API calls
- Built proper error boundaries and loading states
The Result: Through these challenges, we created Revise—a system that doesn't just save your content, but transforms it into lasting knowledge through intelligent connections and scientifically-backed review scheduling.
Log in or sign up for Devpost to join the conversation.