|
![]() |
|
Thread Tools | Search this Thread |
![]() |
#31 |
Junior Member
![]() Posts: 3
Karma: 10
Join Date: Sep 2019
Device: Kobo Aura
|
Hello guys,
I am João and I am the developer of Kobonotes together with Francisco. Just a little story, Francisco some years ago decided to create a web app also called Kobonotes to help kobo users extract their highlights and annotations. Unfortunately the website was discontinued. Some months ago, during a lunch, we talked about it and both of us decided to make a better version of the old Kobonotes app (I wanted to develop skills on some Front-End and Back-End technologies and this seemed to be an excellent project with something useful and helpful for some people!). Therefore, we started implementing a new version of Kobonotes. We took into consideration some aspects that really needed to be improved from the old app, especially that we wanted to focus hard that the data should stay as much as possible on the client, and we, Kobonotes, must only store and have access only to the data that is needed in order to present the notes to the users. With some research we noticed that websites such as https://sqliteonline.com/ do the job that we were searching for! You import a sqlite database and you can query it just with the browser! So it is possible to keep the data on the client. With just some deep search voila... tribute to https://github.com/kripken/emscripten/issues/5820 that developed a javascript library capable of accessing a sqlite database and query the data all in the browser! Using this library we run the following query (when you upload your sqlite on Kobonotes): "SELECT Bookmark.BookmarkID ,Bookmark.DateCreated ,Bookmark.Text ,Bookmark.Annotation ,content.Title ,content.Attribution ,Bookmark.ExtraAnnotationData ,Bookmark.DateModified FROM Bookmark Inner join content on content.ContentID = Bookmark.VolumeID where Bookmark.text is not null and Bookmark.Annotation is not null and length(Bookmark.Annotation) > 0 order by content.Title, Bookmark.DateCreated asc" So this query runs on your browser and we only store on our database the results of this query! Our server only accesses this information and stores it that's it, all the rest is yours and only yours. (Btw: You can test it on your Chrome Network tab that only this data is uploaded to the server when you load the sqlite) I hope this can help you understand how our app works a little with some more detail. In the future I can develop a simple version of this and make it available on github so you can use it for whatever you want. All the best, João |
![]() |
![]() |
![]() |
#32 |
Junior Member
![]() Posts: 3
Karma: 10
Join Date: Sep 2019
Device: Kobo Aura
|
Sorry the link for the javascript Library that is used to query the sqlite on Kobonotes is https://github.com/kripken/sql.js
|
![]() |
![]() |
Advert | |
|
![]() |
#33 | |
Grand Sorcerer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 24,905
Karma: 47303822
Join Date: Jul 2011
Location: Sydney, Australia
Device: Kobo:Touch,Glo, AuraH2O, GloHD,AuraONE, ClaraHD, Libra H2O; tolinoepos
|
Quote:
And there are still concerns. You are running code over the database. Which means you have access to everything in it. Sending some extra data wouldn't be hard to do. |
|
![]() |
![]() |
![]() |
#34 |
the rook, bossing Never.
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 12,138
Karma: 89201339
Join Date: Jun 2017
Location: Ireland
Device: All 4 Kinds: epub eink, Kindle, android eink, NxtPaper11
|
I'm with davidfor on this.
Also I'd actually block any javascript that can access any database or file via my browser. By default, for security, ALL 3rd party scripts are blocked using uMatrix. |
![]() |
![]() |
![]() |
#35 | |
Member
![]() Posts: 18
Karma: 10
Join Date: Jul 2016
Location: Portugal
Device: Kobo Aura
|
Quote:
You're right about it being easy to access everything in the database, although there's no much there to see. Nevertheless, our intentions are nothing but good, and our query is exactly as my coleague joaomcoelho posted. |
|
![]() |
![]() |
Advert | |
|
![]() |
#36 | ||
Grand Sorcerer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 24,905
Karma: 47303822
Join Date: Jul 2011
Location: Sydney, Australia
Device: Kobo:Touch,Glo, AuraH2O, GloHD,AuraONE, ClaraHD, Libra H2O; tolinoepos
|
Quote:
And while I cannot prove it, I am pretty sure you have rewritten the FAQ since your announcement of this version. I remember looking at it and didn't see anything that made me think you were handling the database any differently than from before. But, maybe that is because you still have have an FAQ entry titled, "Is it safe to upload my Kobo .sqlite file to Kobonotes? How will you use my data?" That sure sounds like the database is sent to your site. Personally, you need a simple privacy statement. It's sort of mentioned in a couple of places, but it isn't obvious. One thing though. I did take time to read more of the FAQ. Under "What is the difference between this application and others?", you state: Quote:
|
||
![]() |
![]() |
![]() |
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
Ereader to sync (read position, highlights etc) sideloaded books with Android app ? | cd2013 | Which one should I buy? | 14 | 02-28-2019 11:11 AM |
Synchronization of notes for sideloaded books | Buhaj47 | Amazon Kindle | 10 | 10-05-2017 05:38 PM |
Highlights sync of sideloaded books | bruce_wayne | Which one should I buy? | 1 | 12-20-2016 06:15 PM |
Syncing highlights and notes from sideloaded files accross devices. | JJAH | Kindle Developer's Corner | 6 | 03-07-2015 10:25 PM |
Syncing bookmarks, highlights and last page read for sideloaded books | polbit | Amazon Kindle | 2 | 07-30-2010 12:16 PM |