assemble / assemble.io

Website and documentation for Assemble.

Home Page:http://assemble.io/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Search

jonschlinkert opened this issue · comments

Add a section/page to assemble.io where users can search for helpers, boilerplates and middleware for Assemble.

Basically what I have in mind is something like these:

Anyone interested in tackling this?!

@jonschlinkert Absolutely. Just did a good deal of digging into gulp's implementation. It's dramatically better than the others. It consists of 3 major components:

  • plugins: an Angular app which also implements package blacklisting
  • registry: a super lightweight HTTP proxy that send requests to ElasticSearch
  • npm2es for listening on couchdb _changes and keeping es fresh

I can easily go ahead and clone plugins and fork registry. In order to actually get things up and running live, we'd need:

  • somewhere to run the proxy
  • an ES instance

Technically these could be the same box but it might just be easier to keep them separate. The Angular app can be deployed to gh-pages for free.

Qbox would probably be willing to sponsor

@bendrucker Nice ideas! I skimmed the projects, but didn't dig into them. Can you add some detail on where the modifications would need to be done to enable searching for Assemble specific modules? (e.g. at which stage/repo is everything else filtered out?)

I contacted Qbox to see if they do anything for open source projects.

awesome! looking forward to seeing what you come up with, let us know what you need from us

@doowb In ElasticSearch. The client application constructs the appropriate ES URL and querystring as well as the offset and limit:

https://github.com/gulpjs/plugins/blob/master/src/scripts/controller/pluginList.js#L30

The searching is done on the basis of npm keywords so we'd have to decide on appropriate keywords to use.

Cool. That's where I thought it was done. We'll still need a place to hose the npm2es module. @bendrucker do you have any recommendations on hosting this?

Nodejitsu offers 1 free instance of open source projects

Great! I'm talking to QBox tomorrow to discuss hosting the ES instance. I'll let you know when I know more.

Cool  — with stuff like this the important thing is always making sure that this kind of information survives when people go on vacation, move on from a project, etc. so there's not a mad hunt to find the person who has the Nodejitsu login :)

here is another, perhaps more straightforward implementation https://github.com/bower/search

Yeah bower's front end implementation is nice but if anything it has more (and certainly more complex) backend components powering it. Bower doesn't have a distinct registry by design. When you can assume all packages use npm it's a lot nicer to just rely on replicating the npm index.

yeah, agreed. I'm referring to the front-end only. I think we should assume all packages would be on npm.

Yup, definitely a fan of doing things with browserify. All these apps are a little sloppy (heavy controllers).

You have a clear idea of what we want to achieve .we're totally cool with you taking the lead on this. we have tons to do and this would be a big help. just let us know what you need.

almost forgot, you asked about keywords:

  • assemblemiddleware
  • assemblehelper
  • assembleboilerplate

These are the only ones that come to mind atm.

Will do. Keywords will be an easy fix if we choose to change/expand those at some point. That's what I like about the gulp approach — even though you're basically indexing all of npm, 99% of which will be a waste, we have the flexibility to change keywords at any time.

Setting up the server-side components isn't really blocking anything so I'll get moving on the front end this week.

@bendrucker I spoke with Ben from QBox and we have a box setup. I populated with the initial npm metadata using npm2es. Right now, QBox only has individually manageable accounts, but they plan on changing that soon so we could set something up for any core contributors. If you want to get a server setup to run npm2es and the registry proxy, go ahead and email me for the ES link so we can use it.

Let me know if there's anything else that we need to do.

Wouldn't it be the other way around? You send me the ES endpoint so I can set up npm2es and the proxy?—
Sent from Mailbox

On Tue, May 6, 2014 at 6:45 PM, Brian Woodward notifications@github.com
wrote:

@bendrucker I spoke with Ben from QBox and we have a box setup. I populated with the initial npm metadata using npm2es. Right now, QBox only has individually manageable accounts, but they plan on changing that soon so we could set something up for any core contributors. If you want to get a server setup to run npm2es and the registry proxy, go ahead and email me for the ES link so we can use it.

Let me know if there's anything else that we need to do.

Reply to this email directly or view it on GitHub:
#101 (comment)

@bendrucker @jonschlinkert @doowb Is there still interest in having search on the site?

let's close for now

On Mon, Feb 23, 2015 at 1:57 PM, Patrick Burtchaell <
notifications@github.com> wrote:

@bendrucker https://github.com/bendrucker @jonschlinkert
https://github.com/jonschlinkert @doowb https://github.com/doowb Is
there still interest in having search on the site?


Reply to this email directly or view it on GitHub
#101 (comment)
.

Jon Schlinkert
Core Team, LESS/Less.js
CEO, Sellside, Inc.
(513) 616-4335

github.com/jonschlinkert
linkedin.com/in/jonschlinkert http://www.linkedin.com/in/jonschlinkert
twitter.com/jonschlinkert http://www.twitter.com/jonschlinkert