Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

馃 Re-think our Categories #1135

Open
3 of 4 tasks
jefftriplett opened this issue Apr 15, 2024 · 5 comments
Open
3 of 4 tasks

馃 Re-think our Categories #1135

jefftriplett opened this issue Apr 15, 2024 · 5 comments

Comments

@jefftriplett
Copy link
Contributor

Django Packages currently has four categories:

  • Apps (4,142): Small components used to build projects. An app is anything that is installed by placing in settings.INSTALLED_APPS.
  • Frameworks (189): Large efforts that combine many python modules or apps. Examples include Django, django-cms, and Mezzanine. Most CMSes fall into this category, and so do storefronts.
  • Projects (229): This is for individual projects such as Django Packages, DjangoProject.com, and others.
  • Other (743): Other are not installed by settings.INSTALLED_APPS, are not frameworks or sites but still help Django in some way.

Now that "Other" is our second-biggest category, I wonder if we should dive into that a little and figure out if we should have a fifth category.

I suspect we have a mix of general Python third-party apps like ruff, black, and celery which might be of value if they are on pypi vs. awesome-django which is a good community resource.

Also, would Wagtail make a good Category or Django CMS because they both have dedicated pypi trove classifiers?

@ryancheley
Copy link
Member

@jefftriplett I like this idea a lot. What if there was a category for General Purpose Python Libraries for stuff like ruff, black, etc.

what would be the best / easiest way to get the packages from the Other category to do an analysis of their various attributes?

@jefftriplett
Copy link
Contributor Author

@ryancheley Packages support trove classifiers if we want to get fancy.

We should also figure out a good way to create a bigger test database to work off of. That might help us run some local stats on packages and grids.

@saadmk11
Copy link
Member

We should also figure out a good way to create a bigger test database to work off of. That might help us run some local stats on packages and grids.

I usually use the APIv4 to fetch data from djangopackages.org locally and populate the database with a script, It works quite well for me if I need to test (rarely) with larger datasets.

@ryancheley
Copy link
Member

I did a cursory review of the Other category and found:

  • 94 packages have Template in their description
  • 58 packages have REST in their description
  • 3 have both Template and REST in their description

It seems like one or both of those might be good categories.

For the Django CMS / Wagtail how to we help people know when to add a package to one of those categories versus Frameworks?

@jefftriplett
Copy link
Contributor Author

Here is another datapoint based on the the pypi url:

>>> Package.objects.all().count()
5308
>>> Package.objects.exclude(pypi_url__in=[None, ""]).count()
4297

R: For the Django CMS / Wagtail how to we help people know when to add a package to one of those categories versus Frameworks?

I'm not sure. It feels like those two are big enough (they even have pypy trove classifier tags) that we could enforce an opinion to make it easier?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants