2016-10-31 21:04:15 +03:00
|
|
|
# spacy.io website and docs
|
2015-09-24 13:23:48 +03:00
|
|
|
|
2019-02-18 00:16:17 +03:00
|
|
|
![Netlify Status](https://api.netlify.com/api/v1/badges/d65fe97d-99ab-47f8-a339-1d8987251da0/deploy-status)
|
2019-02-17 23:59:52 +03:00
|
|
|
|
2022-11-22 18:16:11 +03:00
|
|
|
The styleguide for the spaCy website is available at
|
|
|
|
[spacy.io/styleguide](https://spacy.io/styleguide).
|
💫 Update website (#3285)
<!--- Provide a general summary of your changes in the title. -->
## Description
The new website is implemented using [Gatsby](https://www.gatsbyjs.org) with [Remark](https://github.com/remarkjs/remark) and [MDX](https://mdxjs.com/). This allows authoring content in **straightforward Markdown** without the usual limitations. Standard elements can be overwritten with powerful [React](http://reactjs.org/) components and wherever Markdown syntax isn't enough, JSX components can be used. Hopefully, this update will also make it much easier to contribute to the docs. Once this PR is merged, I'll implement auto-deployment via [Netlify](https://netlify.com) on a specific branch (to avoid building the website on every PR). There's a bunch of other cool stuff that the new setup will allow us to do – including writing front-end tests, service workers, offline support, implementing a search and so on.
This PR also includes various new docs pages and content.
Resolves #3270. Resolves #3222. Resolves #2947. Resolves #2837.
### Types of change
enhancement
## Checklist
<!--- Before you submit the PR, go over this checklist and make sure you can
tick off all the boxes. [] -> [x] -->
- [x] I have submitted the spaCy Contributor Agreement.
- [x] I ran the tests, and all new and existing tests passed.
- [x] My changes don't require a change to the documentation, or if they do, I've added all required information.
2019-02-17 21:31:19 +03:00
|
|
|
|
2022-11-23 03:33:20 +03:00
|
|
|
## Setup and installation
|
2016-10-31 21:04:15 +03:00
|
|
|
|
💫 Update website (#3285)
<!--- Provide a general summary of your changes in the title. -->
## Description
The new website is implemented using [Gatsby](https://www.gatsbyjs.org) with [Remark](https://github.com/remarkjs/remark) and [MDX](https://mdxjs.com/). This allows authoring content in **straightforward Markdown** without the usual limitations. Standard elements can be overwritten with powerful [React](http://reactjs.org/) components and wherever Markdown syntax isn't enough, JSX components can be used. Hopefully, this update will also make it much easier to contribute to the docs. Once this PR is merged, I'll implement auto-deployment via [Netlify](https://netlify.com) on a specific branch (to avoid building the website on every PR). There's a bunch of other cool stuff that the new setup will allow us to do – including writing front-end tests, service workers, offline support, implementing a search and so on.
This PR also includes various new docs pages and content.
Resolves #3270. Resolves #3222. Resolves #2947. Resolves #2837.
### Types of change
enhancement
## Checklist
<!--- Before you submit the PR, go over this checklist and make sure you can
tick off all the boxes. [] -> [x] -->
- [x] I have submitted the spaCy Contributor Agreement.
- [x] I ran the tests, and all new and existing tests passed.
- [x] My changes don't require a change to the documentation, or if they do, I've added all required information.
2019-02-17 21:31:19 +03:00
|
|
|
```bash
|
|
|
|
# Clone the repository
|
|
|
|
git clone https://github.com/explosion/spaCy
|
|
|
|
cd spaCy/website
|
|
|
|
|
2022-12-02 17:59:15 +03:00
|
|
|
# Switch to the correct Node version
|
|
|
|
#
|
|
|
|
# If you don't have NVM and don't want to use it, you can manually switch to the Node version
|
|
|
|
# stated in /.nvmrc and skip this step
|
|
|
|
nvm use
|
|
|
|
|
💫 Update website (#3285)
<!--- Provide a general summary of your changes in the title. -->
## Description
The new website is implemented using [Gatsby](https://www.gatsbyjs.org) with [Remark](https://github.com/remarkjs/remark) and [MDX](https://mdxjs.com/). This allows authoring content in **straightforward Markdown** without the usual limitations. Standard elements can be overwritten with powerful [React](http://reactjs.org/) components and wherever Markdown syntax isn't enough, JSX components can be used. Hopefully, this update will also make it much easier to contribute to the docs. Once this PR is merged, I'll implement auto-deployment via [Netlify](https://netlify.com) on a specific branch (to avoid building the website on every PR). There's a bunch of other cool stuff that the new setup will allow us to do – including writing front-end tests, service workers, offline support, implementing a search and so on.
This PR also includes various new docs pages and content.
Resolves #3270. Resolves #3222. Resolves #2947. Resolves #2837.
### Types of change
enhancement
## Checklist
<!--- Before you submit the PR, go over this checklist and make sure you can
tick off all the boxes. [] -> [x] -->
- [x] I have submitted the spaCy Contributor Agreement.
- [x] I ran the tests, and all new and existing tests passed.
- [x] My changes don't require a change to the documentation, or if they do, I've added all required information.
2019-02-17 21:31:19 +03:00
|
|
|
# Install the dependencies
|
|
|
|
npm install
|
|
|
|
|
|
|
|
# Start the development server
|
|
|
|
npm run dev
|
2016-10-31 21:04:15 +03:00
|
|
|
```
|
|
|
|
|
💫 Update website (#3285)
<!--- Provide a general summary of your changes in the title. -->
## Description
The new website is implemented using [Gatsby](https://www.gatsbyjs.org) with [Remark](https://github.com/remarkjs/remark) and [MDX](https://mdxjs.com/). This allows authoring content in **straightforward Markdown** without the usual limitations. Standard elements can be overwritten with powerful [React](http://reactjs.org/) components and wherever Markdown syntax isn't enough, JSX components can be used. Hopefully, this update will also make it much easier to contribute to the docs. Once this PR is merged, I'll implement auto-deployment via [Netlify](https://netlify.com) on a specific branch (to avoid building the website on every PR). There's a bunch of other cool stuff that the new setup will allow us to do – including writing front-end tests, service workers, offline support, implementing a search and so on.
This PR also includes various new docs pages and content.
Resolves #3270. Resolves #3222. Resolves #2947. Resolves #2837.
### Types of change
enhancement
## Checklist
<!--- Before you submit the PR, go over this checklist and make sure you can
tick off all the boxes. [] -> [x] -->
- [x] I have submitted the spaCy Contributor Agreement.
- [x] I ran the tests, and all new and existing tests passed.
- [x] My changes don't require a change to the documentation, or if they do, I've added all required information.
2019-02-17 21:31:19 +03:00
|
|
|
If you are planning on making edits to the site, you should also set up the
|
|
|
|
[Prettier](https://prettier.io/) code formatter. It takes care of formatting
|
|
|
|
Markdown and other files automatically.
|
|
|
|
[See here](https://prettier.io/docs/en/editors.html) for the available
|
|
|
|
extensions for your code editor. The
|
|
|
|
[`.prettierrc`](https://github.com/explosion/spaCy/tree/master/website/.prettierrc)
|
|
|
|
file in the root defines the settings used in this codebase.
|
2016-11-03 15:06:29 +03:00
|
|
|
|
2022-11-23 03:33:20 +03:00
|
|
|
## Building & developing the site with Docker
|
2022-01-21 01:02:13 +03:00
|
|
|
|
2022-11-23 03:05:24 +03:00
|
|
|
While it shouldn't be necessary and is not recommended you can run this site in a Docker container.
|
2022-09-11 23:04:00 +03:00
|
|
|
|
|
|
|
If you'd like to do this, **be sure you do _not_ include your local
|
|
|
|
`node_modules` folder**, since there are some dependencies that need to be built
|
|
|
|
for the image system. Rename it before using.
|
2022-01-21 01:02:13 +03:00
|
|
|
|
|
|
|
```bash
|
|
|
|
docker run -it \
|
|
|
|
-v $(pwd):/spacy-io/website \
|
|
|
|
-p 8000:8000 \
|
|
|
|
ghcr.io/explosion/spacy-io \
|
|
|
|
gatsby develop -H 0.0.0.0
|
|
|
|
```
|
|
|
|
|
2022-09-11 23:04:00 +03:00
|
|
|
This will allow you to access the built website at http://0.0.0.0:8000/ in your
|
|
|
|
browser, and still edit code in your editor while having the site reflect those
|
|
|
|
changes.
|
2022-01-21 01:02:13 +03:00
|
|
|
|
2022-09-11 23:04:00 +03:00
|
|
|
**Note**: If you're working on a Mac with an M1 processor, you might see
|
|
|
|
segfault errors from `qemu` if you use the default image. To fix this use the
|
|
|
|
`arm64` tagged image in the `docker run` command
|
2022-01-21 01:02:13 +03:00
|
|
|
(ghcr.io/explosion/spacy-io:arm64).
|
|
|
|
|
2022-11-23 03:33:20 +03:00
|
|
|
### Building the Docker image
|
2022-01-21 01:02:13 +03:00
|
|
|
|
|
|
|
If you'd like to build the image locally, you can do so like this:
|
|
|
|
|
|
|
|
```bash
|
|
|
|
docker build -t spacy-io .
|
|
|
|
```
|
|
|
|
|
2022-09-11 23:04:00 +03:00
|
|
|
This will take some time, so if you want to use the prebuilt image you'll save a
|
|
|
|
bit of time.
|
2022-01-21 01:02:13 +03:00
|
|
|
|
2022-11-23 03:33:20 +03:00
|
|
|
## Project structure
|
💫 Update website (#3285)
<!--- Provide a general summary of your changes in the title. -->
## Description
The new website is implemented using [Gatsby](https://www.gatsbyjs.org) with [Remark](https://github.com/remarkjs/remark) and [MDX](https://mdxjs.com/). This allows authoring content in **straightforward Markdown** without the usual limitations. Standard elements can be overwritten with powerful [React](http://reactjs.org/) components and wherever Markdown syntax isn't enough, JSX components can be used. Hopefully, this update will also make it much easier to contribute to the docs. Once this PR is merged, I'll implement auto-deployment via [Netlify](https://netlify.com) on a specific branch (to avoid building the website on every PR). There's a bunch of other cool stuff that the new setup will allow us to do – including writing front-end tests, service workers, offline support, implementing a search and so on.
This PR also includes various new docs pages and content.
Resolves #3270. Resolves #3222. Resolves #2947. Resolves #2837.
### Types of change
enhancement
## Checklist
<!--- Before you submit the PR, go over this checklist and make sure you can
tick off all the boxes. [] -> [x] -->
- [x] I have submitted the spaCy Contributor Agreement.
- [x] I ran the tests, and all new and existing tests passed.
- [x] My changes don't require a change to the documentation, or if they do, I've added all required information.
2019-02-17 21:31:19 +03:00
|
|
|
|
|
|
|
```yaml
|
|
|
|
├── docs # the actual markdown content
|
|
|
|
├── meta # JSON-formatted site metadata
|
2022-12-20 19:41:38 +03:00
|
|
|
| ├── dynamicMeta.js # At build time generated meta data
|
💫 Update website (#3285)
<!--- Provide a general summary of your changes in the title. -->
## Description
The new website is implemented using [Gatsby](https://www.gatsbyjs.org) with [Remark](https://github.com/remarkjs/remark) and [MDX](https://mdxjs.com/). This allows authoring content in **straightforward Markdown** without the usual limitations. Standard elements can be overwritten with powerful [React](http://reactjs.org/) components and wherever Markdown syntax isn't enough, JSX components can be used. Hopefully, this update will also make it much easier to contribute to the docs. Once this PR is merged, I'll implement auto-deployment via [Netlify](https://netlify.com) on a specific branch (to avoid building the website on every PR). There's a bunch of other cool stuff that the new setup will allow us to do – including writing front-end tests, service workers, offline support, implementing a search and so on.
This PR also includes various new docs pages and content.
Resolves #3270. Resolves #3222. Resolves #2947. Resolves #2837.
### Types of change
enhancement
## Checklist
<!--- Before you submit the PR, go over this checklist and make sure you can
tick off all the boxes. [] -> [x] -->
- [x] I have submitted the spaCy Contributor Agreement.
- [x] I ran the tests, and all new and existing tests passed.
- [x] My changes don't require a change to the documentation, or if they do, I've added all required information.
2019-02-17 21:31:19 +03:00
|
|
|
| ├── languages.json # supported languages and statistical models
|
|
|
|
| ├── sidebars.json # sidebar navigations for different sections
|
|
|
|
| ├── site.json # general site metadata
|
2022-11-23 03:22:27 +03:00
|
|
|
| ├── type-annotations.json # Type annotations
|
💫 Update website (#3285)
<!--- Provide a general summary of your changes in the title. -->
## Description
The new website is implemented using [Gatsby](https://www.gatsbyjs.org) with [Remark](https://github.com/remarkjs/remark) and [MDX](https://mdxjs.com/). This allows authoring content in **straightforward Markdown** without the usual limitations. Standard elements can be overwritten with powerful [React](http://reactjs.org/) components and wherever Markdown syntax isn't enough, JSX components can be used. Hopefully, this update will also make it much easier to contribute to the docs. Once this PR is merged, I'll implement auto-deployment via [Netlify](https://netlify.com) on a specific branch (to avoid building the website on every PR). There's a bunch of other cool stuff that the new setup will allow us to do – including writing front-end tests, service workers, offline support, implementing a search and so on.
This PR also includes various new docs pages and content.
Resolves #3270. Resolves #3222. Resolves #2947. Resolves #2837.
### Types of change
enhancement
## Checklist
<!--- Before you submit the PR, go over this checklist and make sure you can
tick off all the boxes. [] -> [x] -->
- [x] I have submitted the spaCy Contributor Agreement.
- [x] I ran the tests, and all new and existing tests passed.
- [x] My changes don't require a change to the documentation, or if they do, I've added all required information.
2019-02-17 21:31:19 +03:00
|
|
|
| └── universe.json # data for the spaCy universe section
|
2022-11-23 03:12:51 +03:00
|
|
|
├── pages # Next router pages
|
|
|
|
├── public # static images and other assets
|
2022-11-23 03:22:27 +03:00
|
|
|
├── setup # Jinja setup
|
💫 Update website (#3285)
<!--- Provide a general summary of your changes in the title. -->
## Description
The new website is implemented using [Gatsby](https://www.gatsbyjs.org) with [Remark](https://github.com/remarkjs/remark) and [MDX](https://mdxjs.com/). This allows authoring content in **straightforward Markdown** without the usual limitations. Standard elements can be overwritten with powerful [React](http://reactjs.org/) components and wherever Markdown syntax isn't enough, JSX components can be used. Hopefully, this update will also make it much easier to contribute to the docs. Once this PR is merged, I'll implement auto-deployment via [Netlify](https://netlify.com) on a specific branch (to avoid building the website on every PR). There's a bunch of other cool stuff that the new setup will allow us to do – including writing front-end tests, service workers, offline support, implementing a search and so on.
This PR also includes various new docs pages and content.
Resolves #3270. Resolves #3222. Resolves #2947. Resolves #2837.
### Types of change
enhancement
## Checklist
<!--- Before you submit the PR, go over this checklist and make sure you can
tick off all the boxes. [] -> [x] -->
- [x] I have submitted the spaCy Contributor Agreement.
- [x] I ran the tests, and all new and existing tests passed.
- [x] My changes don't require a change to the documentation, or if they do, I've added all required information.
2019-02-17 21:31:19 +03:00
|
|
|
├── src # source
|
|
|
|
| ├── components # React components
|
|
|
|
| ├── fonts # webfonts
|
|
|
|
| ├── images # images used in the layout
|
|
|
|
| ├── plugins # custom plugins to transform Markdown
|
|
|
|
| ├── styles # CSS modules and global styles
|
|
|
|
| ├── templates # page layouts
|
|
|
|
| | ├── docs.js # layout template for documentation pages
|
|
|
|
| | ├── index.js # global layout template
|
|
|
|
| | ├── models.js # layout template for model pages
|
|
|
|
| | └── universe.js # layout templates for universe
|
|
|
|
| └── widgets # non-reusable components with content, e.g. changelog
|
2022-11-23 03:22:27 +03:00
|
|
|
├── .eslintrc.json # ESLint config file
|
2022-12-02 17:59:15 +03:00
|
|
|
├── .nvmrc # NVM config file
|
|
|
|
| # (to support "nvm use" to switch to correct Node version)
|
|
|
|
|
|
2022-11-23 03:22:27 +03:00
|
|
|
├── .prettierrc # Prettier config file
|
2022-11-23 03:12:51 +03:00
|
|
|
├── next.config.mjs # Next config file
|
|
|
|
├── package.json # package settings and dependencies
|
|
|
|
└── tsconfig.json # TypeScript config file
|
💫 Update website (#3285)
<!--- Provide a general summary of your changes in the title. -->
## Description
The new website is implemented using [Gatsby](https://www.gatsbyjs.org) with [Remark](https://github.com/remarkjs/remark) and [MDX](https://mdxjs.com/). This allows authoring content in **straightforward Markdown** without the usual limitations. Standard elements can be overwritten with powerful [React](http://reactjs.org/) components and wherever Markdown syntax isn't enough, JSX components can be used. Hopefully, this update will also make it much easier to contribute to the docs. Once this PR is merged, I'll implement auto-deployment via [Netlify](https://netlify.com) on a specific branch (to avoid building the website on every PR). There's a bunch of other cool stuff that the new setup will allow us to do – including writing front-end tests, service workers, offline support, implementing a search and so on.
This PR also includes various new docs pages and content.
Resolves #3270. Resolves #3222. Resolves #2947. Resolves #2837.
### Types of change
enhancement
## Checklist
<!--- Before you submit the PR, go over this checklist and make sure you can
tick off all the boxes. [] -> [x] -->
- [x] I have submitted the spaCy Contributor Agreement.
- [x] I ran the tests, and all new and existing tests passed.
- [x] My changes don't require a change to the documentation, or if they do, I've added all required information.
2019-02-17 21:31:19 +03:00
|
|
|
```
|