# Frog Collective Website

The repository contains the Frog Collective website implementation.

## Quickstart

To generate the website, use nox :

```bash
nox -s build
```

The website is generated in the build directory.

To iterate more rapidly, avoid rebuilding the virtualenv each time by running :

```bash
nox -R -s build
```

## Editor Documentation

The content of the website is stored in the "Content" directory.

### Adding news

News can be added by adding a markdown file in the content/news directory. Name
them with english-formatted date so that they are sorted chronologically in the
rendered website. The title is defined in the metadatas, in the field 'title',
the body of the news is the markdown document :

```markdown
---
title: Your news title
---

Mardown content for the news
```

Date used for the news is the date the file was created in git.

## Developper Documentation

### HTML generation

We use https://git.frog-collective.com/collectivit/jean-web to generate the
website. Jinja2 templates are stored in the src directory, and use the content
loaded from the 'content' folder to generate static pages. Content can be
markdown document with metadata, or json files.

### CSS
We use the BEM naming convention with the scheme

```css
.block--element__modifier
```

See https://getbem.com/naming/ for insigths on the BEM naming convention.

We use SASS as a CSS extension language (https://sass-lang.com/).

### Dev env

Install the following dependencies to be able to test the website locally:
```sh
npm install -g browser-sync
```
