Welcome to the bookmarx wiki!
Project Plan:
Write my own Bookmark program in Clojure/Script with Reagent in the browser and Redis on the backend. Users are authenticated and receive JWT tokens. Bookmarks are cached on the browser using local storage.
There are to seven pages:
- Login page - Authenticates the user.
- Home Bookmarks page - Navigates the bookmarks
- Add Bookmark page - Adds or edits a bookmark
- Select Folder page - Selects a folder for an add or move
- Select Icon page - Selects and icon and icon color for a link.
- Search Bookmarks page - Lists bookmarks from a search
- Settings page - Allows settings to be specified
Design Changes:
- I jettisoned Om Next because there were too many breaking changes in its alpha development state, and because it is currently conceptually flawed in not allowing for both local state management and multiple pages. I spent way too much time futzing with it! (Mar. '16)
- I replaced Datomic with Redis because technically, I didn't really need Datomic. Redis is light weight and has asynchronous storage capabilities. I was using Datomic more for the learning experience. Also GPG was an annoyance. (Nov. ’16)
Bugs:
[ ] Latest version (1.9.493) of ClojureScript breaks the UI where it opens with blank page. (3/30/17)
Enhancements:
[ ] Field validations when adding bookmarks, e.g. duplicate URLs.
[ ] Refresh bookmarks periodically.
Optional:
[ ] Able to bookmark particular folders (and searches?)
[ ] Persist current menu in cookie
[ ] Export to browser
[ ] Import browser bookmarks
[ ] Enter on home page presses the search button (preferably only if a value has been entered)
[ ] View visit history
[ ] Enable Back button (use HTML5 history)
[ ] Multiple Users
[ ] Persist last search results in cookie (or "server-side keys”?)
[ ] Check for stale links (periodically?) and label them
[ ] Drag and drop links
[ ] Drag and drop folders