Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Notetaking app derive from CATS ? #141

Closed
Eucaly opened this issue Jan 3, 2015 · 5 comments
Closed

Notetaking app derive from CATS ? #141

Eucaly opened this issue Jan 3, 2015 · 5 comments

Comments

@Eucaly
Copy link

Eucaly commented Jan 3, 2015

@jbaron and all

I am not sure where is the right place to ask below question, a user forum for CATS?

I am planing a "Hierarchical Notetaking" app similar to Evernote or Notational Velocity, while with WYSIWYG HTML editing, and with file system hierarchy as storage.

I guess I might derive that from CATS, especially for below features

  • node-webkit
  • file/folder tree
  • resizable panel
  • syntax highlight

Do you think that is a good idea to derive from CATS source code? Or, where would you suggest to start from?
More of my ideas are listed in below page, and also a screenshot to compare CATS v.s. KeepNote (Python, last update 2012)

@Eucaly

@jbaron
Copy link
Owner

jbaron commented Jan 3, 2015

@Eucaly https://github.com/Eucaly, this is indeed the right place for asking questions. I didn’t create a dedicated forum yet,

If your are settled on using Nodewebkit, Qooxdoo and TypeScript, than I would say yes CATS would be a good starting point. At a minimum it would help to understand how to do things like layout and integrating other components (like in your case a WYSIWYG editor etc). But I think you could also reuse a lot of the code.

That said, there is currently not much developers documentation. So you will have to spend some time to go through the source code. But nothing really difficult and most GUI components are defined in its own class and file. Based on some of the patches I got from the community, it seems most people quickly work out how CATS is structured and how to make changes to it.

If you are not comfortable (or want to learn) Nodewebkit, Qooxdoo and TypeScript I think there are also other alternatives. For example you could use plain JavaScript with the UI library of your choice on top of Nodewebkit. For example JQuery UI, Extjs also have similar components (tree, layout).

I also checked out your project, looks interesting. From looking at the the picture, it indeed shows overlap from a UI persepctive. And of course the best thing about reusing some of CATS code would be if you develop the notetaking editor in similar technology, I could easily integrate that in CATS in the future ;) as an added feature.

On 03 Jan 2015, at 11:11, Eucaly notifications@github.com wrote:

@jbaron https://github.com/jbaron and all

I am not sure where is the right place to ask below question, a user forum for CATS?

I am planing a "Hierarchical Notetaking" app similar to Evernote or Notational Velocity, while with WYSIWYG HTML editing, and with file system hierarchy as storage.

I guess I might derive that from CATS, especially for below features

node-webkit
file/folder tree
resizable panel
syntax highlight
Do you think that is a good idea to derive from CATS source code? Or, where would you suggest to start from?
More of my ideas are listed in below page, and also a screenshot to compare CATS v.s. KeepNote (Python, last update 2012)

https://github.com/Eucaly/beZong https://github.com/Eucaly/beZong
https://github.com/Eucaly/beZong/tree/master/pic https://github.com/Eucaly/beZong/tree/master/pic
@Eucaly https://github.com/Eucaly

Reply to this email directly or view it on GitHub #141.

@Eucaly
Copy link
Author

Eucaly commented Jan 13, 2015

@jbaron

Thanks for the positive feedback.
I studied some cats source code. But I could not found menu item, such as "Project > Recent Projects". Could you help to identify that in the source ?

I guess there might be some learning curve for me to decide and coding on Qooxdoo and TypeScript.
I will prompt here if I really made some progress.

@jbaron
Copy link
Owner

jbaron commented Jan 13, 2015

menubar.ts build the whole top level menu. There is a method per top menu item, in this case createProjectMenu()

Then in there there is call to recentProjects() which create the recent projects items.

When the IDE is started, the items are read from the IDE configuration file and are available to methods like recentProjects.

On 13 Jan 2015, at 10:01, Eucaly notifications@github.com wrote:

@jbaron https://github.com/jbaron
Thanks for the positive feedback.
I studied some cats source code. But I could not found menu item, such as "Project > Recent Projects". Could you help to identify that in the source ?

I guess there might be some learning curve for me to decide and coding on Qooxdoo and TypeScript.
I will prompt here if I really made some progress.


Reply to this email directly or view it on GitHub #141 (comment).

@Eucaly
Copy link
Author

Eucaly commented Jan 23, 2015

@jbaron

I found why I cannot locate the source code of recentProjects()
It's because on the releases page [1], latest_unstable (cats-1.3.336.nw) has correct binary, while with incorrect source code .zip (same content as latest_stable 1.2.0)
[1] https://github.com/jbaron/cats/releases

Secondly, after some effort, I almost decide to start forking to my own notetaking application with below configuration:

Some status is available as below

@jbaron
Copy link
Owner

jbaron commented Jan 23, 2015

Will keep an eye out on your note taking app. Also looked at dojo before and is indeed a nice framework. There are some powerful components in there. And saw some rumours that Dojo2 would be written in TypeScript. If so, that would be a very good argument to go with Dojo. Also still hoping that some day in the future Qooxdoo would be written in TS (would also be an excellent fit).

Regarding the CATS source code, I guess most contributors just use git and get the unstable branch to develop with. The source code zip file is from the main branch and is indeed the stable release that is already some time old. Once the typescript services are bit more stable, will merge the unstable branch back to the main branch.

On 23 Jan 2015, at 17:05, Eucaly notifications@github.com wrote:

@jbaron https://github.com/jbaron
I found why I cannot locate the source code of recentProjects()
It's because on the releases page [1], latest_unstable (cats-1.3.336.nw) has correct binary, while with incorrect source code .zip (same content as latest_stable 1.2.0)
[1] https://github.com/jbaron/cats/releases https://github.com/jbaron/cats/releases
Secondly, after some effort, I almost decide to start forking to my own notetaking application with below configuration:

cats (of course) ^_^
dojo - http://dojotoolkit.org/api/ http://dojotoolkit.org/api/
AMD - Asynchronous Module Definition
typescript
Some status is available as below

initial code - Eucaly/bezongmemo@7d3c8a1 Eucaly/bezongmemo@7d3c8a1
porting progress - https://github.com/Eucaly/bezongmemo/blob/master/bzm-dojo-amd-cats-progress.md https://github.com/Eucaly/bezongmemo/blob/master/bzm-dojo-amd-cats-progress.md
screenshot - https://github.com/Eucaly/beZong/tree/master/pic https://github.com/Eucaly/beZong/tree/master/pic

Reply to this email directly or view it on GitHub #141 (comment).

@jbaron jbaron closed this as completed May 6, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants