Description
Where webcomponents.org is at now
webcomponents.org was launched in a very different environment than we have today: the web component specs were at "v0" with v1 not even on the horizon yet, Bower was still relevant, the Polymer Library was the most common way web components were authored, and HTML Imports were the primary loading format.
We've kept webcomponents.org somewhat up-to-date by adding npm support, and support for analyzing Polymer 2, 3, and to some extent "vanilla" web components. But it has fallen behind on the ability to analyze non-Polymer web components like Stencil, LitElement, etc. And it's web components documentation is not prominent or complete enough. The community section is very out of date.
Problems with the current architecture
Lack of introduction and approachability
webcomponents.org is designed primarily as a catalog, and secondarily as a documentation site and blog. This means that the landing page starts with listing elements and element collections, and doesn't even explain what web components are. Given that there's no singular implementor or owner of web components, and therefore no official site like many frameworks and libraries have, webcomponents.org is about as close as we have, but it doesn't introduce potential users to the concepts and benefits.
Complicated and limited analysis/indexing pipeline
The indexing pipeline runs the Polymer Analyzer against source code to determine what elements a package contains and generate documentation and demos. This has a benefit in that often times component maintainers don't need to do anything to support webcomponents.org, but it limits the catalog to the elements that the Polymer Analyzer support, which obviously unfairly tilts the catalog towards the Polymer Library.
Low prominence of documentation
Not enough prominence and attention has been given to documentation. Without a central location for web components information, many libraries have had to duplicate documentation on shared foundational concepts like custom elements and shadow DOM, and few seem to link to webcomponents.org for this information.
What would a reboot look like?
We'd like to kick off a community-driven, collaborative reboot of webcomponents.org. Google can provide guidance, resources, and contributions, but we want the vision to be set, and work to be done, collaboratively with the growing web components community.
The reboot should probably not over-focus on the catalog aspect of the current site. There are several areas of need for the site and the community as a whole, including:
- A great landing page for web components
- Documentation for specs and patterns that apply to all web components
- A library-agnostic catalog
- Links to popular web component helper libraries and frameworks
- Links to tooling, configuration, and guides for users of common tools, eg Rollup, Webpack, Karma, Storybook, etc.
How should we go about this?
In order to have a collaborative effort we'll need a detailed plan and agreement across contributors, so that work from multiple contributors can actually proceed in an organized fashion.
The process could possibly look something like this, though the process itself is open to brainstorming:
- This issue is the call for ideas and a place to brainstorm.
- A requirements document as a markdown file in this repo, built via PRs.
- A detailed design document as a markdown file in this repo, built via PRs.
- Individual issues for specific questions.
- Implementation...