Add an ecosystem/generators/plugins page
See original GitHub issuetldr; Create a page on donejs.com that displays plugins and generators created as part of the DoneJS ecosystem.
This was discussed on a recent live stream (53:31) and at a contributors meeting (43:35)
The Problem
DoneJS has an enthusiastic ecosystem of developers! Well, this is not the problem, the problem is we have done a poor job of sharing their work. Way back when we had a portal where users could share their projects and vote on others; a Reddit for DoneJS (then called JavaScriptMVC) stuff, if you will. Alas, that fell by the wayside and today we don’t have a good way of sharing people’s awesome projects.
This means:
- If someone builds a cool can-component they have to rely on word-of-mouth to get others to use it.
- If you are searching for a component for your needs, you might not find it and rebuild it yourself.
There are entire GitHub organizations dedicated to DoneJS plugins that most people don’t even know about, like this one:
The Solution
We can do better! Let’s add a page to donejs.com, under the Community heading, that provides a list of community generators and plugins.
Design
The design should be simple, but can consist of:
- The name of the plugin/generator
- The author
- A version number
I would mirror the design from similar sites like github.com and npmjs.org. Here’s what npm’s listing looks like:
Contributing
Learning from the past attempts, let’s make it easy for users to contribute new generators and plugins for the listing. I propose having a donejs-ecosystem repository that houses these lists.
Using a markdown format list is the easiest way for people to contribute. It should be as easy as editing a markdown file like so:
# Plugins
...
* [my-awesome-component](https://github.com/my-user/my-awesome-component)
Implementation
Now that we have bit-docs, it should be fairly simple to create a plugin that:
- Given the list of generators/plugins, queries npm and/or GitHub for metadata about the project
- Generates the HTML listing.
This should probably be implemented as a build-time plugin since that is your best change to query the server. Some parts, like the version number, might be better suited to be dynamically rendered in the client.
The goal of the implementation should be simplicity, however, so if using a bit-docs plugin proves to be too complex, then we can require more of this information from the user as part of the submission process.
Tasks
- - Get designs for what this page will look like, and what each listing should look like.
- - Decide on where the PRs should be submitted to. A new repo would be easier for users, but might sacrifice the continuous deployment we have with the donejs/donejs repo.
- - Implement any bit-docs plugins, if we decide to go that way.
- - Backfill with known community generators/plugins (with the author’s permission).
- - Write up a blog article announcing the new ecosystem portal.
Issue Analytics
- State:
- Created 7 years ago
- Reactions:2
- Comments:6 (5 by maintainers)
Top GitHub Comments
@matthewp meanwhile here’s my contribution: configurable typeahead (based on twitter’s typeahead) https://github.com/riescorp/donejs-typeahead
New projects created with
generator-donejs
will contain adonejs-{app|plugin|generator}
keyword via https://github.com/donejs/generator-donejs/pull/233. So now we can start curating DoneJS resources via the following tags:donejs-app
,donejs-plugin
, anddonejs-generator
.