giuspen / cherrytree

cherrytree
https://www.giuspen.net/cherrytree/
Other
3.42k stars 464 forks source link

CherryTree for Android. #328

Open ForumLiker opened 6 years ago

ForumLiker commented 6 years ago

Are you planning to make an application for android? That my notes are always with me.

giuspen commented 6 years ago

It is in the plans but cannot be shortly because the first goal is porting to gtkmm3 sins current pygtk2 is dead

ForumLiker commented 6 years ago

Maybe it's worth starting, and somebody will help in this)

harsxv commented 5 years ago

will wait for the Android version :smile:

jakeson commented 4 years ago

Kinda stoked about this, Any updates? I wish I had the skill to donate to this project.

giuspen commented 4 years ago

Hi @jakeson this will raise in priority after the C++/Gtkmm3 is out and stabilised replacing the current Pygtk2

poleguy commented 4 years ago

I'm interested in helping port, code, design cherrytree for android. I understand it is not going to be a priority until the C++ port is farther along, but is there any way I can start to help out? Is there any groundwork or research needed to be done here? Or any way I can help on the C++ side to get that done faster so that I can get the android bit going? I'm competent in python, c++, gui, android, java, linux, etc. If I'm just a distraction right now, I understand as well, just let me know whenever you think I can help.

giuspen commented 4 years ago

Hi @poleguy at the moment the biggest help is in testing the C++ version and fix the issues you find (a couple already reported) but if that is of no interest at all surely you can start an hello world project in android studio capable of reading the cherrytree documents and just displaying the tree, that would have been my first step.

poleguy commented 4 years ago

Okay. I will start both c++ testing and an android tree reader. Hopefully my next posts are a bug report and a hello world commit. :-)

bettencb commented 4 years ago

I've been completely and totally obsessed with cherry tree since the very first time I downloaded it! If there was an android version released it would slayyy!!! Flutter might be a good option to get cherry tree working easily in multiple frameworks?

13werwolf13 commented 4 years ago

I'm not a developer (I'm a devops/sysadmin), but I'm interested and willing to help. If I can help you, then I'm ready!

giuspen commented 4 years ago

@13werwolf13 the best way to help at the moment is testing the Gtkmm3 version, reporting issues compared to the Pygtk2 version and possibly try and fix yourself the issues and submit small surgical pull requests

poleguy commented 3 years ago

Status update. Following giuspen's advice, I have been using the latest development version on two ubuntu 20.04 laptops and a CentOS 7 desktop. So I'm doing some informal and uncontrolled real-world usage testing. I sync using syncthing, so I have been exercising the 'auto update on change' feature.

I recently created a basic app and am successfully parsing cherrytree XML. I always use ctd rather than the other formats, so I'm working on that first. Maybe that's a mistake, but I figure the first version of this will be a throw-away and I can refactor when I learn what I've done wrong. :-) I'll publish the code once it is able to display a basic tree nicely.

metal450 commented 3 years ago

Amazingly exciting :)

For what it's worth, I believe sqlite is used more often than xml, as it's far more performant, especially with large documents.

poleguy commented 3 years ago

Yes, I figured that sqlite was standard, which was why I mentioned it: so nobody sets the wrong expectation. It's a detail anyway, and can be added in due time.

giuspen commented 3 years ago

XML is simpler so the best to start with

ghost commented 3 years ago

Amazing to see work begun on the Android version! I've long wanted to be able to sync my (encrypted) CT file between desktop and phone with Syncthing. I've given up trying to replace CherryTree with another cross-platform option, none i tried come close to the friendly UX and features. Thanks to everyone contributing!

poleguy commented 3 years ago

Positive result reporting: I am able to parse and display the tree correctly on android. It's not yet really useful to me/anyone until it also displays some content, but I've completed the "first step" that giuspen suggested in May.

Negative result reporting: I have also been building and testing the C++ version, but have not reported any bugs because my use case is very basic and the basic functionality seems to work fine.

I'll probably put this version up on github under my account soon. I'm happy to have others review it even at this early stage, as I'm a rusty android hack... but expect it to change/refactor significantly. Any reviews/comments at this point should keep in mind this is very early on and lots of things (UI, layout, colors, extra options, etc.) are just roughed in or left over from example code I started from.

image

poleguy commented 3 years ago

I copied cherrytree license, added a readme, and posted it. https://github.com/poleguy/cherrybud

giuspen commented 3 years ago

Cool

basimaslamts commented 3 years ago

May be I can help testing

poleguy commented 3 years ago

@basimaslamts sure, it's very early, but yes, please test. How can I help get you going? Everything is posted: Can you build yourself? Do you need an apk? I just posted a public email on my profile you can use to reach me.

Update: I just added rendering of the text in nodes. This app is now useful for my use case, which is basic view of text on android. (Not polished, but minimally useful.)

image

poleguy commented 3 years ago

I just payed google $25 to set up an account and..:-( I have released an apk of my very early cherrytree viewer code to google play.

I've never done an app on google play, so this is all new to me. I set it up for open testing... I'm not sure how that goes.

It says it is "Being Reviewed" I'm not sure if that means days, weeks or months... :-)

Presumably it'll show up on google play and I can then find a link to drop in this issue.

poleguy commented 3 years ago

@giuspen I'm interested in basing my icons on cherrytree. I'm not a lawyer, and I'm not sure about copyright issues, so I thought I'd ask permission before adding the images to my repo. Is that okay with you?

Obviously my code is open source, but I anticipate releasing both a free and paid version to google play to give people a way to pay me for my efforts if they are so inclined. Both paid/free versions will have the same features. I know there are many different opinions about free open source software, and thought I'd let you know what I was considering doing first to see how you felt about that. Let me know. Obviously this app exists only because of cherrytree, so if you have strong opinions about monetization I'd like to know them.

basimaslamts commented 3 years ago

I just payed google $25 to set up an account and..:-( I have released an apk of my very early cherrytree viewer code to google play.

I've never done an app on google play, so this is all new to me. I set it up for open testing... I'm not sure how that goes.

It says it is "Being Reviewed" I'm not sure if that means days, weeks or months... :-)

Presumably it'll show up on google play and I can then find a link to drop in this issue.

Let know when it appears. ALSO bring a new para in md file in the repo regarding android version for further development and bug reports. I'll mail you for the apk soon

13werwolf13 commented 3 years ago

I just payed google $25 to set up an account and..:-( I have released an apk of my very early cherrytree viewer code to google play.

I've never done an app on google play, so this is all new to me. I set it up for open testing... I'm not sure how that goes.

It says it is "Being Reviewed" I'm not sure if that means days, weeks or months... :-)

Presumably it'll show up on google play and I can then find a link to drop in this issue.

for a start, you can give your best to the f-droid, you can even raise your repo for it (I can provide a VPS for such a thing)

giuspen commented 3 years ago

@poleguy don't worry I have no strong opinions :) I do not own the copyright for the svg icons, most of those come from the gtk stock, some of those modified... I don't see any issue with you copying to your repo

poleguy commented 3 years ago

Please do initial alpha testing using this apk. Or wait for google, or build it yourself depending on your level of paranoia. :-) http://poleguy.com/cherrybud_v1.0.apk

Submit bug reports here: https://github.com/poleguy/cherrybud/issues

I feel google is way too slow for approval to wait on them to do alpha testing.

@giuspen that's funny you have no strong opinions, as I have no toes, so they can't be stepped on. It's very convenient. :-) I'll continue as time allows.

admirabilis commented 3 years ago

I see it supports ctd files only. Aren't ctb the default?

poleguy commented 3 years ago

Please read through all the comments on this https://github.com/giuspen/cherrytree/issues/328 issue carefully to find the answer. :-)

kiwidoggie commented 3 years ago

Thanks for this, following the thread and if there is anything I see that I can tackle quickly I'll try :)

metal450 commented 3 years ago

Re-saved my cdb as ctd, tried Open File->select the ctd. It appeared to do nothing for maybe 10sec (i.e. while showing the main screen with the 2 buttons), then crashed. My ctd is pretty large, if that's relevant (360mb).

Perhaps a load progress indicator showing an indication of the steps its taking (or log) to debug where it crashes?

poleguy commented 3 years ago

@metal450 I have not tested large files. The largest file I've tried is only 1.5MB. Can you export a small section of your file and confirm that it works okay on your device? I created an issue to track this. Congratulations, you're the first bug report! https://github.com/poleguy/cherrybud/issues/1

I can create some big files and test. It tries to load the whole file, and isn't being smart about it at all, so it possibly is running out of memory.

Please, everyone, post any new issues with the cherrybud viewer on the cherrybud repo, not here. Thanks.

admirabilis commented 3 years ago

Just a heads up, this is something I had noticed years ago: ctd files use a lot more RAM than ctb in CherryTree. 3.5 times more in a test I just did.

I loaded the ctd in Cherrybud and it loaded fine. All formatting is removed from the text, including hyperlinks, and a weird amount of newlines get inserted instead. But I hadn't problems viewing any nodes or subnodes, which I have thousands, but all in RTF/source code (no attachments).

A good start would be remembering the last loaded file. I'll report it there.

doskey321 commented 2 years ago

What possibly could be a reason for the 349,99 € price tag for cherrybud on the developmental version on Googleplay? Seriously?

giuspen commented 2 years ago

@doskey321 that has nothing to do with me

doskey321 commented 2 years ago

@doskey321 that has nothing to do with me

I know! Sorry If that was not clear. I Just wondered about possible reasons for poleguy, because it does seem quite excessive.

ItsIgnacioPortal commented 2 years ago

Its probably so no one actually downloads it until development is complete

giuspen commented 2 years ago

Please @poleguy make it clear that it is not the official cherrytree android development, as I would never ask money for people to use my open source work

poleguy commented 2 years ago

Sorry for the confusion... I thought I added an explanation for the high price, but I guess it isn't showing up clearly or at all on Google play. I'll check, and I'll fix it next time I get back to this. I certainly feel bad to have giuspen on my case about this. My bad.

My intent was to just set up a Google play account and get it on to the play store to work through that process. It's all open source code and the latest apk is also linked for download from git hub, so feel free to install and test out what we have so far. No charge.

Until it is functional in some basic way, I don't want people getting a stale install from Google. I tried to set the price to $250,000.00 but Google has a limit. :-)

If you do have a few hundred thousand to throw my way, then go for it. The app would get done quickly. :-)

I've thought about charging some small amount for the Google play version. Or some other way to accept payment. But I'd have a fully free version, a direct apk download or an fdroid version as well. Certainly the code would be free, and the charge would only be to allow payments by those actually just looking to buy something or support the development financially.

My bad. I'll fix it.

On Sun, Jan 16, 2022, 5:55 AM Giuseppe Penone @.***> wrote:

Please @poleguy https://github.com/poleguy make it clear that it is not the official cherrytree android development, as I would never ask money for people to use my open source work

— Reply to this email directly, view it on GitHub https://github.com/giuspen/cherrytree/issues/328#issuecomment-1013861857, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADGNA75UVXK4R2NJWXWBK53UWKW2JANCNFSM4EJ2JWCQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

You are receiving this because you were mentioned.Message ID: @.***>

poleguy commented 2 years ago

I have updated the app description to clarify why the price is set at the upper limit of what google allows: it is to avoid anyone installing what is a stale version of the alpha quality code. The apk is freely available from a link on the github page. Please download it there, and let me know your feedback.

If anybody has additional questions about cherrybud please enter them as issues under https://github.com/poleguy/cherrybud

I've created a issue about pricing here if this topic ever comes back up, please put it there and don't bother giuspen. https://github.com/poleguy/cherrybud/issues/7

I'm sorry @giuspen to cause you any grief. My code is also free, and if/when you decide to do an 'official cherrytree' android app, you may of-course use whatever you find valuable.

I personally don't think charging money for open source work is necessarily something to avoid, but I certainly can respect your position of never asking for money. I wouldn't want anyone to think that I am somehow representing you or the official cherrytree. Please let me know if I can fix anything else with respect to cherrybud: I definitely don't want to cause any more friction.

I don't want to take down the play store app entirely, as I think it might give some visibility to cherrytree, to the cherrybud app and help with finding users/testers.

giuspen commented 2 years ago

No worries @poleguy I appreciate your explanation and have nothing against your work as long as it is clear that I'm not behind it as I have also written on your GitHub issue. Good luck.

FFDA commented 2 years ago

Hello,

I wanted to learn to make android apps and as a practice decided to make CherryTree android app. I read trough this post and decided to start with xml database too.

At this point I would like to share my progress with others to get some feedback, but not ready to publish on Play Store yet. So, if someone could test the app. Especially people with bigger databases, because mine is ~12mb in xml with just 191 nodes, 29 images, 4 tables and 127 codebox'es and app doesn't feel sluggish, but I would really like to know how it feels with bigger databases. Especially node filter function.

There are a bit more information in repo description here: https://github.com/FFDA/SourCherry There is an apk there for people who don't have the means to build one themselves.

poleguy commented 2 years ago

Cool... good luck! I haven't made any progress on mine in quite a while... I hope you find the time to get yours where it needs to go!

metal450 commented 2 years ago

Would be happy to help test once it supports sqlite!

TontonManu commented 2 years ago

Very nice project! I'll be very interested as well in sqlite support.

TontonManu commented 2 years ago

Until the alpha-2 version, I couldn't open my sqlite database ("this doesn't seem to be a sql database") I've just installed the beta version, and IT WORKS! My database opens and I can navigate inside. Good job! I'm going to test it.

InstructorGadget commented 2 years ago

is anyone having progress on this?

InstructorGadget commented 2 years ago

@giuspen - This has been in the plans since 2017 Please don't take this the wrong way I am grateful that it even exists (especially as open source) and use it frequently. I have gotten many people to use it. The only complaint is does it work on android. Is it possible to set up a gofundme or something to make this happen? I know you want it to be free and I agree with you. However. you could set a limited goal and let it not go past that goal. I think a lot of people would gladly contribute. CherryTree is an amazing application with very special and unique features I feel the only thing slowing it down is cross-compatibility. How can us non developer types help this happen?

13werwolf13 commented 2 years ago

@InstructorGadget Above in this issue, dear @FFDA gave a link to his project SourCherry. It is quite crude and lags far behind in functionality, and develops slowly. But still it works and develops. I already use it at work.

P.S.: @giuspen and @FFDA thank you so much for all your hard work!!

giuspen commented 2 years ago

I won't be able to work on the Android app myself in the short term because that would almost freeze the development of the PC version and there is still a lot of stuff I want to do there. On the other hand I see that as @13werwolf13 pointed out, the project of @FFDA https://github.com/FFDA/SourCherry is progressing very well!