robatwilliams / es-compat

Check JavaScript code compatibility with target runtime environments
MIT License
64 stars 13 forks source link

Popularity and usage monitoring #94

Closed robatwilliams closed 5 months ago

robatwilliams commented 5 months ago

The ESLint plugin gets ~3k downloads a week, and the CLI tool ~800. The project has 55 stars. I don't really have an idea how many projects are using this or how useful it is to them (i.e. is it catching problems, or is it just installed because they thought they should have it). Without that, I'm not sure whether my continued time spent maintaining this project is worth it for anything more than my own interest.

NPM download counts are a poor measure. It shows downloads in the past 7 days, broken down by version. I've no idea how much of these are mirrors or uncached CI servers.

I don't believe there are any known good solutions to this for NPM packages. Tools such as Yeoman do "phone home" with usage data, but that's not really expected of NPM packages. This library implemented a file download so they could count installs, it didn't work well and caused some outrage.

Things to think about:

Being an ESLint plugin, this is going to be a direct dependency of users' application projects - they know they're using it. Perhaps a setting could allow opting-in. It would likely need to be mandatory to specify true/false otherwise most users would probably ignore it. If every plugin did this it would be messy. Doesn't seem nice.

In conclusion (so far) I think it's desirable but I don't have any good ideas on how to do it.

robatwilliams commented 4 months ago

Linux Foundation efforts - https://www.helpnetsecurity.com/2022/03/03/open-source-application-libraries/

robatwilliams commented 2 months ago

Now gets 10k/week. Don't know why; nobody promoted it and I didn't add any new super attractive feature.

Trend: https://npmtrends.com/eslint-plugin-ecmascript-compat

Breakdown of versions: https://www.npmjs.com/package/eslint-plugin-ecmascript-compat?activeTab=versions