mirror of https://github.com/explosion/spaCy.git
95 lines
4.8 KiB
Markdown
95 lines
4.8 KiB
Markdown
<a href="https://explosion.ai"><img src="https://explosion.ai/assets/img/logo.svg" width="125" height="125" align="right" /></a>
|
||
|
||
# spaCy Universe
|
||
|
||
The [spaCy Universe](https://spacy.io/universe) collects the many great resources developed with or for spaCy. It
|
||
includes standalone packages, plugins, extensions, educational materials,
|
||
operational utilities and bindings for other languages.
|
||
|
||
If you have a project that you want the spaCy community to make use of, you can
|
||
suggest it by submitting a pull request to this repository. The Universe
|
||
database is open-source and collected in a simple JSON file.
|
||
|
||
Looking for inspiration for your own spaCy plugin or extension? Check out the
|
||
[`project ideas`](https://github.com/explosion/spaCy/discussions?discussions_q=category%3A%22New+Features+%26+Project+Ideas%22)
|
||
discussion forum.
|
||
|
||
## Checklist
|
||
|
||
### Projects
|
||
|
||
✅ Libraries and packages should be **open-source** (with a user-friendly license) and at least somewhat **documented** (e.g. a simple `README` with usage instructions).
|
||
|
||
✅ We're happy to include work in progress and prereleases, but we'd like to keep the emphasis on projects that should be useful to the community **right away**.
|
||
|
||
✅ Demos and visualizers should be available via a **public URL**.
|
||
|
||
### Educational Materials
|
||
|
||
✅ Books should be **available for purchase or download** (not just pre-order). Ebooks and self-published books are fine, too, if they include enough substantial content.
|
||
|
||
✅ The `"url"` of book entries should either point to the publisher's website or a reseller of your choice (ideally one that ships worldwide or as close as possible).
|
||
|
||
✅ If an online course is only available behind a paywall, it should at least have a **free excerpt** or chapter available, so users know what to expect.
|
||
|
||
## JSON format
|
||
|
||
To add a project, fork this repository, edit the [`universe.json`](meta/universe.json)
|
||
and add an object of the following format to the list of `"resources"`. Before
|
||
you submit your pull request, make sure to use a linter to verify that your
|
||
markup is correct.
|
||
|
||
```json
|
||
{
|
||
"id": "unique-project-id",
|
||
"title": "Project title",
|
||
"slogan": "A short summary",
|
||
"description": "A longer description – *Mardown allowed!*",
|
||
"github": "user/repo",
|
||
"pip": "package-name",
|
||
"code_example": [
|
||
"import spacy",
|
||
"import package_name",
|
||
"",
|
||
"nlp = spacy.load('en')",
|
||
"nlp.add_pipe(package_name)"
|
||
],
|
||
"code_language": "python",
|
||
"url": "https://example.com",
|
||
"thumb": "https://example.com/thumb.jpg",
|
||
"image": "https://example.com/image.jpg",
|
||
"author": "Your Name",
|
||
"author_links": {
|
||
"twitter": "username",
|
||
"github": "username",
|
||
"website": "https://example.com"
|
||
},
|
||
"category": ["pipeline", "standalone"],
|
||
"tags": ["some-tag", "etc"]
|
||
}
|
||
```
|
||
|
||
| Field | Type | Description |
|
||
| --- | --- | --- |
|
||
| `id` | string | Unique ID of the project. |
|
||
| `title` | string | Project title. If not set, the `id` will be used as the display title. |
|
||
| `slogan` | string | A short description of the project. Displayed in the overview and under the title. |
|
||
| `description` | string | A longer description of the project. Markdown is allowed, but should be limited to basic formatting like bold, italics, code or links. |
|
||
| `github` | string | Associated GitHub repo in the format `user/repo`. Will be displayed as a link and used for release, license and star badges. |
|
||
| `pip` | string | Package name on pip. If available, the installation command will be displayed. |
|
||
| `cran` | string | For R packages: package name on CRAN. If available, the installation command will be displayed. |
|
||
| `code_example` | array | Short example that shows how to use the project. Formatted as an array with one string per line. |
|
||
| `code_language` | string | Defaults to `'python'`. Optional code language used for syntax highlighting with [Prism](http://prismjs.com/). |
|
||
| `url` | string | Optional project link to display as button. |
|
||
| `thumb` | string | Optional URL to project thumbnail to display in overview and project header. Recommended size is 100x100px. |
|
||
| `image` | string | Optional URL to project image to display with description. |
|
||
| `author` | string | Name(s) of project author(s). |
|
||
| `author_links` | object | Usernames and links to display as icons to author info. Currently supports `twitter` and `github` usernames, as well as `website` link. |
|
||
| `category` | list | One or more categories to assign to project. Must be one of the available options. |
|
||
| `tags` | list | Still experimental and not used for filtering: one or more tags to assign to project. |
|
||
|
||
To separate them from the projects, educational materials also specify
|
||
`"type": "education`. Books can also set a `"cover"` field containing a URL
|
||
to a cover image. If available, it's used in the overview and displayed on
|
||
the individual book page.
|