Skip to content

AmadeusITGroup/events

Repository files navigation

Amadeus Events

Multi-event website for Amadeus tech conferences and community events, hosted on GitHub Pages.

Live site: https://amadeusitgroup.github.io/events/

Upcoming Events

Past Events


🤖 AI Commands (Copilot Chat)

Command What it does
/create-event Create a new event website (with or without sessions JSON)
/update-event Update an existing event with finalized program data (from pretalx JSON or manually entered talks)
/remove-event Remove an event (runs remove_event.py interactively)

Just open Copilot Chat and use the command or describe what you want.
Prompt files live in .github/prompts/.


🖥️ CLI Commands (Terminal)

# Create a new event (with sessions)
python3 create_event.py sessions.json --name "My Event 2027" --slug "my-event-2027"

# Create a new event (CFP mode — no sessions yet)
python3 create_event.py --name "My Event 2027" --slug "my-event-2027" --dates "15-16 June 2027" --locations "Nice FR, London UK"

# Update an event with finalized program
python3 update_event.py sessions.json --slug "my-event-2027"

# If you don't have a pretalx JSON yet, build one manually first
python3 build_sessions_json.py --out sessions-manual.json
python3 update_event.py sessions-manual.json --slug "my-event-2027"

# Remove an event (interactive)
python3 remove_event.py

See CREATING_AN_EVENT.md for full details and options.


✏️ Manual Edits (no code needed)

Each event has a config.json file that controls what's displayed on the website.
Non-technical users can edit this file directly — changes appear on the next page load.

Editable fields in <event-folder>/config.json:

Field What it controls Example
eventName Event title shown everywhere "Amadeus Engineering Days 2026"
tagline Short subtitle in the hero section "Code. Share. Inspire."
description About section paragraph "Welcome to our annual..."
dates.display Date string shown on the page "29-30 April 2026"
locations Array of hosting sites ["Nice FR", "London UK"]
tracks[] Track cards (icon, name, description) {"icon": "🤖", "name": "AI & Data", "description": "..."}
sessionTypes[] Session type cards {"name": "Talk", "count": 42, "description": "..."}
stats[] Stat cards in the about section {"icon": "🎤", "number": "126+", "label": "Sessions"}
organizer Team name in nav/footer "DevRel"
contact Contact email for mailto links "devrel@amadeus.com"
colors Brand color overrides {"primary": "#26005a", "secondary": "#b650ff", "accent": "#ff58ac"}

Tip: In CFP mode, tracks and session types are pre-filled with examples. Replace them with your real ones, or wait until you run /update-event with the sessions JSON.

Repository Structure

/
├── index.html                          # Landing page (links to all events)
├── create_event.py                     # 🚀 Create event (one command → full event)
├── update_event.py                     # 🔄 Update event with finalized program
├── shared/                             # Shared assets used by all events
│   ├── styles-base.css                 # Common CSS (variables, nav, footer, buttons)
│   └── script-base.js                  # Common JS (dark mode, mobile menu, scroll)
├── engineering-days-2026/              # Example: Engineering Days 2026
│   ├── index.html                      # Event homepage
│   ├── program.html                    # Program with dynamic session loading
│   ├── styles.css                      # Event-specific styles
│   ├── script.js                       # Event-specific JS
│   ├── sessions.json                   # Session data (loaded at runtime)
│   ├── config.json                     # Event configuration/metadata
│   ├── generate_openfeedback.py        # OpenFeedback integration
│   └── openfeedback.json               # Generated feedback data
├── _template/                          # Reference template (used by script)
├── .github/
│   ├── copilot-instructions.md         # AI instructions for this repo
│   ├── prompts/
│   │   └── create-event.prompt.md      # Reusable Copilot skill for event creation
│   └── workflows/
│       ├── deploy.yml                  # GitHub Pages auto-deployment
│       └── update-openfeedback.yml     # Auto-regenerate OpenFeedback data
├── CREATING_AN_EVENT.md                # Detailed event creation guide
└── README.md                           # This file

How It Works

  • Zero build step — pure HTML/CSS/JS, served as static files
  • Dynamic programsprogram.html loads sessions from sessions.json at runtime with filters (day, track, type, room)
  • Self-contained events — each event folder can be deleted cleanly without affecting others
  • Automated generationcreate_event.py parses pretalx data and generates everything

Development

# Local preview
python3 -m http.server 8000
# Then open http://localhost:8000

Deployment

Pushing to main triggers automatic deployment via GitHub Actions → GitHub Pages.

Brand

Token Color Usage
Primary #26005a Deep purple — headings, navbar, hero backgrounds
Secondary #b650ff Bright purple — accents, hover states, highlights
Accent #ff58ac Pink — CTAs, badges, emphasis

Dark mode is supported via [data-theme="dark"] selectors.

About

Amadeus Engineering Days Landing Page

Resources

Code of conduct

Security policy

Stars

1 star

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors