dandv / meteor-webix

Meteor.js - Webix UI integration
https://atmospherejs.com/webix
MIT License
339 stars 39 forks source link

Is this amazing project going to restart sometime soon? #21

Open mwarren2 opened 9 years ago

mwarren2 commented 9 years ago

This is the best project in the whole of Meteor by far. With the data-adaptor you get instant CRUD immediately after setup, I've never seen anything like it.

But nothing has happened since April. Just wondering why.

Please excuse the directness, it's just that here is probably the best piece of software I've seen. But I can't use it because it looks like it's not being maintained. This is frustrating.

The basis is amazing, it just seems to need a few tweaks: for example there is apparently some kind of memory problem when you return to a page - nothing that can't be fixed.

It's Webix, not Meteor, that has control over the code, right? Since some elementary pull requests from the end of April have not been done, I assume that at Webix they just don't want to go on with this? Or am I barking up the wrong tree?

I've tried the alternatives - Datatables is the only one that comes close. Aldeed as usual has done a great job. Datatables display is great, but the editing extension costs money. Quite happy to pay the money, but I can't work out for the life of me how to get the editing extension to work with Meteor. So I've ended up doing my own editing code.

But Meteor Webix is the bees knees. I only wish I could use it.

rubenlagatie commented 9 years ago

I second that! For me, a lot of issues would be resolved when this fork of webix gets updated to the latest version.

NorCalm commented 9 years ago

I agree that for me, this is the best project in Meteor.

I'm not affiliated with Webix but I can see that there are a couple things working against them with regards to keeping the Atmosphere.js package updated. 1. There's no way to commercialize it, which is their bread and butter. 2. They make substantive updates quickly.

This is how I've been keeping Webix updated with my Meteor.

a. Download the latest meteor-data.js from Maksim's response from June 17. (They are very responsive to their webix forums).

http://forum.webix.com/discussion/comment/6335/#Comment_6335

b. Remove the Atmosphere packages and then install latest greatest Webix as per the follow on responses.

Works great for me!

mwarren2 commented 9 years ago

@NorCalm Thanks for your comment and the pointer to updating Webix for Meteor. I'll leave this issue open for a while, because it might help a few people.

The pointer to the webix forum is useful. I had no idea that they had updated the meteor-data.js code.

I removed my atmosphere installed code and installed the latest stuff as indicated in the forum. It showed the stuff in the tables, but there are just too many strange things going on. Updating has stopped working and there are no messages to indicate why.

If you've got everything working, you're lucky. But it's all 'on a wing and a prayer'. If I'm going to use this for clients I'm going to need something reliable and maintained. The meteor/webix combination is potentially genuinely awesome, but there's too much funny business still going on.

dandv commented 9 years ago

Guys, really appreciate the kind words. At the moment I'm swamped with work on @iDoRecall, but we do plan to use Webix for the admin side of the app, so wish me luck and keep bugging me (nicely) for progress :)

I plan to update to 2.5 this week (#16). Please see #3 regarding some confusion among various webix repos. Ideas for how the Webix team and I can work better together would be great.

There are also some licensing issues with publishing the Webix source code.

NorCalm commented 9 years ago

@mwarren2 Sorry, yes, I forgot there was a hiccup in the first removal and reconnection. I'm a green beginner at all this but it seemed like the location of the Webix library really made a difference because of the File Load Order in Meteor, which is based on directories. I think that @mkozhukh gives good advice near the end of the Webix support forum thread I mentioned.

I did briefly try to play with webix_debug.js instead for its debug facilities and that didn't work at all with Meteor, for some reason. That would be a great feature.

Looking at the Trello that XB Software has published about their roadmap for Webix [https://trello.com/b/QF0FYdK3/webix-roadmap], it looks like Meteor integration is "complete" so I don't think there are XB Software plans to keep the Atmosphere package updated each time a new revision comes out, unfortunately.

@dandv - The only idea on how to work together better with XB Software is maybe to harness more energy from us fans? For example is there a way to detail the steps you take to convert the Webix library as it's constantly published by XB Software into a Meteor package?

If so, perhaps one of us could write a simple shell script to update the "latest version" for a given Meteor project. It's not Atmosphere, but until MDG comes up with a way to support Meteor deployment with pay-for commercial packages, it's hard to blame XB Software too much.

Also, I don't think KendoUI, a similar Atmosphere package, is any better at updates than Webix. And - I find Webix much friendlier than KendoUI.

@dandv - Also, about those licensing issues, it seemed like it was reasonably resolved both in the Github comments and also the StackExchange thread? (That webix_debug.js has been released and is unobfuscated source code.) Are there still open issues?

mwarren2 commented 9 years ago

UPDATE ! This morning I seem to have got it working with the latest code from the webix forums, as mentioned by @NorCalm, and it basically now works. The memory problems have gone, and the error messages along with them, which is great. @Dandv, would it be possible to get a proper atmosphere install going again with this latest code?

However page scrolling has disappeared.


@dandv I guess the main issue for meteor-webix is to keep it as up-to-date as possible, and make it easy to install again. The other is that as @NorCalm says, it looks like XB Software consider Meteor integration complete, but in reality it's not working well. The data-adapter felt pretty good. There wasn't much code to go wrong there, although it seems to have been completely rewritten now. But there appear to be problems where Meteor and Webix meet on the page. There's some kind of memory issue, where stuff is remaining on the page - presumably a Webix problem, and this is connected, it seems, with a problem with Meteor reactivity as well I think. The other day, twice, the same record got inserted thousands of times. And an error message, which you pointed out months ago, appears thousands of times, and each time I return to the page, the number of messages increases by a factor of two. I don't want to get into specifics, however. It's just to say that there are some not insignificant bugs, and that posting them here on meteor-webix isn't going to get them solved, which is not a criticism at all, it's an attempt to present the problem. I guess one answer is to post bugs on the webix forums, where they seem to be very reactive.

@dandv You've started something here that looks very, very good. But I think your idea to get involved personally by using Webix for the admin side of your app is the way to go. There are some basic issues which need real expert Meteor and Webix heads to get together to get the ball rolling. Once the big issues are out of the way this is going to take off like a rocket, because it's great stuff, and I think that other issues, like helping Webix to make money, will fall into place, because the momentum behind this will make them happen.

mwarren2 commented 9 years ago

Latest update on this: Today for no apparent reason, the new version downloaded from the forum gets no data. It creates an empty datatable with column headers, but no data rows. The old version, if I reinstall it, still works. But it had too many flaws.

I can't explain what's happening in the new version, nor find where it's going wrong, so I finally give up, with much regret. I just reinstall the old one and it works. @dandv it needs someone more capable that me to look at this. I hope you'll be able to find some time for it.

rudolfb commented 9 years ago

Can't say I really know what I am doing, but the following steps seem to update the repository to the current version of webix:

fork https://github.com/dandv/meteor-webix on github.

# clone the repo to local machine
git clone https://github.com/rudolfb/meteor-webix.git
cd meteor-webix
# create a new branch
git branch update-2.5
# upload the branch to github
git push origin update-2.5
# switch to the new branch
git checkout update-2.5
# list the branches
git branch
# push the new branch to the git server
git push --set-upstream origin update-2.5
# fetch the current/old version of the submodule
git submodule update --init
# merge the current/new version of the remote webix into the local old version
git submodule update --remote --merge
# add all the new submodule references
git add -A
# commit the changes
git commit -m "update to webix 2.5"
# push the changes/new version of webix to the git server
git push

Perhaps someone more knowledgeable than me can check to see if the steps above are correct.

The package.js will fetch the webix version automatically, so if the steps above are correct, the next would probably be a pull request, and as soon as this is accepted, Dan would have to publish the package to atmosphere.

If you want to use the updated package locally, without relying on Dan to update, you can create a packages folder in your meteor project, and copy the meteor-webix folder to your new packages folder. Then add "rudolfb:meteor-webix", or whatever the package name is, to your "./meteor/packages" file. This is untested, and I really don't know that much about meteor, but this could work to use the package locally.

Steps:

Change the webix github username from webix to your user:

var packageName = 'rudolfb:webix';  // https://atmospherejs.com/webix/webix  'webix:webix'

Remove the value for the variable git:

Package.describe({
  name: packageName,
  version: version,
  summary: 'Reactive Webix UI widgets bound to Meteor collections: table/grid, list etc.',
  git: '',  // 'https://github.com/dandv/meteor-webix'
  documentation: 'README.md'
});

In your myproject/.meteor/packages file remove webix:webix and replace with the packageName above, in my case rudolfb:webix, e.g.

meteor-platform
autopublish
insecure
rudolfb:webix
fortawesome:fontawesome
webix:skin-web

Restarting meteor will now use your local package that is updated to webix 2.5 .

dandv commented 9 years ago

I've updated to 2.5.0, but it took some significant unnecessary time to reload in my brain the context of where all the files are spread and check for diffs.

The @webix-hub team seems to be more responsive on the forum, so I posted there about the popularity of the Meteor adapter, and what should be done to streamline keeping it up-to-date with Webix.

CC @mkozhukh.

I'd be really curious to find out how much of the traffic that Webix receives comes via the Meteor integration. This adapter has 220 stars on GitHub, about 2.5x those of Webix.

dandv commented 9 years ago

@NorCalm,

The only idea on how to work together better with XB Software is maybe to harness more energy from us fans?

One first step would be for fans to encourage the Webix team to clean up their GitHub situation and merge repos that seem to have no reason to be separate (see my post above), or give some satisfactory explanation as to why they're separate. It'd also be great if they were more active on GitHub, as they are on the forum. GitHub is far more popular and the search on the forum is pretty terrible.

webbird commented 8 years ago

As I am looking for the "best tools" to use for a new project (and played around with Webix some weeks ago), I think this combination would be the one of choice for me - if it was stable. :/ Any news on this?

mwarren2 commented 8 years ago

@webbird This is potentially a great project, but it's not getting enough love (that's nobody's fault, people are just too busy). You would be taking a risk if you used it on an important project.

bartonhammond commented 8 years ago

I tried blending Webix & Meteor utilizing the Blaze Templates - my approach was to use the Webix HTML technology rather then writing it all in javascript. I was focusing on creating an "account-webix" package.

I went the HTML path 'cause it felt much more natural to have a declarative UI. For simple cases it was fine but once I started working with collections it went down south very fast. The webix data object works fine for adding objects to a collection but once you start updating it breaks down.

When I started the project, Webix provided support as their documentation is quite lacking with HTML technology - if they want to support their HTML approach, all of their examples need to also display the HTML approach.

Unfortunately after weeks of development the Webix staff quit responding to my support questions and when I asked what the issue was, they wouldn't even respond. It was quite strange - I've never had a company just shut down their communication like this. I have no idea why they shut down.

I was so frustrated w/ Webix after my month or so of effort that I deleted all my webix repositories. I deleted them 'cause I couldn't provide even a trivial solution that worked - I mean, yes, some of the code worked but not enough that it could be a "account-webix" kind of package.

If you're going to use Webix, you probably will have to write all the Webix UI and logic in javascript and that, to me, is not a good approach when working w/ Meteor - it will be hard to maintain, it's difficult to see the "layout" of the UI, and you won't find other Meteor developer excited about it - it won't be a natural approach, imo. That's not to say it's not "do-able" but just not something that would interest me, I guess.

On Mon, Dec 28, 2015 at 7:20 AM, mwarren2 notifications@github.com wrote:

@webbird https://github.com/webbird This is potentially a great project, but it's not getting enough love (that's nobody's fault, people are just too busy). You would be taking a risk.

— Reply to this email directly or view it on GitHub https://github.com/dandv/meteor-webix/issues/21#issuecomment-167566962.

webbird commented 8 years ago

Thank you very much for your statements. I really like the Webix UI, as it looks 'modern' and clean, so I am sad to hear that this integration project is not going to evolve. But, of course, I understand the reasons. (We're all in the same boat, aren't we?)

@bartonhammond: Never tried to get support from the Webix team, but it seemed to me that they're quite active and helpful, so I am a bit upset by what I hear from you. In fact, the documentation seems to be elaborate at first glance, but turns out to be not very helpful if you're a beginner (as I am). Took me days to create only a very basic admin page, but I must admit that I am very new to the concepts of MVC with JavaScript.

However, I will play around with Meteor for a while to see how it feels...

Thanks again.

bartonhammond commented 8 years ago

If you're interested in Mobile at all, I would highly recommend React Native from Facebook. Before I was doing all my development work in Meteor but putting Meteor on a mobile device didn't seem right - it's a ton of code that needs to be loaded and it didn't have a "native" feel to it at all - it was somewhat sluggish.

So I thought I'd look at React Native for a couple of days. At first i was put off by the JSX mixture of code and UI all in the same component. I was much more used to a MVC approach. But after working through some tutorials I began to see the beauty of RN - its quite an elegant solution.

Anyway, if you're interested in looking at RN, I've a starter app https://github.com/bartonhammond/snowflake.

Now that I've gone through the learning curve of "Redux" I think it beats to hell the MVC approach. It's a lot of technology to pick up on but it's definitely a game changer and I'm very happy w/ my decision to move away from Webix.

In any case, Meteor is a fantastic development environment and you can become quite productive. If you're going the Meteor route I'd highly recommend the "Discover Meteor" book - it's worth every penny!

Good luck with your efforts!

-barton

On Mon, Dec 28, 2015 at 8:53 AM, Bianka Martinovic <notifications@github.com

wrote:

Thank you very much for your statements. I really like the Webix UI, as it looks 'modern' and clean, so I am sad to hear that this integration project is not going to evolve. But, of course, I understand the reasons. (We're all in the same boat, aren't we?)

@bartonhammond https://github.com/bartonhammond: Never tried to get support from the Webix team, but it seemed to me that they're quite active and helpful, so I am a bit upset by what I hear from you. In fact, the documentation seems to be elaborate at first glance, but turns out to be not very helpful if you're a beginner (as I am). Took me days to create only a very basic admin page, but I must admit that I am very new to the concepts of MVC with JavaScript.

However, I will play around with Meteor for a while to see how it feels...

Thanks again.

— Reply to this email directly or view it on GitHub https://github.com/dandv/meteor-webix/issues/21#issuecomment-167583799.

webbird commented 8 years ago

@bartonhammond: Thank you very much. I've already read alot about React and am going to give it a try. It can be used in conjunction with Meteor, can't it? Dunno if this makes sense, this whole thing is still new for me... (Worked the "classic" way with PHP and templates until now.)

bartonhammond commented 8 years ago

I know Meteor works w/ React - I can only assume it works w/ React Native also - if not someone will fix that eventually.