https://github.com/haxefoundation/staging.summit.haxe.org
https://github.com/haxefoundation/staging.summit.haxe.org
Last synced: 4 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/haxefoundation/staging.summit.haxe.org
- Owner: HaxeFoundation
- Created: 2020-02-28T09:25:58.000Z (over 6 years ago)
- Default Branch: staging
- Last Pushed: 2020-03-06T16:01:09.000Z (over 6 years ago)
- Last Synced: 2025-06-06T03:41:52.712Z (about 1 year ago)
- Language: Haxe
- Size: 11.2 MB
- Stars: 0
- Watchers: 9
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Haxe Summit Website Generator

## Building
* You need Haxe and Haxelib.
* Install the dependencies with `haxelib install generate.hxml`.
* Generate the website using `haxe generate.hxml`.
The website is now available in the `out/` folder, you can launch it with `nekotools server -d out` and access it at .
## Adding a new event
* Create a folder `eventId/` in `data/`.
* Add the header's background image in `data/eventId/images/background.jpg`.
* Edit `data/current.txt` to `eventId` if you wish to make the event the default one when accessing the root url.
### Configuration
Create the file `data/eventId/config.json` with the following content:
* `address`: The event's venue's address.
* `earlyBirdEndDate`: The end date for the early bird tickets.
* `eventBriteId`: The eventbrite event id.
* `dates`: The event dates, `month start-end`.
* `mapUrl`: Iframe url for the venu map.
* `price`: Full ticket price, including the money symbol.
* `speakingLink`: Link where to apply for a talk.
* `speakingOpen`: Can people still apply for a talk.
* `stage`: The current stage: "EarlyPlanning", "TicketsOpen", "TicketsClosed", "EventOngoing" or "EventConcluded".
* `town`: The venue's town name.
* `year`: The event year.
* `zone`: The event zone, eg `US`, `EU`...
### Index sections
Create the following files to add their content into the corresponding index section:
* `data/eventId/content/intro.md`
* `data/eventId/content/speakup.md`
* `data/eventId/content/travel.md`
### News
The news are stored in `data/eventId/news.json`, the empty file should be `[]`.
To add an entry add at the beginning (the news need to be manually sorted anti-chronogically):
```json
{
"date": "the date when adding the entry",
"title: "the link's text",
"url": "Optional: the link's url"
}
```
### Adding a speaker
Edit `data/eventId/speakers.json` and add an entry:
```json
{
"id": "The speaker's id used as url and when linking the talks",
"image": "The speaker's photo filename",
"name": "The speaker's name",
"title": "The speaker's title",
"bio": "Short description about the speaker"
}
```
If the file doesn't exist the starting content should be `[]`.
Add the speaker's photo in `data/eventId/images/speakers/$image`.
### Adding a talk
Add a file named `id.md` in `data/eventId/talks`.
The first part of the file contains the talk metadata:
```yml
speaker: The speaker's id
title: The talk's title
description: Short description about the talk
---
```
The rest of the file contains the full length description of the talk, in markdown format.