reminiscence  by kanishka-linux

Self-hosted bookmark and archive manager

created 7 years ago
1,826 stars

Top 24.2% on sourcepulse

GitHubView on GitHub
Project Summary

Reminiscence is a self-hosted bookmark and archive manager designed for users who want to preserve web content. It allows individuals to save links, archive their content in various formats (HTML, PDF, PNG), and organize them with features like automatic tagging and summarization, effectively acting as a personal Wayback Machine.

How It Works

Reminiscence leverages Python and Django for its backend, offering a web-based interface for managing bookmarks. It utilizes NLTK for automatic tagging and summarization of HTML content, employing frequency analysis of non-stopwords. For archiving, it supports multiple backends, including hlspy (based on QtWebEngine) and optionally wkhtmltopdf or headless Chromium, to generate HTML, PDF, and PNG snapshots. Background tasks for resource-intensive operations like PDF generation are handled by Celery, requiring a Redis server.

Quick Start & Requirements

  • Installation: Clone the repository, set up a Python virtual environment, install dependencies (pip install -r requirements.txt), configure settings, and run the Django development server (python manage.py runserver).
  • Prerequisites: Python 3.9+ (3.10+ recommended), virtualenv, redis-server, hlspy (via pip), PyQt5, python-pyqt5.qtwebengine. Optional: chromium.
  • Docker: git clone the repository and run sudo docker-compose up --build.
  • Documentation: Adding Directories and Links, REST API

Highlighted Details

  • Supports archiving media elements using configurable download managers (e.g., wget, youtube-dl).
  • Includes annotation and read-it-later features for HTML, PDF, and EPUB files, remembering last read positions.
  • Offers a REST API for programmatic interaction, including adding URLs, listing directories, and managing authentication.
  • Provides public, private, and group directory options for sharing bookmarks.

Maintenance & Community

The project appears to be actively maintained by kanishka-linux. Further community engagement details (e.g., Discord/Slack) are not explicitly mentioned in the README.

Licensing & Compatibility

The README does not explicitly state a license. Compatibility for commercial use or closed-source linking would require clarification on the project's license.

Limitations & Caveats

Automatic tagging and summarization use simple methods and do not support multi-word tags. The reader mode may have issues displaying pages that rely heavily on JavaScript if it's removed. The project notes potential issues with Docker configurations on certain OS versions (e.g., Ubuntu 16.04).

Health Check
Last commit

1 year ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
0
Star History
20 stars in the last 90 days

Explore Similar Projects

Feedback? Help us improve.