I have been experimenting with a tool called volo:

https://github.com/volojs/volo

It is a tool to bootstrap a new projects from project templates on
github, and install dependencies. I'm trying to see how far it works
by using github as the package repository. I know in the grand vision
some companies will want to run their own private repositories, and I
think that still works with this system, it just means having that
kind of repository implement the parts of the github API used by the
client tool. It is a pretty simple API that is used too.

The big thing though is that it means for the default simple case
there is already a robust repo available, and the ability to use forks
has already been proven useful for requirejs, since the amdjs group is
running forks of underscore and backbone.

I also documented the rules that "volo add" uses to know what to take
out of a tar.gz that is fetched from github for a user/repo/versiontag
combo:

https://github.com/volojs/volo/wiki/add-dependency-rules

The important thing is that it tries to only extract what is needed,
but not keep things like test directories.

I am able to install dojo with this system. For node/commonjs
packages, it will do AMD conversion on them. For plain "browser
globals" scripts, if "depends" and "exports" is passed, it will wrap
them in AMD with dependencies and export a module value.

What it does not do right now is fetch nested dependencies. I talk
about that a bit in that add-dependency-rules wiki page above though.

Sharing this in case we can coordinate on some things. Feel free to
point out problems with the approach too.

James

Search Discussions

Related Discussions

Discussion Navigation
viewthread | post
Discussion Overview
groupdojo-contributors @
categoriesdojo
postedFeb 3, '12 at 12:56a
activeFeb 3, '12 at 12:56a
posts1
users1
websitedojotoolkit.org

1 user in discussion

James Burke: 1 post

People

Translate

site design / logo © 2021 Grokbase