Code Monkey home page Code Monkey logo

Comments (8)

metalmatze avatar metalmatze commented on May 22, 2024

I'd rather propose to use grunt or gulp and bower. Let me know if I should create a feature branch.

from webogram.

nukeador avatar nukeador commented on May 22, 2024

@metalmatze What the advantages of your proposal compared with a git submodule?

from webogram.

metalmatze avatar metalmatze commented on May 22, 2024

Well. Bower is a package manager for frontend libraries. Http://Bower.io
And grunt is a Javascript taskrunner. Http://gruntjs.com
Those tools are, I think the most used right know for their purposes.

from webogram.

nukeador avatar nukeador commented on May 22, 2024

I've quickly read about bower and it's not still clear to me why it's better than just a git submodule in this case.

The more dependencies you have to deploy an app, more complicated would be for developers to have it up and running.

from webogram.

zhukov avatar zhukov commented on May 22, 2024

@metalmatze I personally think that Bower is an overkill for this project. In future I'll try to exclude as many library dependencies as possible (except for AngularJS and some crypto stuff, of course), and currently some of them have my edits. So I think, that git submodule fits better, for this purpose.

But I consider adding some build tool to make some work with Angular templates, concatenating/minifying scripts etc, compiling CoffeeScript. Please share your opinion if you have some thoughts.

from webogram.

tehsis avatar tehsis commented on May 22, 2024

Based on my personal experience, I have two concerns about this:

1-
I personally think it would be great to add gulp/grunt for those tasks. But would be better if they are not required to get the project up and running "as is".

I mean, each person who clones the code, must be able to do "node server.js" right after cloning code. No previous, "grunt build" or whatever.

This ensures that people non familiarized with those tools could get the project running as easier as it is right now.

2 -
If you decide to use Grunt (or Gulp, or whatever) I think you should consider open an issue for each task you want to perform since each task could be accomplished with different plugins.

Again, this is just my personal thoughts on this.

I've already make this to minify the scripts:

grep -o 'src="[^"]"' index.html | sed 's/src=//' | sed 's/?[0-9]//' | sed 's/"$/" /' | tr -d "\n" | xargs uglifyjs > app/app.js

But adding this to makefile will add an extra dependency on uglifyjs anyway, and can be handled on a better way and more flexible with grunt-usemin (I've no experience with Gulp) or some angular-related plugin.

from webogram.

zhukov avatar zhukov commented on May 22, 2024

1-
I agree. But there are 2 different tasks:

  1. To launch this project for personal use easily
  2. To modify its sources and launch server for testing.

First task may be completed by using packaged releases (https://github.com/zhukov/webogram/releases), even if build is rather complicated. But the second task may require build process in many cases. We can try to avoid them, e.g. using usemin and coffeescript in-brower compiler etc, but it's not that easy. So it may require Grunt/Gulp in the future.

2-
Currently I have lots of tasks to do, so I don't have enough time to deal with build system.

I personally liked Gulp description more, but never used it. I've found all the required plugins:

So I think as soon, as I deal with current problems I can start implementing it. Or may be anyone else if he'd like to do it earlier.

from webogram.

tehsis avatar tehsis commented on May 22, 2024

I've never used gulp on a real project yet. I'll make some initial config using those plugins during the weekend and send a PR.

I would also recommend jshint and imagemin (from #58)

from webogram.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.