https://github.com/eclipse-glsp/glsp-website-source
The website for GLSP
https://github.com/eclipse-glsp/glsp-website-source
Last synced: 6 months ago
JSON representation
The website for GLSP
- Host: GitHub
- URL: https://github.com/eclipse-glsp/glsp-website-source
- Owner: eclipse-glsp
- License: other
- Created: 2019-09-16T12:53:27.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2024-12-11T11:01:21.000Z (over 1 year ago)
- Last Synced: 2025-01-22T02:28:54.128Z (over 1 year ago)
- Language: Dockerfile
- Homepage: https://www.eclipse.dev/glsp
- Size: 37.4 MB
- Stars: 2
- Watchers: 5
- Forks: 9
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Sources of the GLSP Website
This page hosts the sources of [eclipse.dev/glsp](https://www.eclipse.dev/glsp).
We use the [Syna](https://github.com/okkur/syna) thema for [Hugo](https://gohugo.io/)
Please check the [Syna documentation](https://about.okkur.org/syna/docs/). The Syna theme heavily works with fragments, therefore the development differs a bit from a "normal" Hugo website.
## Quick start
### Open in VS Code dev container
To avoid the need to install hugo on development machines, a VS Code dev container is provided that runs hugo in a docker container.
* Get submodules `git submodule init && git submodule update`
* Open the repository folder in VS Code
* If not installed, install Microsoft's "Remote - Containers" extension with id `ms-vscode-remote.remote-containers`.
* Open this repository in VS Code as a [Dev Container](https://code.visualstudio.com/docs/remote/containers#_quick-start-open-an-existing-folder-in-a-container):
* Open command palette (`F1` or `Ctrl+Shift+P`)
* Run `Remote-Containers: Reopen in Container`
### Development
* Start Hugo server via `hugo server` for development or run task `Serve Drafts`
* Build the website via `hugo` for deployment (the public folder ist deployed then) or run task `Build`
## Overview
* `config.toml` contains the global config and menu items
* `content/_global` contains customization for global parts of the website, for example `footer`
* `content/_index` contains the landing page
* `content/XYZ/*` contains each reachable page. `index.md` is necessary to declare the page exists, while `content.md` defines its contents. Additional fragments can be added / overwritten etc.
* `static/***` contains static resources, for example images
* `archetypes` contains templates which are used when executing `hugo new`. Not too important but easier than copy & pase.
## How to create a new page
1. Either copy & paste an existing one, or execute `hugo new --kind page-bundle `
2. To add an entry to the menu, add a link to the page in `config.toml`
## Fancy elements
Check the [Syna Fragments](https://about.okkur.org/syna/fragments/) documentation for all provided fragments and how to use them.
## Sorting elements
To sort items you can use weight, a lower value typically means it is more to the top or left. However note that `weight = 0` is the same as undefined, so use at least `weight = 1`.
## Best practices
Check the example site provided with Syna in `themes/syna/exampleSite`