ark-builders / ark-shelf Goto Github PK
View Code? Open in Web Editor NEWARK Shelf is where you put your bookmarks during your web surfing. Android version.
License: MIT License
ARK Shelf is where you put your bookmarks during your web surfing. Android version.
License: MIT License
Implementing a tag extraction mechanism based on the domain of a link could significantly improve user experience. For instance, if a user saves links like https://youtube.com/watch?v=123 or https://youtube.com/watch?v=qwe, the system could automatically label the links using youtube
tag.
We could initially implement this feature within the application, transitioning it into the library later.
Similar issues in Navigator:
Links in the list must display attached tags.
The app crashes and can't start.
Would be nice to be able to label new link (when we handle Share intent) with some tags.
This setting must be configurable in Settings screen.
Default values for the preference:
Also, would be great to implement manual sending of current log.
Since, we have same feature in Navigator (see ARK-Builders/ARK-Navigator@cf38b61 and ARK-Builders/ARK-Navigator#78), it would be great to extract common functionality into tiny lib. We would inject such a lib into all of our apps.
When the app is launched normally (not using Share intent) it should display all links stored in the configured folder.
The links should be organized as list, where each row has:
[open]
which opens the link in a browser.[share]
which sends the link to destination of choice.[copy]
which copies the link into copy/paste buffer.If a row is clicked, the description should unfold and preview should become larger.
Preview/thumbnail idea can be used, the same as in ARK Navigator.
The app should filter links with the same Id.
Happened when I tried to add link https://www.dcode.fr/exif-thumbnail
Let's use shared component: https://github.com/ARK-Builders/ark-filepicker
If filepicker in this repo has some extra functionality, it must be incorporated into the shared repo.
The same in Desktop version:
ARK-Builders/ARK-Shelf-Desktop#4
The best would be to solve it in arklib
and inject it into the app:
The APK was ~ 6MB before we introduced arklib
into the project:
https://github.com/ARK-Builders/ARK-Shelf/actions/runs/2711988751
Now it is 50MB:
https://github.com/ARK-Builders/ARK-Shelf/actions/runs/2905621288
I think we can do the same split build as in ARK Navigator.
See the list of improvements from UX team:
https://www.notion.so/ark-builders/Improvements-34e2da0f5f29413b9316c2dcd941d0bb
It should be possible to work with URLs using the app.
This allows a user to use our app as bookmarks keeper.
Open questions:
Storage format. The easiest way is to save every URL into HTML file.
Batching links into one file-database per root/favorite might be more efficient, especially for indexing.
Reading of Firefox/Chrome export files (XML).
Should we convert those files into our format or just adapt to them?
User should get input box highlighted when they paste URL which is already among saved links. Attempt to save such a link should result in an error message, or edit dialog spawned with older version of the link.
Links must be possible to filter by one or several tags similar to how tag selector is implemented in https://github.com/ARK-Builders/ARK-Navigator/
ARK Shelf must be able to save URLs into a folder (should be able to set default folder in settings).
The format is flexible. It can be JSON containing URL, description and maybe other metadata.
The easiest way to enable previews for stored links is to download image using OGP and store it into ZIP archive together with the JSON. Later, when the library will be ready, the app will be able to generate previews directly into necessary folder. Right now, it is supposed to extract the image from ZIP during indexing and saving it as preview (this is sub-optimal due to duplication, but fine for Proof-of-Concept).
ARK Shelf must be able to add link manually by pressing some button or receive sharing intent with URL. Dialogue should be displayed with default description and folder which are possible to be modified by user. Folder picker might be taken from ARK Retouch or from ARK Navigator (we should consider separating folder picker into re-usable repo).
ARK Navigator should be able to process saved files (see #37).
Suppose, a user is sharing some link from web browser in ARK Shelf.
Right now, the link is previewed to the user, then the user clicks [save]
button and empty input box is presented to her. The user must be brought back to web browser, so she could continue surfing.
Also, after a while, app instances pile up in background. Maybe we should limit amount of instances to just 1.
User must be able to remove any link from the list and the corresponding file from the folder.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.