Creates a jetbrains-compatible plugin server with a given list of plugins
How-to use
Download the data
Use the script dl_data.py to fetch plugins metadata and data from jetbrains server, and save them where you want
Create the server
from fastapi import FastAPI
from jetbrains_plugin_server import create_plugin_server
from jetbrains_plugin_server.model.data_listing import FSDataListing
app: FastAPI = create_plugin_server(
FSDataListing("/data/myfolder"),
"https://myendpoint/plugins/{plugin_version_id}"
)
Then deploy it like you want
Use the server
Register the server in your IDE
- Press
Ctrl+Alt+Sto open settings and then select Plugins.- On the Plugins page, click the Settings button and select Manage Plugin Repositories….
- In the Custom Plugin Repositories dialog, click Add icon and specify your repository URL
- Click OK in the Custom Plugin Repositories dialog to save the list of plugin repositories.
- Click OK in the Settings dialog to apply the changes.
Tools
To fetch plugins specifications, versions and content from jetbrains to a local filesystem
cat myfile.txt
jb_plugin_download myfile.txt
To build a JSON cache to answer faster, using either a filesystem storage, an artifactory or an apache server
from jetbrains_plugin_server.model.catalog import CatalogSchema
catalog = CatalogSchema(data_listing=dl)
catalog.build()
Paths
/to get the readme OR the compliant xml content if url parambuildis provided/cacheto get the full JSON cache of the server/packagesto get a nicer view of the available packages/docsthe openapi spec of the app, provided by FastAPI
Metadata
Release files for jetbrains-plugin-server 0.2.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| jetbrains_plugin_server-0.2.2.tar.gz | 11.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| jetbrains_plugin_server-0.2.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 25.6 kB
Release files / jetbrains_plugin_server-0.2.2.tar.gz
| Download URL | jetbrains_plugin_server-0.2.2.tar.gz |
|---|---|
| Size | 11.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f25c93449760c4b9e771228fb5c4404353be9603ee894b8e98bc992dadcfd968
|
|
BLAKE2b-256 checksum How to use checksums |
49705c462080fc54b98d65c63ee25d9f2efc02eb85a989f0a4b6f30816b296f3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 24, 2026.
Transparency logRelease files / jetbrains_plugin_server-0.2.2-py3-none-any.whl
| Download URL | jetbrains_plugin_server-0.2.2-py3-none-any.whl |
|---|---|
| Size | 14.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
dbde6a335c53c6ce7dfbe53c468425002b649b78d126b8d8021d0dd8efe853d0
|
|
BLAKE2b-256 checksum How to use checksums |
ecb1aa03266cd099f13e83c13a599e76e6366b34888fce4c7f6fa22c30e5f39e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on May 24, 2026.
Transparency log