Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/astropy/learn-astropy
The Learn Astropy homepage
https://github.com/astropy/learn-astropy
algolia astropy learn-astropy
Last synced: 2 months ago
JSON representation
The Learn Astropy homepage
- Host: GitHub
- URL: https://github.com/astropy/learn-astropy
- Owner: astropy
- License: bsd-3-clause
- Created: 2020-01-30T02:14:48.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2024-10-28T18:12:25.000Z (2 months ago)
- Last Synced: 2024-10-29T16:04:26.341Z (2 months ago)
- Topics: algolia, astropy, learn-astropy
- Language: JavaScript
- Homepage: https://learn.astropy.org
- Size: 105 MB
- Stars: 13
- Watchers: 8
- Forks: 14
- Open Issues: 27
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Astropy Learn
This repository hosts the homepage of the Astropy Learn project, https://learn.astropy.org and serves the content from the [astropy-tutorials](https://github.com/astropy/astropy-tutorials) repository. The site itself is built with [Gatsby](https://www.gatsbyjs.com/) and the [Algolia](https://www.algolia.com) search service. Records for the Algolia database are curated and formatted by the [learn-astropy-librarian](https://github.com/astropy/learn-astropy-librarian) app.
## Developer guide
### Initial set up
Create a fork on https://github.com/astropy/learn.
```bash
npm install
```### Run a development server
You can run a development server that will serve the site and reload as you develop the app:
```bash
npm run develop
```By default the app is hosted at http://localhost:8000. You can also interact with the GraphQL data layer by browsing
### Build for production
```bash
npm run build
```Preview the built site by running:
```bash
npm run serve
```### Linting and autoformatting
This app uses ESLint to lint JavaScript, which in turn runs Prettier to format JavaScript. The configuration is based on [wesbos/eslint-config-wesbos](https://github.com/wesbos/eslint-config-wesbos).
A Git pre-commit hooks runs both ESLint and Prettier and automatically lints and reformats code before every commit. These hooks are run by [husky](https://typicode.github.io/husky/#/) and should already be installed when you ran `npm install`.
To manually lint the code base:
```bash
npm run lint
```To also fix issues and format the code base:
```bash
npm run lint:fix
```Ideally your editor will also apply eslint/prettier on save, though these commands are handy as a fallback.
### About the node version
This project is intended to be built with a Node.js version that's encoded in the [`.nvmrc`](./.nvmrc) file. To adopt this Node version, we recommend installing and using the [node version manager](https://github.com/nvm-sh/nvm).
Then you can use the preferred node version by running `nvm` from the project root:
```sh
nvm use
```### Additional resources for developers
Learn more about Gatsby:
- [Documentation](https://www.gatsbyjs.com/docs/?utm_source=starter&utm_medium=readme&utm_campaign=minimal-starter)
- [Tutorials](https://www.gatsbyjs.com/tutorial/?utm_source=starter&utm_medium=readme&utm_campaign=minimal-starter)
- [Guides](https://www.gatsbyjs.com/tutorial/?utm_source=starter&utm_medium=readme&utm_campaign=minimal-starter)
- [API Reference](https://www.gatsbyjs.com/docs/api-reference/?utm_source=starter&utm_medium=readme&utm_campaign=minimal-starter)
- [Plugin Library](https://www.gatsbyjs.com/plugins?utm_source=starter&utm_medium=readme&utm_campaign=minimal-starter)
- [Cheat Sheet](https://www.gatsbyjs.com/docs/cheat-sheet/?utm_source=starter&utm_medium=readme&utm_campaign=minimal-starter)Learn more about Algolia:
- [Documentation](https://www.algolia.com/doc/)
- [React instantsearch](https://www.algolia.com/doc/guides/building-search-ui/what-is-instantsearch/react/)