Giter Site home page Giter Site logo

frontend-packagers's People

Contributors

afc163 avatar benmorel avatar forbeslindesay avatar heff avatar niklv avatar radlikewhoa avatar ryanramage avatar timaschew avatar timoxley avatar tombyrer avatar vendethiel avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

frontend-packagers's Issues

curl

https://github.com/cujojs/curl CUjoJS Resource Loader

small, fast module and resource loader with dependency management. (AMD, CommonJS Modules/1.1, CSS, HTML, etc.)

volo feedback

Seems fairly accurate for volo's points, some small details:

  • Right now volo only does zipballs, not tarballs. Although this is easily fixed now that it is a plain node/npm package.
  • multiple "baseUrl" values: they are a result of me feeling out the best thing to use. I have settled on volo.baseDir more recently. The baseUrl thing comes from AMD loader configs, but in this context where a project is getting a dependency in its file system, baseDir makes more sense. I'm learning as I go, and will likely deprecate the other options over time.

On volo doing too much, I left this comment going more into that, but basically, creating a new project or downloading a dependency can both benefit from the github ID lookups and installs, so I really see them as the same thing. Similarly, it is useful to have some sort of makefile capability for setting up dependencies/new projects. It looks like component also has something for this. I am open to limiting the scope of it though for volo.

In #1, @visionmedia mentioned:

jam / volo / ender and the twitter thing coming soon are unfortunately all nearly identical and don't really solve any new problem, pretty much the same as https://github.com/visionmedia/asset

I see volo and component to be very similar, except volo assumes the same conventions that an AMD loader might use for a convention-based project layout, so the loading of installed dependencies is easy with that type of loader, and the build step handled by something like r.js optimizer. It is a decoupled system that I also thinks fits in well with ES harmony modules, which will allow dynamic loading.

So, volo create with a project that uses an AMD loader/builder gets whatever component may additionally add, particularly since many AMD loaders support loader plugins for things like text/html template loading. However, volo does not enforce a particular build philosophy on the runtime code, so still usable as a way to get code even if you do not use AMD or commonjs-style.

But these things are highly style driven. I'm hoping that if we get a good module support in ES harmony, then it will clear up some of these choices. My feeling right now: ES modules will behave at a high level similar to AMD, just without needing a function wrapper, and builds will not be required for doing front end dev.

./components

component install --out dir, though there's little reason to change this, it's just a directory name, that's like complaining about the ugly node_modules. Having no registry is dramatically better for several reasons:

  • github is more robust
  • github is faster (tarballs / git just slow things down...)
  • github is easy to mimic for internal private "registries"
  • using the "username/project" model prevents stupid names like seaport
  • using this model removes all ambiguity about where a package came from

I agree with the build step sucking, that's definitely a personal subjective thing, I'd hate to every have to write AMD-style code

clearify #responsibilities and some other things

Great Comparison, thanks ๐Ÿ‘

I have some questions and ideas:

https://github.com/wilmoore/frontend-packagers#responsibilities
It's not clear to me what the meaning of these things are:

  1. package management
  2. project bootstrapping
  3. project scaffolding
  4. build automation
  5. script/module loading
  6. compile/build
  • what is the difference between 2 and 3?
  • what does 4 means? a build tool with a watcher?
  • what is 5? component has a built-in module loader, or what does it mean?

https://github.com/wilmoore/frontend-packagers#development-dependencies
I would like to add some features of component with a PR. In component you can even add local JS and CSS files for test environment, here is an example

https://github.com/wilmoore/frontend-packagers#package-contents
component even works if a module brings it's own require. For instance mocha doing this and it works in component. Maybe mocha can be used as a test, to verify if it's possible ^^

https://github.com/wilmoore/frontend-packagers#package-contents
What you think about to add fonts and images
and especially URL rewriting in CSS files?

Add EnderJS

Haven't used it much, but Ender seems to have much of the same functionality as well. I'll see if I could run through it and put together a PR.

bowe changes

As an official author of bower, I would like to request a few changes to this document:

Custom installation path:

  • Bower now supports this feature with a .bowerrc file

Package installation sources:

  • Bower now supports zip and tar URL's

That's all for now :)
Thanks in advance

npm

NPM is a front end package manager. It should be mentioned on this list! Everyone should publish their front end modules on npm!

it's trivial to describe any javascript package using package.json

+ 'X Used by Popular Tools' listing

IMHO, it should be noted that (for example) Bower is used in Grunt/Yoman. I'm sure other popular tools use a certain other package managers. Could help people decide on what to pick up; best to stay within an ecosystem if limited by time/resources.

Sorry don't mean to flood with requests ;) Thought you weren't maintaining then saw your last issue addition.

Interactive HTML version

We are starting to out-grow the readme.md format as noted by #25.

  1. Select package managers for side-by-side comparison
  2. Sidebar notes on hover

change table layout?

Adding 4+ new packagers will make things slightly more cramped ;)
Not sure if keeping inside the README.md is best (will have to pivot tables or switch to list), or turning it into a HTML doc is wisest.

Should be resolved before new packagers are added...

Request addition

Since 0.5.0, bower supports local repositories. This is useful if people use a server to store the repos and access them by a shared folder.

Can this capability be added to the sources table?

Update bower performance table

Bower 1.x.x introduced a lot of performance improvements. Would it be possible to test it again and update the comparison table?

deAMDify -

https://github.com/jaredhanson/deamdify

This module is a browserify plugin that will transform AMD modules into Node.js-style modules so that they can be included in browser-ified bundles.
With this transform in place, Node and AMD modules can be freely intermixed, and the resulting bundle can be used without the need for a separate loader such as RequireJS.

Not sure where this will fit in...

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.