Welcome, Guest
General discussion about ComicRack

TOPIC: A New Start

A New Start 4 weeks 2 days ago #48281

  • boshuda
  • boshuda's Avatar
  • Offline
  • Gold Boarder
  • Posts: 295
  • Thank you received: 64
  • Karma: 8
Don't be nervous about smart lists. They don't actually do anything to the underlying files or even the library. All they do is display comics based on certain criteria.

cYo decided years ago this wasn't going to be open source, and he's the only one (AFAIK) with the source code. That's essentially why it's been abandoned - it was all him, and people change.

The problem with rebuilding CR is that the underlying data storage is a big job in and of itself, and making a presentation layer for it isn't all that easy, either. Even just for one OS. Add in the feature creep over the last decade or so that CR has been available (android/iOS sync, smart lists, hardware acceleration, support for high-res displays, I'm not really sure what has been added over the years but it's significantly more complicated than when it first released) and the feature request creep (multiple OSes, web/network server, proper SQL database support) and it becomes quite the daunting project. If other people who've started a project are anything like me they probably get derailed when they start up CR to see how it's currently being done and get nothing actually accomplished. I've also had some personal issues that reared their head every time I sat down to design & code something up, but I think I've got those under control, so I'm really hoping this time works out better.

I am personally putting the finishing touches on a database schema and the scripts necessary to create/recreate it. I already know how to talk to said DB from within .Net apps, and display the table/view information, as well as clumsily update the database. After the DB is created I hope to create a dirty Windows app to port your existing CR data into it. Then create a Windows app with an absolute minimal feature set to keep a collection up to date. Once that's out there I'll start adding features back in. And hopefully, once there's an actual application out there I'll get some help. I'm also toying with the idea of making it cross-platform out of the gate, but every time I go down that route I get completely de-railed. Instead, I'm hoping the tools to bring .Net apps over to Mac and Linux are mature enough now to work after the first version is completed. If not, the lessons learned and the band-aid app will hopefully allow for recreating the app in (probably) Qt5. However, once the DB is up and running and the user has a way to connect to it, there's no reason that the existing DB structure couldn't be used by front-end guys familiar with other OS's, and even web/network servers.

My list of 'must haves' out of the gate:
Import/export to/from CR so the tools available in CR can be used (comicvine scraper, library organizer, exporting of comics, etc)
Ability to view/sort books and related information
Ability to open an external comic book reader.

Add new comics via ComicVine scrape (this may be easier to accomplish by putting a scripting engine in and recreating the CR API, which has the potential to bring in a lot of other stuff, but I honestly don't know how much work is involved with that, and I don't know that I want to support IronPython).



Would be nice/next release:
Ability to move the books around like Library Organizer
Ability to write comic book info right into the comic files (I see someone actually uses some field of the zip file to do this so the entire archive needn't be opened to read the internal xml files, that's pretty nifty)
Reading/Smart Lists (I'm thinking SQL queries only initially, and drag and drop of books to create ordered sql lists or some-such, but IDK yet)

Stretch:
Full scripting API
Smart List creator to make it easier to make them
Internal Comic reader
Comic editor
Conversion of comics to/from multiple formats
If someone hasn't already forked Mylar or that other one people sometimes mention on here to create a network/web server and syncing server, create that
Prettification as I expect the first version to be rather ugly AF
The administrator has disabled public write access.
The following user(s) said Thank You: romsnesrom, alb123

A New Start 4 weeks 2 days ago #48282

  • alb123
  • alb123's Avatar
  • Offline
  • Fresh Boarder
  • Posts: 11
  • Thank you received: 1
  • Karma: 0
That's awesome to hear that you're thinking about doing a project like that, @boshuda. I would love to be able to offer you some assistance, but I'm not a Dev and even some of the things you said sounded like an alien language. However, I can appreciate that a project like you're talking about it no easy undertaking. I never really stopped to think that ComicRack probably didn't look like it does now, or contain the features it currently has in the beginning. As you pointed out, those things come in time.

I should probably worry more about reading my comics than having a perfectly organized collection. There's no reason for me to start off with thousands of comics, but that's what my friend gave me. He's been into comics his entire life (we're both in our 40s). He's not an organized guy...so I'm dealing with a complete mess and I'd like to not have a complete mess. LOL

Perhaps you can explain to me what the deal is with .cbr and .cbz files. I read somewhere, I can't remember, that you want to have your comics in .cbz format (or .cb7 format) because there is something that .cbr format can't do or have? Forgive me for being so vague. I looked at some comics in ComicVine that are .cbr and I looked at some that are .cbz - they both seem exactly the same to me. Now, I know those are actually RAR and ZIP files, respectively, so there IS some difference to the act file itself, but both comics had the same amount of info scraped from Comic Vine. Both had the same fields filled...so I remain baffled on that one. Thankfully, I learn rather quickly. :-)
Last Edit: 4 weeks 2 days ago by alb123.
The administrator has disabled public write access.

A New Start 4 weeks 2 days ago #48283

  • krandor
  • krandor's Avatar
  • Offline
  • Gold Boarder
  • Posts: 204
  • Thank you received: 21
  • Karma: 4
alb123 wrote:
That's awesome to hear that you're thinking about doing a project like that, @boshuda. I would love to be able to offer you some assistance, but I'm not a Dev and even some of the things you said sounded like an alien language. However, I can appreciate that a project like you're talking about it no easy undertaking. I never really stopped to think that ComicRack probably didn't look like it does now, or contain the features it currently has in the beginning. As you pointed out, those things come in time.

I should probably worry more about reading my comics than having a perfectly organized collection. There's no reason for me to start off with thousands of comics, but that's what my friend gave me. He's been into comics his entire life (we're both in our 40s). He's not an organized guy...so I'm dealing with a complete mess and I'd like to not have a complete mess. LOL

Perhaps you can explain to me what the deal is with .cbr and .cbz files. I read somewhere, I can't remember, that you want to have your comics in .cbz format (or .cb7 format) because there is something that .cbr format can't do or have? Forgive me for being so vague. I looked at some comics in ComicVine that are .cbr and I looked at some that are .cbz - they both seem exactly the same to me. Now, I know those are actually RAR and ZIP files, respectively, so there IS some difference to the act file itself, but both comics had the same amount of info scraped from Comic Vine. Both had the same fields filled...so I remain baffled on that one. Thankfully, I learn rather quickly. :-)

With a .cbz file, when you scrape data from comicvine and places like that it can store that information inside the file itself instead of just in the comicrack DB. This is important because this way if you lose the comicrack DB, you don't have to rescrape all teh comics since the information is there.

Read the document in the link I posted above. It will cover a lot of that kind of stuff and show you a really good system for organizing your comics.
The administrator has disabled public write access.
The following user(s) said Thank You: alb123

A New Start 4 weeks 1 day ago #48285

  • joaohkfaria
  • joaohkfaria's Avatar
  • Offline
  • Fresh Boarder
  • Posts: 12
  • Thank you received: 4
  • Karma: 1
Hey guys! I just want to thank all of you for helping with your "must have" lists.

This new project is alive and I'm currently working on it. It will be open source, so, I hope this new project never dies.

I'm going to start the project slowly, with feel features, but increasing the capabilities over time.

We will have Android/iOS mobile apps, Windows/Linux/Mac desktop apps. My current release date is about beginning 2018. So, stay tuned!

Thank you all for your help! More info soon!
Last Edit: 4 weeks 1 day ago by joaohkfaria.
The administrator has disabled public write access.
The following user(s) said Thank You: NoDruid

A New Start 4 weeks 1 day ago #48289

  • boshuda
  • boshuda's Avatar
  • Offline
  • Gold Boarder
  • Posts: 295
  • Thank you received: 64
  • Karma: 8
joaohkfaria wrote:
Hey guys! I just want to thank all of you for helping with your "must have" lists.

This new project is alive and I'm currently working on it. It will be open source, so, I hope this new project never dies.

I'm going to start the project slowly, with feel features, but increasing the capabilities over time.

We will have Android/iOS mobile apps, Windows/Linux/Mac desktop apps. My current release date is about beginning 2018. So, stay tuned!

Thank you all for your help! More info soon!

You're writing it with Javascrit/Electron -- how's that actually working out? I mean, ComicRack processes a truck-load of data and manipulates and displays a lot of images. Are you finding the UI and backend operations to be fast enough to be truly useful? Most of the cross-platform development options seemed to be entirely too slow for a lot of the heavy lifting. I mean, you'd think creating a web front-end would be a great solution but the rendering is so painfully slow that it's an annoying experience.
The administrator has disabled public write access.

A New Start 4 weeks 1 day ago #48290

  • joaohkfaria
  • joaohkfaria's Avatar
  • Offline
  • Fresh Boarder
  • Posts: 12
  • Thank you received: 4
  • Karma: 1
Actually, I'm using React Native (by Facebook) for mobile. And React Native uses native components to render the UI, it's not a web app, even though, it's written in Javascript.

So, it's fast as a native app can be.
The administrator has disabled public write access.
The following user(s) said Thank You: NoDruid

A New Start 4 weeks 1 day ago #48291

  • boshuda
  • boshuda's Avatar
  • Offline
  • Gold Boarder
  • Posts: 295
  • Thank you received: 64
  • Karma: 8
joaohkfaria wrote:
Actually, I'm using React Native (by Facebook) for mobile. And React Native uses native components to render the UI, it's not a web app, even though, it's written in Javascript.

So, it's fast as a native app can be.
Okay. I wasn't even thinking about mobile yet. I'm more worried that as more and more time passes the desktop app will be shot. And that's where I do the bulk of my reading. But I guess the mobile part is what's already breaking for the iOS guys. I was really hoping after a proper open-source desktop replacement came out that someone would want to write the mobile app part, or I'd get the opportunity to learn and implement yet one more thing I have no clue about :). I'm actually more excited about creating a properly normalized database than anything else.

I thought you wrote in your first post that the desktop part was Javascript-by-way-of-Electron. Are you initially limiting yourself to writing a mobile app to interact with the existing ComicRack data? So CR would still be the tool to catalog and store the comics? I think jkthemac actually suggested that very tactic in this forum and it sounded like a great idea.
The administrator has disabled public write access.

A New Start 4 weeks 1 day ago #48292

  • joaohkfaria
  • joaohkfaria's Avatar
  • Offline
  • Fresh Boarder
  • Posts: 12
  • Thank you received: 4
  • Karma: 1
Yep, I will write a Desktop app too (using Electron).

And sadly, I don't think I can use an existent CR data, even if it was possible. Probably, the apps will start slowly (with only some core features) and will get more complex with time (and maybe with some help by other devs), and using the CR data will limit increase complexity.

Some core features that I'm working on the desktop app is:
- Syncing your library with Comic Vine to get all info.
- Sync comics to cloud to sync with all your devices (Probably I'll make a paid service to mantain the app alive).
- Sync comics directly with Android/iOS apps. (Free)
- Smart lists -> Read, Unread, Reading.
- Creation of "Playlists" to group story arcs.
- "Subscribe" to Series to know when a new comic book releases.

And additionally -> I'm managing to create a custom comic book format to simulate Comixology's Guided View (And anyone could create your own guided view based on CBR, CBZ file). But this is not my priority for the first version.
The administrator has disabled public write access.

A New Start 4 weeks 1 day ago #48293

  • krandor
  • krandor's Avatar
  • Offline
  • Gold Boarder
  • Posts: 204
  • Thank you received: 21
  • Karma: 4
boshuda wrote:
joaohkfaria wrote:
Actually, I'm using React Native (by Facebook) for mobile. And React Native uses native components to render the UI, it's not a web app, even though, it's written in Javascript.

So, it's fast as a native app can be.
Okay. I wasn't even thinking about mobile yet. I'm more worried that as more and more time passes the desktop app will be shot. And that's where I do the bulk of my reading. But I guess the mobile part is what's already breaking for the iOS guys. I was really hoping after a proper open-source desktop replacement came out that someone would want to write the mobile app part, or I'd get the opportunity to learn and implement yet one more thing I have no clue about :). I'm actually more excited about creating a properly normalized database than anything else.

I thought you wrote in your first post that the desktop part was Javascript-by-way-of-Electron. Are you initially limiting yourself to writing a mobile app to interact with the existing ComicRack data? So CR would still be the tool to catalog and store the comics? I think jkthemac actually suggested that very tactic in this forum and it sounded like a great idea.

I can only speak for myself, but I only really use the destop client for organization and do my reading on iPad. However I have a large library so it is a lot of heavy lifting on the desktop side to handle all of those especially with the current DB structure.

I like the thought of trying to use as much of CR as possible while the new app is being made. That way we don't have to decide "is it worth switching even though features x,y,z are not there?". Definitely a little harder to do but if you can make it work that would be great.

Personally on the desktop side I think one of the biggest changes needed is a move to a full SQL structure. The current method bogs down on large libraries.
The administrator has disabled public write access.

A New Start 4 weeks 1 day ago #48294

  • perezmu
  • perezmu's Avatar
  • Offline
  • Platinum Boarder
  • Posts: 1114
  • Thank you received: 64
  • Karma: 51
Hi

Thanks for the effort. I want to add my two cents to your approach. For your app (I am adressing desktop app here) to succeed you need to offer something’s that are missing (and missed) in comicrack

I’d love it to have an embedded comics server to read on mobile devices without need for specific apps or syncing. There are a few out there but they are standalone. I think a proper management tool like yours with the server would be killer.

I also miss in your core specs the ability to read/write comicinfo.xml files. That’s a way not to lose all the work already done in our collections
joaohkfaria wrote:
Yep, I will write a Desktop app too (using Electron).

And sadly, I don't think I can use an existent CR data, even if it was possible. Probably, the apps will start slowly (with only some core features) and will get more complex with time (and maybe with some help by other devs), and using the CR data will limit increase complexity.

Some core features that I'm working on the desktop app is:
- Syncing your library with Comic Vine to get all info.
- Sync comics to cloud to sync with all your devices (Probably I'll make a paid service to mantain the app alive).
- Sync comics directly with Android/iOS apps. (Free)
- Smart lists -> Read, Unread, Reading.
- Creation of "Playlists" to group story arcs.
- "Subscribe" to Series to know when a new comic book releases.

And additionally -> I'm managing to create a custom comic book format to simulate Comixology's Guided View (And anyone could create your own guided view based on CBR, CBZ file). But this is not my priority for the first version.
The administrator has disabled public write access.
Time to create page: 0.237 seconds

Who's Online

We have 259 guests and 8 members online