130 lines
3.7 KiB
Markdown
130 lines
3.7 KiB
Markdown
# Astrolabe website
|
|
|
|
## Getting started
|
|
|
|
Requirements :
|
|
|
|
- Git
|
|
- Node.js (minimum version v12.15.0)
|
|
|
|
### Install
|
|
|
|
1. Clone or fork this repo: `git clone https://git.ouvaton.coop/astrolabe/SiteWebAstrolabe`
|
|
2. `cd` into the project directory and run `npm install`
|
|
3. Once all the dependencies are installed run `npm start`
|
|
4. Open your browser at `http://localhost:8080` and away you go!
|
|
|
|
### Deploy
|
|
|
|
1. Copy paste deploy.js file in two new files `deploy-preprod.js`and `deploy-prod.js`
|
|
2. Make sure to fill in correct platform information in the two files
|
|
3. Run `npm run deploy-preprod`to deploy to the pre-production platform
|
|
4. Run `npm run deploy-prod`to deploy to the production platform
|
|
|
|
## Terminal commands
|
|
|
|
### Serve the site locally
|
|
|
|
```bash
|
|
npm start
|
|
```
|
|
|
|
### Build a production version of the site
|
|
|
|
```bash
|
|
npm run prod
|
|
```
|
|
|
|
### Lint Sass
|
|
|
|
```bash
|
|
npm run sass:lint
|
|
```
|
|
|
|
### Compile Sass
|
|
|
|
```bash
|
|
npm run sass:process
|
|
```
|
|
|
|
## Content editing
|
|
|
|
All operations are based on the `src` folder as a root.
|
|
|
|
### Add a new post
|
|
|
|
A post is composed of a markdown file and optionally images.
|
|
|
|
There is two kinds of posts :
|
|
|
|
- News post
|
|
- Event post
|
|
|
|
#### Add a 'news' post
|
|
|
|
In the `posts`folder, create a new mardown file `example.md`(or copy paste one of the existing files)
|
|
|
|
Fill in the meta information :
|
|
|
|
1. `title:` the post heading
|
|
2. `date:` the publication date, if further than current date the post won't appear in the posts list until current date is met.
|
|
3. `type:` 'news' for news post
|
|
|
|
Then add the post content in plain mardown language. You can add images to your post, make sure to place them in the `images`folder.
|
|
|
|
#### Add an 'event' post
|
|
|
|
In the `posts`folder, create a new mardown file `example-date.md`(or copy paste one of the existing files). Use date in post file name to identify them easily (not mandatory).
|
|
|
|
Fill in the meta information :
|
|
|
|
1. `title:` the post heading
|
|
2. `date:` the publication date, if further than current date the post won't appear in the posts list until current date is met.
|
|
3. `time:` the time of the event.
|
|
4. `type:` 'news' for event post
|
|
|
|
Then add the post content in plain mardown language. You can add images to your post, make sure to place them in the `images`folder.
|
|
|
|
### Add a new member
|
|
|
|
In the `members`folder, create a new mardown file `name-surname.md`(or copy paste one of the existing files)
|
|
|
|
Fill in the meta information :
|
|
|
|
1. `name:` the full name of the member
|
|
2. `position:` job title
|
|
3. `positionInternal:` internal role if any
|
|
4. `date:` date of arrival in the coop
|
|
5. `profile:` picture of the member, make sure to place it in the `images/profiles/` folder
|
|
6. `personalSite:` website url if any
|
|
7. `socialMastodon:` profile url if any
|
|
8. `socialTwitter:` profile url if any
|
|
9. `socialLinkedin:` profile url if any
|
|
10. `url:` personal page url in the website, eg `/members/name-surname`
|
|
|
|
Then add the member bio or any content
|
|
|
|
### Customers & Sponsors
|
|
|
|
The two are listed on the home page in different section. There is maximum of four per section, in reversed order regarding the date of addition.
|
|
|
|
#### Add a new customer
|
|
|
|
In the `customers`folder, create a new mardown file `customer-name.md`(or copy paste one of the existing files)
|
|
|
|
Fill in the meta information :
|
|
|
|
1. `name:` the brand name of the customer
|
|
2. `thumbnail:` the customer brand logo, make sure to place it in the `images/customers/`folder
|
|
3. `url:` the customer website
|
|
|
|
#### Add a new sponsor
|
|
|
|
In the `sponsors`folder, create a new mardown file `sponsor-name.md`(or copy paste one of the existing files)
|
|
|
|
Fill in the meta information :
|
|
|
|
1. `name:` the brand name of the sponsor
|
|
2. `thumbnail:` the sponsor brand logo, make sure to place it in the `images/sponsor/`folder
|
|
3. `url:` the sponsor website
|