10 ms·
Yeoman: Modern workflows for modern webapps
- clayferris 14y agoI've been watching/waiting for Yeoman for quite a while now. I can't help but wonder how much Twitter's Bower pushed you towards launching today. This looks to fit a lot more of the workflow than just package management though and does a lot of the things I'm currently doing myself through a huge mashup of other tools. EDIT – totally missed that this in fact uses Bower for the package managment, so probably couldn't even launch until that was released.
- rlivsey 14y agoYeoman uses Bower for package management
- cancelbubble 14y agoIs this available for Windoze users as well? EDIT: Nevermind, I see it is not supported yet, http://yeoman.io/gettingstarted.html http://yeoman.io/gettingstarted.html Any best guess as to when this will be available?
- lvh 14y agoI am currently using Brunch[1] as a build system. How does Yeoman compare, and why should I switch? I asked this in a previous submission on Grunt, in a thread that talked about Yeoman, but I never got an answer. [1]: http://brunch.io/ http://brunch.io/ EDIT: It looks like the new FAQ addresses this issue: http://yeoman.io/faq.html http://yeoman.io/faq.html > "How does Yeoman differ from tools like Brunch or BBB?" and "How does Yeoman differ from Grunt?". Post left up for other users who are wondering how this compares to Grunt or Brunch. However, the answer seems a little... underwhelming. Apparently it's "we've made making your own scaffolds easier". Are there any other, unmentioned benefits? EDIT2: Partial updates as I discover this myself (hope that's okay): one huge advantage is how it uses Bower beneath the surface. No more manual AngularJS/JQuery/other dep upgrading!!
- paulmillr 14y agoYeoman and Brunch have many differences. You can read the small essay on them here: https://github.com/brunch/brunch/issues/408 https://github.com/brunch/brunch/issues/408 Bower support is coming to brunch in the next release.
- VeejayRampay 14y agoPaul Irish, Addy Osmani et al., sounds like a lot of win.
- vasco 14y agoAh, I've been building something like this for my own use in static sites. I use Django templating with variables loaded from a config file, thinking about supporting some sort of database for more complex sites. Also planning on compiling (less), combining and minifying css/js files automatically on file changes. Like a jekyll of my own on steroids. It's a cool little side project to have that you can add bits and bytes to when you need them.
- jlongster 14y agoIf you're looking for something that leverages require.js more for better package management, check out volo: http://volojs.org/ http://volojs.org/ It is written by the same guy who wrote require.js. It probably needs better documentation, but it will be improved over time.
- jarvuschris 14y agoIf anyone's interested in something similar for PHP that goes a few steps further, I've got a project I'm looking for feedback from some advanced developers on -- our website doesn't convey it well though yet: http://emr.ge http://emr.ge
- pdelgallego 14y agoI see that they mention backbone and ember, but how does Yeoman play with angularJs?
- jvehent 14y agoStop doing `curl get.whatever.com|bash` ! Seriously. I have nothing against your install script, but getting devs use to that is a terrible idea ! I spent weeks explaining to junior devs to not do that on production servers. I thought it was obvious, but apparently it isn't...
- nthitz 14y agoExcuse the naivety but what's the issue?
- freyrs3 14y agoIt silently executes arbitrary code from a remote server.
- mvanga 14y agoYou are asking developers to download a shell script from $random_site and run it immediately without any thoughts whatsoever as to what effects it might have. Getting people used to that is a bad idea.
- nthitz 14y agoIs it so different from running a make install or a install.sh script?
- varikin 14y agoThe biggest problem is validating the download prior to installing it. The use make install or install.sh or other similar script, the following should be done: Download package md5 package verify md5 == published md5 of packge extract make install / install.sh / etc With "curl package.github.com" | bash" the validation is missing. I don't mind the curl x | bash for my dev machine or testing/dev vms, but that is not happening on production. And if I need said software on production, I have to find a different way to install.
- 14y ago
- brian_c 14y agoThe install script takes staggering liberty with your system to fetch its dependencies. Make sure you read it before running. http://get.yeoman.io http://get.yeoman.io
- jenius 14y agoI'm learning so much reading through this. Absolutely fantastic, love it.
- ch0wn 14y agoWhen I saw the Bower announcement yesterday I was a bit concerned that with Yeoman coming up in the next weeks, there would soon be two brand new competing front-end package managers. It's presently surprised that Yeoman actually builds on top of Bower.
- desireco42 14y agoThis is great. I would like to support it spinejs, maybe it is easy to add, haven't look yet. This reminds me how much we need a global package manager, for most of the open source languages. Why would each framework need it's own way of handling dependencies.
- mofle 14y agoYou can easily create a Spine generator. Check out the docs.
- deleted 14y ago[deleted]
- aristidb 14y agoThe installer seems to look for apt-get, yum or up2date to find out if a system runs Linux. $ uname Linux Seriously.
- ranza 14y agoIts using that later for installing packages using its native package system
- aristidb 14y agoIf I understand the code right, it only installs things automatically when it detects homebrew. Besides, it _assumes you're on a Mac_ if none of these three programs are found.
- Wilya 14y agoFrom what I can guess, if you happen to be on a non-supported linux distribution (or any non-OSX OS with sh, really) and have clang installed, the script will go as far as running https://raw.github.com/mxcl/homebrew/go https://raw.github.com/mxcl/homebrew/go which should fail fast for lack of a /usr/bin/sw_vers binary. I'm not brave enough to actually run the script and check, though.
- salmanapk 14y agoGo fix it?
- commadelimited 14y agoIf you're looking for a more indepth review of Yeoman please consider checking out my article on Adobe Developer Connection: http://www.adobe.com/devnet/html5/articles/yeoman-at-your-service.html http://www.adobe.com/devnet/html5/articles/yeoman-at-your-se...
- aaronbrethorst 14y agoYeoman is a robust and opinionated set of tools, libraries, and a workflow that can help developers quickly build beautiful, compelling web apps. Cool, but what does it do?
- alexanderh 14y agoits a command line tool for web developers. It has many capabilities useful to the modern web dev workflow. Of most note to me, it acts as a "project creation" tool. AKA "A Scaffolding generator." It will pull things like HTML5 Boilerplate, jQuery, Backbone.js, etc down from github, and properly generate the project files you need to start a project with those dependencies. You dont have to worry about how any of it fits together, it will get you up and running with the latest version of everything with a simple commandline. It also does things like minify css and javascript, as well as compiling LESS/SASS and Coffeescript. They are unfortunately trying to make a single tool that solves many problems, when they might be better served by making many tools, that are all good at 1 thing each... I'm still waiting for them to launch this so I can see how that all pans out.
- aaronbrethorst 14y agoAh, got it. Thanks for the clarification!
- tucson 14y agoCan this tool connect to a mysql database and generate html5 CRUD forms based on the database? I have seen a tool like phreeze.com and I am wondering why there is not more in that direction (building web app basic pages based on existing database design)?
- ricardobeat 14y agoThis is a tool for front-end developers. It would have to support a myriad of server-side languages for that, which is completely out of scope, and tools that do it already exist.
- alexanderh 14y agoStop posting this until its out haha. They've been teasing with videos, and their "pivate beta" for so long now its torture...
- lvh 14y agoIt is out, that's what this submission is all about :)
- ryanisinallofus 14y agoI may try this out for my next project but gosh darn if that talking head isn't annoying. Screen demos should never, ever have talking heads.
- deleted 14y ago[deleted]
- Sym3tri 14y agoI have a similar more light-weight project template that requires no installation (except node). Pith auto-generates test module dependencies and uses Backbone too :) https://github.com/sym3tri/pith https://github.com/sym3tri/pith
- aDemoUzer 14y agowas able to get it running on windows, so I am happy with it. Needs more in-depth guide so I know what it provides and the reasoning behind ur "sane defaults"
- Sym3tri 14y agoThanks. More documentation is on my todo list... please stay tuned.
- btipling 14y agoI like how it sets up shims I always re-implement in require.js. Sweet.
- mattdawson 14y agoI'm using Brunch[1] for a current project, and have used Backbone Boilerplate[2] in the past. Brunch is pretty great, though bbb is better hooked up with requirejs out of the box, if you're into that kind of thing. I really want Yeoman to take off, in particular because I really want one of these tools to become the breakout hit. I'd rather everyone be focusing on improving one tool instead of all this effort going diffuse across a bunch of different solutions. I'm a python dev, and I thank the stars that pip became so standard. (Not that this is a direct analog to pip, but pip provides a subset of this functionality when it comes to packaging.) One note: the Ember init is waaaay basic. I know that these are going to be community maintained, but I would have hoped that the Ember generator bundled with this initial release would have included at least commonjs or requirejs integration. [1]http://www.brunch.io http://www.brunch.io [2]https://github.com/tbranyen/backbone-boilerplate https://github.com/tbranyen/backbone-boilerplate
- brian_cloutier 14y agoA quick note, the bottom of that script has this section: if [ "$COMPASS" -eq 0 ]; then echo "" echo "Install hiccup: no compass" echo "Sorry chap, compass wasn't setup because there was a problem with your ruby setup. You can check the documentation here for help: [link to documentation]." fi You should probably make that an actual link for when people have problems. Very nice install script by the way, you clearly had a lot of fun making it.
- ranza 14y agoWhy all the hate? If it's that bad, help out and make it cool. Make it a brew package, or npm, or gem maybe. Alternative installers for those who dont want the curl script|sh thing. I think its a great idea! *edit Actually just noticed that it IS an npm package that can be installed using `npm install yeoman´
- dgr81 14y agoTo the authors: Please make sure to remove trailing whitespace. I see it all over the code base. Run 'git diff 4b825dc642cb6eb9a060e54bf8d69288fbee4904 --check' to catch those. That SHA is that of the empty tree, applicable to any git repo.
- moneypenny 14y agoI don't know who to reply to: There's a lot of correct comments from people saying they don't want to run a script through curl from a site. Fair enough. But why not just fork the repo on Github (or onto your own infrastructure) and run the script from there, where you can verify any tampering?