ionic-team / ionic-team/ionic-framework

feat: Custom Elements Manifest

Open
#30,715 0 comments 1 reaction 0 assignees View on GitHub
type: feature request
Dominant language
TypeScript
Stars
52.7k
Forks
13.3k
Avg merge
1d 15h
Merged PRs (30d)
51

Description

### Prerequisites

- [x] I have read the [Contributing Guidelines](https://github.com/ionic-team/ionic-framework/blob/main/docs/CONTRIBUTING.md#creating-an-issue).
- [x] I agree to follow the [Code of Conduct](https://ionicframework.com/code-of-conduct).
- [x] I have searched for [existing issues](https://github.com/ionic-team/ionic-framework/issues) that already include this feature request, without success.

### Describe the Feature Request

[Custom Elements Manifest](https://custom-elements-manifest.open-wc.org/) is a file format that describes custom elements. This format will allow tooling and IDEs to give rich information about the custom elements in a given project.

### Describe the Use Case

Personally, I'm using this file format to generate friendly wrappers and documentation for all of these web components in elm code.

I think it'd be a worthwhile addition to your npm package. I won't bother opening a PR unless y'all agree.

### Describe Preferred Solution

It's a straightforward CLI command that can be added to the build process.
Adding the generated file to the npm package, and exposing it will do the trick.
```json
{
"globs": [
"core/src/components/**/*.tsx"
],
"exclude": [
"**/*.test.tsx",
"**/*.spec.tsx",
"**/test/**/*",
"**/tests/**/*",
"**/*.stories.tsx"
],
"outdir": ".",
"plugins": []
}
```
I used the above config in your codebase to generate what I needed.

### Describe Alternatives

Here's an example of using the CLI command in a build script:
https://github.com/quietui/quiet/blob/next/scripts/build.js#L61C1-L77C2

Exposing the file:
https://github.com/quietui/quiet/blob/next/package.json#L48

The exposed file:
https://www.npmjs.com/package/@quietui/quiet-browser?activeTab=code

### Related Code

_No response_

### Additional Information

_No response_

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.