Continued from #343 .
Notes
Please check the open issues for an area to contribute. bukuserver has several open features requests.
The list below is a growing one. While suggesting new features please consider contributing to Buku. The code is intentionally kept simple and easy to understand with comments. We'll be happy to assist any new contributor. We need your help!
Some of the fresh-baked features may not have been released yet. Grab the master branch for those.
Cooking
None yet.
Identified tasks
auto-import from Brave Browser
amd64 docker image (will be built starting from next release)
sorting bookmarks by absence/presence of a specific tag
reordering all bookmarks in DB (based on specified sorting)
support overriding default URI scheme for browse() (@meonkeys )
include a Sec-Fetch-Mode header when fetching a webpage (in case the website admin cares about that)
source: renaming main file to buku.py (which is the name it gets installed as)
packaging: migrating from setup.py to pyproject.toml (@branchvincent)
packaging: installing the manpage into pipx venv (@branchvincent)
Python: adding v3.14, removing v3.9
API: improved BukuCrypt
Bukuserver: Swagger-based interactive documentation for the web-API
Bukuserver: option to change initial value of Fetch checkbox in Create Bookmark form
Bukuserver: migrate from Bootstrap v3 to v4
migrate to the upcoming flask-admin v2 (see support the incoming v2.0 release of flask-admin #753 )
support offline bookmark addition
support gemini protocol
support archive.is
bukuserver: disable favicon by default
bukuserver: bookmarklet documentation (see Bookmarklet #385 )
bukuserver: thumbnail
bukuserver: add login feature (see Security features in bukuserver #309 )
bukuserver: generate separate package (see Package bukuserver #307 )
Import keywords from browser html (see Support for "real" keyword searches #311 )
Android app (with the same schema) (probably a separate project)
Add option --preserve to ignore specific fields during auto-update [see issue Preserve some preexising data during update operation #327 ]
support Vivaldi browser
better XBEL compatibility
check for empty search results in piped operations
Test cases for exportdb() API (@rachmadaniHaryono )
Purge db file when all records are deleted
Fix tests, which are taking long time to finish (thanks @rachmadaniHaryono )
Import firefox exported json (title, url, tags, desc; parent folder if opted) [see API importdb()] (thanks @ckolumbus )
Disable fetch from web during auto-import, import and merge
Honor -n with -p (thanks @jpdasma )
Support search options with --export
Import "description" (into description field) and "keywards" (as tags) from HTML <meta> Tag
Result pagination
Convert bukuserver README from rst to markdown
Browse a bookmark (possibly dead URL) on Wayback machine
Show bookmarks to be deleted before deletion
Support keyword filtering (records having keywords a and b but not c and d) (thanks @saltyCatfish )
Support filtering by tags with search options (see Searching for tags and keywords #250 ) (thanks @saltyCatfish )
Port feature from googler/ddgr - omniprompt key O
Show results with most search keyword matches on top (thanks @mosegontar )
Text-mode user agent for Buku
Copy search result URL to cipboard
Read default Firefox profile name from profiles.ini (see Firefox auto-import breaks if profile name does not end with .default #212 , thanks @alex-bender )
Support --format in search results (ref , thanks @mosegontar )
API documentation (comments need to be in NumPy format) (thanks @mosegontar )
Auto-import: optionally add parent folder name as tag, ask for unique tag [like importdb()]
Support custom colours (thanks @shv-q3 )
Generate packages on Travis-CI using PackageCore (see Generate packages using PackageCore and Travis CI #189 ) (thanks @shaggytwodope)
Search multiple tags, exclusion in tag search (thanks @mosegontar )
Auto-import Firefox and Google Chrome bookmarks (thanks @alex-bender )
Suggest tags those go together
Append/overwrite/remove tags from prompt
Add more tests (ongoing activity @rachmadaniHaryono )
A browser plugin (thanks @samhh for bukubrow )
Text editor support (thanks @ZwodahS )
Need a PyPI maintainer (thanks @shaggytwodope)
Make refreshdb faster using threads (record updates should be synchronized)
Show usage count in tag list
Proxy support (thanks @denisfalqueto )
Continuous search at prompt
Add prompt help
Specify custom DB file to class BukuDb (library usage, no exposed option)
Move to urllib3
Handle redirects using referrer masking . Example URL . Fixed with urllib3.
Support URL shortening. This helps to share URLs. (see Support adding shortened URLs to the database #92 for limitations)
Make a bookmark title immutable via refreshdb()
Markdown import/export
Regex search
Ubuntu PPA (thanks @shaggytwodope)
Export specific tags to HTML
Exact word match using REGEX. Make substring match optional.
Delete all records based on a search result
Delete multiple items, support combination of indices and ranges
Append tags
Travis CI integration
Ubuntu deb package generation on new tag
Merge bookmark database files (for users who work on multiple systems)
Export bookmarks in FF or Chrome html format.
Option to add folder names as tags while importing HTML (thanks @Mohammadkhalifa )
Check and show upstream version
Anything else which would add value (please discuss in this thread)
Continued from #343.
Notes
Please check the open issues for an area to contribute.
bukuserverhas several open features requests.The list below is a growing one. While suggesting new features please consider contributing to
Buku. The code is intentionally kept simple and easy to understand with comments. We'll be happy to assist any new contributor. We need your help!Some of the fresh-baked features may not have been released yet. Grab the master branch for those.
Cooking
None yet.
Identified tasks
amd64docker image (will be built starting from next release)browse()(@meonkeys)Sec-Fetch-Modeheader when fetching a webpage (in case the website admin cares about that)buku.py(which is the name it gets installed as)setup.pytopyproject.toml(@branchvincent)pipxvenv (@branchvincent)--preserveto ignore specific fields during auto-update [see issue Preserve some preexising data during update operation #327]exportdb()API (@rachmadaniHaryono)importdb()] (thanks @ckolumbus)-nwith-p(thanks @jpdasma)--exportHTML <meta> Tagaandbbut notcandd) (thanks @saltyCatfish)googler/ddgr- omniprompt keyOprofiles.ini(see Firefox auto-import breaks if profile name does not end with .default #212, thanks @alex-bender)--formatin search results (ref, thanks @mosegontar)importdb()]