Skip to content
Ferrin-YPublic

About

Smart Bookmark helper

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

Β 

History

20 Commits

Folders and files

Repository files navigation

Glean - AI-Powered Bookmark Manager

🎯 Overview

Glean is a modern, intelligent bookmark management application that transforms the way you save and organize web content. Unlike traditional bookmark managers that become cluttered black holes of forgotten links, Glean uses AI to automatically categorize, summarize, and help you rediscover your saved content.

The Problem: Most people save hundreds of bookmarks but rarely find them again. Traditional bookmark managers lack smart organization, search capabilities, and content understanding.

The Solution: Glean combines AI-powered analysis, full-text search, and smart collections to make your bookmarks actually useful.

✨ Key Features

Implemented Features

πŸ€– AI-Powered Intelligence

  • Automatic Tagging: AI analyzes content and generates relevant tags (e.g., "javascript", "tutorial", "devops")
  • Smart Summarization: Creates concise 2-3 sentence summaries of saved articles
  • Entity Extraction: Identifies people, places, and topics mentioned in content
  • Sentiment Analysis: Detects positive, negative, or neutral sentiment

πŸ” Smart Search

  • Full-Text Search: Search through titles, descriptions, and page content
  • Tag-Based Search: Find bookmarks by AI-generated or manual tags
  • Domain Filtering: Filter by website domain
  • Real-Time Results: Instant search results as you type

πŸ“ Collections

  • Manual Collections: Organize bookmarks into custom folders with emojis
  • Multi-Collection Support: One bookmark can exist in multiple collections
  • Bulk Operations: Add multiple bookmarks to collections at once
  • Collection Statistics: Track bookmark counts per collection

πŸ“Š Metadata Extraction

  • Rich Previews: Automatically extracts titles, descriptions, and Open Graph images
  • Favicon Display: Shows website icons for visual recognition
  • Screenshot Thumbnails: Captures preview images from web pages
  • Reading Time Estimation: Calculates approximate reading time

πŸ” Authentication & Security

  • Supabase Auth: Secure email/password authentication
  • Row-Level Security: Users can only see their own bookmarks
  • Session Management: Persistent login sessions with JWT tokens

🎨 Modern UI/UX

  • Responsive Design: Works seamlessly on desktop, tablet, and mobile
  • Dark Mode Support: Eye-friendly dark theme
  • Grid/List Views: Flexible bookmark display options
  • Real-Time Updates: Instant UI updates without page refreshes

πŸš€ Upcoming Features

Phase 1: Enhanced Collections (In Progress)

  • Remove from Collection: Delete bookmarks from collections without deleting them entirely
  • Edit Collections: Rename, change icons, and update descriptions
  • Delete Collections: Remove collections (keeps bookmarks intact)
  • Quick Add: Add to collection directly from bookmark cards

Phase 2: Semantic Search (Next)

  • Vector Embeddings: Generate embeddings for semantic understanding
  • Meaning-Based Search: Find "CI/CD automation" even if bookmarks say "GitHub Actions"
  • Similar Bookmarks: Discover related content based on semantic similarity
  • Advanced Filtering: Combine semantic search with tags and date ranges

Phase 3: Browser Extension

  • One-Click Save: Bookmark current page with keyboard shortcut
  • Context Menu: Right-click to save any link
  • Auto-Metadata: Automatically extracts page metadata
  • Collection Selection: Choose collection during save
  • Chrome & Firefox: Support for major browsers

Phase 4: Smart Features

  • Smart Collections: Auto-populated collections based on rules (e.g., "All JavaScript tutorials")
  • Weekly Digest: Email summary of bookmarks to revisit
  • Duplicate Detection: Identify and merge duplicate bookmarks
  • Content Archiving: Save full page HTML for offline access
  • Highlights & Notes: Annotate bookmarks with personal notes

Phase 5: Collaboration & Sharing

  • Public Collections: Share curated collections with others
  • Export Options: Export to JSON, CSV, HTML, or browser formats
  • Import Tools: Import from Pocket, Raindrop, browser bookmarks
  • Team Workspaces: Shared collections for teams

Phase 6: Advanced Analytics

  • Usage Insights: Track most-accessed bookmarks and reading patterns
  • Tag Cloud: Visualize your most common topics
  • Timeline View: See bookmarks organized by date
  • Domain Statistics: Identify your most-bookmarked sources

πŸ› οΈ Tech Stack

Frontend

  • Next.js 16: React framework with App Router and Server Components
  • TypeScript: Type-safe development
  • Tailwind CSS: Utility-first styling with dark mode
  • Lucide Icons: Modern, clean iconography
  • React Query: Server state management (planned)

Backend

  • Next.js API Routes: Serverless API endpoints
  • Supabase: PostgreSQL database with real-time subscriptions
  • Row-Level Security: Database-level access control
  • Edge Functions: Fast, globally distributed API responses

AI & Search

  • Groq (Llama 3.3): Free, fast AI inference for content analysis
  • Cheerio: HTML parsing for metadata extraction
  • PostgreSQL Full-Text Search: Built-in search capabilities
  • pgvector: Vector similarity search (planned for semantic search)

DevOps

  • Vercel: Frontend deployment with automatic previews
  • Supabase Cloud: Managed PostgreSQL database
  • Git: Version control with conventional commits
  • GitHub: Code hosting and collaboration

πŸ“‹ Database Schema

Core Tables

  • bookmarks: URL, title, description, content, metadata, embeddings
  • tags: User tags with auto-generation flag
  • collections: User-created folders for organization
  • ai_insights: AI-generated summaries, tags, entities, sentiment
  • users: Authentication and user profiles (Supabase Auth)

Junction Tables

  • bookmark_tags: Many-to-many relationship between bookmarks and tags
  • bookmark_collections: Many-to-many relationship between bookmarks and collections
  • highlights: User annotations on bookmarks (planned)

Indexes

  • Full-text search indexes on title, description, content
  • Vector similarity index for semantic search (pgvector)
  • B-tree indexes on user_id, domain, created_at

🎯 Architecture Decisions

Why Next.js?

  • Server and client components for optimal performance
  • Built-in API routes eliminate need for separate backend
  • Excellent TypeScript support and developer experience
  • Easy deployment with Vercel

Why Supabase?

  • PostgreSQL with pgvector for semantic search
  • Built-in authentication and RLS
  • Real-time subscriptions for live updates
  • Generous free tier for development

Why Groq?

  • Completely free with generous rate limits
  • 10x faster than OpenAI for similar quality
  • Uses open-source Llama models
  • Simple OpenAI-compatible API

Why Tailwind CSS?

  • Rapid UI development without context switching
  • Built-in dark mode support
  • Tiny production bundle size
  • Excellent mobile-first responsive design

🚦 Project Status

Current Phase: Phase 4 - Collections & Organization (80% complete)

Completed:

  • βœ… Authentication & user management
  • βœ… Bookmark CRUD operations
  • βœ… Metadata extraction
  • βœ… AI auto-tagging & summarization
  • βœ… Full-text search
  • βœ… Collections creation & viewing
  • βœ… Add bookmarks to collections

In Progress:

  • πŸ”„ Collection management (edit/delete)
  • πŸ”„ Remove from collection
  • πŸ”„ Quick add to collection from cards

Next Up:

  • ⏭️ Semantic search with embeddings
  • ⏭️ Browser extension
  • ⏭️ Smart collections with rules

πŸ’‘ Future Enhancements

AI Features

  • Content Recommendations: Suggest bookmarks based on reading patterns
  • Auto-Categorization: Smart folder suggestions
  • Reading List Optimization: Prioritize bookmarks by relevance
  • Trend Detection: Identify emerging topics in your bookmarks

Productivity Features

  • Read Later Queue: Dedicated reading list with progress tracking
  • Keyboard Shortcuts: Power-user navigation
  • Bulk Actions: Edit multiple bookmarks at once
  • Quick Capture: Mobile app for instant bookmarking

Integration Features

  • Zapier/Make Integration: Automate bookmark workflows
  • RSS Feed Import: Auto-save from feeds
  • Email to Bookmark: Forward emails to create bookmarks
  • API Access: Build custom integrations

πŸŽ“ Learning Outcomes

This project demonstrates proficiency in:

  • Full-Stack Development: Building complete features from database to UI
  • Modern React Patterns: Server Components, async components, client hooks
  • Database Design: Normalized schemas, indexes, RLS policies
  • AI Integration: Practical application of LLMs for content analysis
  • API Design: RESTful endpoints with proper error handling
  • TypeScript: Type-safe development across frontend and backend
  • Authentication: Secure user management with JWT
  • Search Implementation: Full-text and semantic search techniques
  • Performance Optimization: Server-side rendering, efficient queries
  • UI/UX Design: Responsive, accessible, modern interfaces

πŸ“ˆ Metrics & Goals

Performance Targets

  • Search response time: < 200ms
  • Page load time: < 1s
  • AI analysis: < 5s per bookmark
  • 99.9% uptime

User Experience Goals

  • Onboarding: < 2 minutes to first bookmark
  • Search accuracy: > 95% relevant results
  • Mobile usability: Fully functional on all devices
  • Accessibility: WCAG 2.1 AA compliance

πŸ“ License

MIT License - See LICENSE file for details


πŸ‘¨β€πŸ’» Author

Built by Ferrin as a portfolio project showcasing modern web development practices and AI integration.

About

Smart Bookmark helper

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages