/historian

Historian is a clipboard app for Linux desktop developed using Flutter

Primary LanguageDartGNU General Public License v3.0GPL-3.0

Historian - A Clipboard Manager For Linux

Historian is a clipboard manager designed for Linux, built with Flutter. It provides an intuitive user interface and powerful features to manage clipboard history efficiently.

Installation

Clone the repository using the following command:

git clone https://github.com/iamkartiknayak/Flutter_Historian.git

Rename the project directory before running flutter commands

mv Flutter_Historian historian

Navigate to the project directory:

cd historian
flutter pub get

Run the application:

flutter run

Features Working on

  • Native Text Clipboard Listener: Replace dart clipboard listener with wl-clipboard-rs & x11-clipboard. [BUG: Dart clipboard listener doesn't work in wayland unless app is focused right after copy].
  • Image support: Support for images.
  • Code Highlighting: Supports syntax highlighting for code snippets.
  • GIF: Support for GIF, Search & copy GIF to clipboard to be pasted in supported docx.
  • Filters: Dynamic filters appear at the top based on copied content types, such as text, images, code or GIFs.

Features Developed

1. Clipboard Tab

  • Clipboard History: Displays a list of items copied to the clipboard.

  • Quick Copy: Clicking on an item instantly copies it to the clipboard.

  • Pin/Unpin Items: Pin important items to prevent them from being cleared.

  • Delete & Undo: Remove items with the option to undo.

  • Clear Clipboard: Remove all unpinned items.

  • Web Search: Copied links will be auto detected & can be launched directly.

  • Keyboard Shortcuts:

    • arrow-up /-down: Navigate through clipboard items. Selected item is highlighted.
    • Ctrl+C: Copies the currently selected item to the clipboard.
    • Ctrl+D: Deletes the currently selected item.
    • Ctrl+S: Saves the currently selected image item.
    • Ctrl+P: Toggles the pin status of the selected item.
    • Ctrl+U: Undoes the last delete action, restoring the most recently deleted item.
    • Ctrl+L: Clear all unpinned items in clipboard.

2. Emoji Tab

  • Category Tabbar: Browse emojis by category, with options for search and recents.
  • Searchbar: Search for the required emoji using the searchbar at the top.
  • Quick Copy: Clicking on an emoji copies it to the clipboard.
  • Keyboard Shortcut:
    • Ctrl+S: Toggles the visibility of the searchbar.

3. Emoticon Tab

  • Searchbar: Search for the required emoticon using the searchbar at the top.
  • Quick Copy: Clicking on an emoticon copies it to the clipboard.
  • Keyboard Shortcut:
    • Ctrl+S: Toggles the visibility of the searchbar.

Settings

Access the settings page through the settings button, offering various customization and control options:

  • Clipboard Settings:

    • Enable or disable clipboard monitoring (pause & resume).
    • Adjust clipboard size (5-30) for optimized memory usage.
  • Emojis & Emoticons:

    • Clear recents in Emoji & Emoticon
    • Emoji Skin Tone
  • Personalization Settings:

    • Customize the app theme color.
    • Modify border radius for UI components.
    • Enable accent colors on the app background with custom values for a more personalized experience.

All configurations are saved and automatically loaded on the next app launch.

App Tray

Historian app continue running in the bg while showing a tray icon for quick access and controls:

  • Show/Hide Window: Easily toggle the app window visibility.
  • Pause/Resume Clipboard: Enable or disable clipboard monitoring directly from the tray.
  • Status Indicator: The tray icon changes to indicate whether clipboard is listening or paused.

Screenshots

Example Image    Example Image    Example Image    Example Image

License

This project is licensed under the GPL3 License.

Acknowledgements

The development of this app was made possible by the Flutter community's extensive resources. Special thanks to all those who contribute to the Flutter framework and its ecosystem.

Stay healthy and enjoy using the Historian app!