Hi Node Gallery gang! Greg here, CCK Gallery maintainer. Was cleaning up my issue queue (kinda) when I came across this:
#422354: Work more closely with Node Gallery team
So, it seems to me with Drupal 7 looming on the horizon there's never been a better time to revisit this. I don't really want to have to port CCK Gallery, but then users are saying it does *stuff* Node Gallery cannot do and they want to keep using it.
I'd like to see a list of what CCK Gallery does that Node Gallery does not do. If we can draw up a comparison, I'd rather devote my time to filling the holes in Node Gallery (if, indeed, there are any) in preparation for a D7 release (and making an upgrade path for D6 CCK Gallery users to D7 Node Gallery, for that matter).
What say you? Can we start a roadmap for joining these to modules?
Comments
Comment #1
justintime commentedWow, that's scary. Not only was I browsing your issue queue just yesterday... not only was I going to use your CCK implementation as a reference for resolving #422878: Node Gallery Support for CCK ImageField, but I was going to ask kmonty (the lead maintainer) if I could try to recruit you to help us out and merge the CCK extendability of your module into the custom features of ours.
In the end of this month, I was going to branch a DRUPAL-6--3 branch in CVS and start trying to get our custom image storage replaced with CCK. Once that's complete, the next most-requested feature for our module has to be #477472: Integrate with SWFupload/Image Fupload.
Since CCK will become fields in D7 core, the thought was that this 3.x branch will be a step towards D7 compatibility.
In the last couple of months, we've lost our maintainer wilson98, but he hadn't committed any code for months before that anyway. It was all kmonty up until then. I came on (my first module experience) around Christmas, and we just recently picked up another co-maintainer, DesignWork (who appears to be quite the JQuery/UI rockstar). My specialty is more in backend code, while kmonty seems to be pretty well balanced in both (feel free to correct me anyone).
As for a list of what CCKG does that NG doesn't, I haven't tried out your module yet. If I was asked to give a 40,000 foot view description of the two, I would say that Node Gallery does more and has more features, but has more bugs and is less configurable. It looks to me that CCK Gallery aims to be more of a "glue" module, and gives the end user all the power they need to tweak it.
How would you feel about helping out with that 3.x branch? You've done the core of it once already ;-) Once we're done with a stable 3.x branch, we could start a DRUPAL-7--1 branch from there.
From http://drupal.org/project/usage, it looks like your module has a decent following - I don't see why we couldn't make everyone happy with one ubermodule.
I for one, am very excited to be a Node Gallery developer right now. We have some super helpful users, and a very specific direction to go in. Your post just made my day!
Comment #2
greg.harveyAwesome! Yes, I'd love to work on 6.x-3.x-dev.
Do we have a spec/plan? Looking forward to it already. It would be great to say to CCK Gallery peeps there won't be a D7 release because Node Gallery is even cooler and I'm working on that now. =)
Edit: I'm definitely stronger back-end than front-end, btw. But can do either, to a point. Not familiar enough with jQuery though to do things quickly. Wish I was!
Re: spec, I guess you defined it above already... sorry. I do that sometimes. =P
Comment #3
JacobSingh commentedEek! you guys should check out the media project. We're building media as a fieldable entity. It's very rough right now, but will be for real very soon. I feel quite strongly this will be the ideal platform to build a gallery app on top of (or port an existing one to).
I will be happy to help get you started here and give CVS access to anyone who is serious about doing work in this area.
All the best,
Jacob
Comment #4
greg.harveyI love it when a plan comes together!
Sounds great, Jacob. Let's wire everything together. No need to duplicate effort (assuming the Node Gallery chaps are in agreement - I certainly am).
Comment #5
justintime commentedJacob - I get aaron's RSS feed, so I'm a little familiar with the media module but haven't used it. The use of streams would absolutely rock - our module wouldn't care if an image lived on a local filesystem, an Amazon S3 bucket, Flickr, or whatever. Am I right in assuming that's going to be D7 only?
If so, we can D6 version 3 out with CCK imagefield, and look into media for the D7 branch.
Comment #6
designwork commentedHi guys,
this looks like a big game now.
If I got it right we first go to Imagefield upload, than finish the bulk-upload. And in a D7 branch we integrate media. OK I will help. Just untill monday I'm not able because I'm swamped with work.
PS. Justintime I stoped working on the bulk-upload because I have some problems with the image node image.file creation. But I will return next week.
Comment #7
justintime commented@greg.harvey - perhaps you can build a list of features that your module provides them that current Node Gallery doesn't (save for the CCK implementation which will be addressed RSN)?
Comment #8
greg.harveyLet me look in to that. I'll have to install Node Gallery and start getting familiar! There's not much to CCK Gallery - basically a bunch of ImageCache presets, content types and views. So perhaps outputting of galleries via Views is the most obvious area where Node Gallery might not compare? In terms of added features, there isn't much, cos I always took the view that people can set up Lightbox2, etc. themselves ... intended to integrate more stuff in time, but not in any hurry!
What I would like to do is go through my issue queue and see how many issues get checked off by the features of Node Gallery too. =)
Comment #9
justintime commentedWe have views integration, it just sucks ;-) Seriously - #625528: Views completely broken: Using views field "Cover Image" etc. breaks your view, GID returns wrong data etc. was created by kmonty.
It's actually the first thing I was going to set out to do, but as you already know, views integration gets so much easier with CCK, it didn't make much sense to refactor the views integration twice so close together. So, I've put it off until I take a crack at CCK. If for some reason that should fail, then I'll rework the views into the existing 2.x code.
Comment #10
kmontyI definitely support combining efforts into one module. Both modules have a decent user base, which is a strong indicator that a great gallery solution is needed for Drupal. That said, since both modules attempt to do the same thing and since we are moving towards a similar strategy for implementation CCK/Fields, it makes sense that we focus together.
As has been previously mentioned, I am very busy with work right now so my time for this module is limited for the next month or so but I am not walking away from it... just taking a break.
I also believe that once 3.x is ready for a dev release (or potentially alpha), we should close out all the 2.x and 1.x bugs and support questions from the queue, as, hopefully, most of those will have been answered.
Comment #11
greg.harveyI should say I, too, am extremely busy, but trying to allocate more time in 2010 to contributing - so I will be present. Much more present than I was for CCK Gallery (which, although working, has been a bit neglected).
I'm sure between us we can cover it. ANOTHER advantage to pooling efforts. And Drupal *definitely* needs a good gallery. There just isn't any totally Drupal solution that can provide a Facebook-like gallery experience. That's why I made CCK Gallery and you guys made Node Gallery. =)
Why don't we go ahead and create that 6.x-3.x branch so work can begin as soon as one of us gets chance. I guess a new 6.x-3.x "task" is required to replace the image storage elements of Node Gallery with CCK ImageField equivalent mechanisms. Branch + issue = something to start on.
Comment #12
justintime commentedHi everyone.
I might be a bit "offline" this week, my 2yr old son has RSV and is at the hospital with his mom - I don't get to stay the night at the hospital due to my bad snoring. I knew it would come in handy someday ;-) Before anyone asks, he'll be just fine -- just needs some O2 and monitoring, he'll likely be out Tues or Wed.
Also, we need to figure out how to map out our TODO's for 3.x - see #687848: Status of Node Gallery 3.x
Comment #13
kmonty@greg.harvey - I granted you cvs access
Comment #14
greg.harveyThanks. Got caught up in this for this week (plus "real" work) but hope to be able to put some time in next week.
Comment #15
igorik commentedHi guys
This is great newws about your cooperation.
I just want to let you know about views gallery
It is using views, cck, imagecache... so maybe you can reuse some of it's code or to inspire yourself there
http://drupal.org/project/views_gallery
have a nice day!
Igor
Comment #16
justintime commented@Igor - ironically enough, I was using eaton's article posted on the front page of Views Gallery to try and build my own before I happened upon this module. Node Gallery Access was what sold me on coming over to Node Gallery. I'll definitely browse through KarenS's module and see what goodies are in there. OG support is kinda interesting...
Comment #17
greg.harveyHmmm, views_gallery == more mature cck_gallery, except I was first! ;-)
Think I might go over there and ask KarenS to help here instead...
Edit: did! #694812: Duplicate module?
Another option is we all build on Views Gallery, if Karen's up for it. We shall see. Seems silly to keep two projects when one is all that's needed.
Comment #18
designwork commentedHi Greg, Hi Justin,
I would propse that we use views for listings etc. But I would prefer if we have a module that dosen`t depends on views. As I know there are a lot of users that do not have the time or skills to use views. So if we want to have a module that is only for "advanced" Drupal users, we use views.
But a lot of user just want a easy to use gallery module. Just install it and maybe some other modules and start using it.
Cheers
Dirk
Comment #19
igorik commentedDirk, I think you are wrong.
To enable views module is not harder as enable cck/imagefield module. Using views will be done on the backend side of node gallery, you will probably don't need to set any views manually. (only if you will be want to customize it)
3.x version will be based on combination views and image fields (in views) so it will be really easy to show images in gallery, etc.
This is IMHO the point of this new branch.
If you want to have node gallery without views, you can use version 2.x. where views is not dependency. However, views + cck is the future.
Comment #20
kmontyYeah, views is the future. I think it makes more sense to leave the views in code and people, if they want, can override the views in the UI.
Comment #21
greg.harveyExactly. Depending on Views does not mean forcing people to need to know how to use views. We can encapsulate them in code and normal users need not concern themselves with them. These days the Views UI is not necessary - people can install Views alone if a module needs it and not care what it does. Why would you write your own output when Views will let you build it with a UI and Features will let you package it as a module?! =)
Comment #22
justintime commentedJust a note, I have created the DRUPAL-6--3 just now. If you're a user, please don't start using that branch, as the odds are 100% that things will break quite horribly for awhile before things get a little stable. When things are stable enough to have people start testing, we'll put up a release on the project page.
Comment #23
scroogie commentedSounds great! I'd be willing to help out a bit as well. But where to start?
Comment #24
joachim commentedThis is a useful component to use for any kind of Views gallery: http://drupal.org/project/views_fluid_grid
Also, if you've got a hierarchy, this is a generalized version of the child gallery stuff from Image module: http://drupal.org/project/views_catalog, though needs reworking for Views 3.
I lose track of all the different gallery implementations they are and how they work (a thought: do we have a module comparison page for these yet? We really should!).
Comment #25
scroogie commentedI guess this is a design question. I would really like it, though.
joachim: Does views_catalog allow for arbitrary nesting (a real tree structure)?
Comment #26
justintime commented@scroogie - NG3 is there in CVS now, but it's very bleeding edge and outright broken in quite a few places. I wouldn't recommend even checking it out unless you're super-curious and have a spare Drupal instance sitting around that you can break horribly ;-) Once it's ready for some end-user alpha testing, we'll put a dev release up on the project page (2.x will still be the recommended version). We'll update this post and create a new thread announcing the release.
Comment #27
scroogie commentedjustintime: I think you misunderstood me. I meant that I'd be willing to help developing, not end-user testing. ;)
Comment #28
dbeall commentedYipe, I just love breaking things.. @ scroogie, looks like your right on time.
Comment #29
joachim commented@scroogie Views catalog tries to do the same thing as image_gallery, which is a full tree. A few more things need to be done -- see the project page, the issue queue, and comments in the code as a last resort.
Comment #30
AntiNSA commentedsubscribing
Comment #31
H3x commentedI know it's very early to ask, but will there be an upgrade path to ver 3.0? I'm really keen to see Node Gallery use ImageField, but I need a gallery solution ASAP. If I start using Node Gallery now, will all my Image Nodes automatically be converted to use ImageFields when I upgrade?
Thanks to all the maintainers for their hard word, btw.
Comment #32
justintime commented@H3x: most of the core features are in place in 3.x now, and I'm actually working on the upgrade path right now. I'm a bit stumped on one thing - how to add an imagefield to an already existing content type. However, even if I don't figure out how to do that via upgrade code, we can have the site admin do that part for us, and then upgrade the images after that's done. Right now, I don't see any reason why we couldn't accommodate everyone there. I created #715874: Upgrade path from 2.x to 3.x to track the progress of the upgrade path - subscribe over there if you'd like to stay updated.
Comment #33
karens commentedAs noted in the issue you posted in the Views Gallery queue, Views Gallery is specifically designed to be a simple solution that builds on existing modules and just adds a bit of glue. I think there is room for both a solution like this and a more robust solution specifically designed to do complex image gallery handling. I also am getting ready to create a feature for this, using the Features module. Since Views Gallery is mostly glue, it is an excellent candidate for a feature. Almost everything in it is something that Features does -- creating a couple content types and views and setting up some variables and permissions.
The difference is that Views Gallery is 14KB vs Node Gallery which is 42KB, the difference between a lightweight feature that builds on a number of other modules that many sites would already be using vs a robust solution designed to solve a specific task.
Comment #34
greg.harveyHi all - quick note, joachim pointed out this might be good for the upgrade path: http://drupal.org/project/field_convert
Comment #35
jphautin commentedsubscribing
Comment #36
rapsli commentedhi guys :) I'm over from Fast Gallery (http://drupal.org/project/fast_gallery)
greg.harvey was contacting me via twitter just today.
Well, Fast Gallery uses a completely different approach, but maybe we can put some concepts into this. Oky, let me summarize some of my ideas and plans for fast gallery:
State/Concept as of now:
- Build galleries based upon folder hierarchy. You can setup multiple galleries.
- Folders are synced with the gallery.
- Swapable storage. there is one storagemanager and there can be different storages. Right now there is only a default storage implemented (two tables in the db)
- Support for Lightbox (i'm actually looking into a more portable front-end -> some swapable version, based on interfaces, would be best).
Ideas and Future:
- Some public API over REST, that makes integration anywhere else easy. Kinda like Flickr and YouTube.
- Plugable Front end
- Better plugability of the backend
Here's a quick introduction of fast gallery I just wrote: http://www.rapsli.ch/fast-gallery-introduction-developers
Right now I don't really see how Fast Gallery would fit into the whole node concept, except for the whole plugability concepts. I mean, I was actually planing on having a node storage, that would save the images as nodes... but not work has been done sofar.
So these few new ideas probably need some time.... ;)
Last but not least: In my opinion the gallery must just be easy to use and fast to setup. No big dependencies in the core version. ... but a lot of integration with other modules that just make it more and more powerful.
Comment #37
greg.harveyHi rapsli - thanks for saying hi! Everyone, an interesting part of rapsli's module is an API for file-storing images via Fast Gallery (am I right?) ... which is potentially very cool. I love the idea of allowing people to choose their storage mechanism, nodes out of the box but other integration - like rapsli says. I've been doing similar work for the Feedback module and I'm trying to kick off something similar with the Abuse module too. Perhaps we could save a ton of work by using rapsli's API to offer a file storage option with Node Gallery, rather than having rapsli's module add a separate node storage layer...?
Comment #38
kmontyWhat about http://drupal.org/project/storage_api ?
Comment #39
rapsli commentedlooks really cool. Somehow I got caried away today in the train and started on writing a plugable frontend for fast gallery. In the next release it will be really easy to have any kind of front end. This kind of architecture should definetly be in some bigger gallery solution.
I'm not going to take lead with this gallery, but I'm willing to help with concepts.
Comment #40
scroogie commentedIf you're already talking about pluggable frontend / backend, you should perhaps have a look at GalleryAPI: http://drupal.org/project/galleryapi
It sounds like their goals. I never had the time to look at the project, though.
Comment #41
rapsli commentedwell, I guess I should... but having a plugable architecture makes the system much more maintainable, that's actually the reason I built it plugable.
Comment #42
dddave commentedLet us look into the future... ;)
Comment #43
zengenuity commentedCleaning up this issue. It doesn't seem like this is going to happen, and the D7 version is already in production.