This guide provides step-by-step instructions for adding new conference editions to the JSON Schema Conference website.
- Content Directory Structure
- 1. Create Edition Content File
- 2. Move Session Content
- 3. Add New Speaker Information
- Important Notes
- Best Practices
content/
├── _index.md
├── previous-editions/
│ ├── _index.md
│ ├── {year}.md
│ ├── {year}.md
│ └── ... (one file per edition)
├── archive-sessions/
│ ├── {year}/
│ │ ├── _index.md
│ │ ├── {session_name}.md
│ │ ├── {session_name}.md
│ │ ├── {session_name}.md
│ │ └── ... (one file per session)
│ └── ... (one directory per edition)
├── sessions/
│ ├── _index.md
│ ├── {session_name}.md
│ ├── {session_name}.md
│ ├── {session_name}.md
│ └── ... (current/main edition sessions)
├── faq/
│ └── index.md
├── partners/
│ ├── _index.md
│ └── {partner_type}/
├── schedule/
│ └── _index.md
└── speakers/
├── _index.md
├── {speaker_name}.md
├── {speaker_name}.md
└── ... (one file per speaker)
- Navigate to the
content/previous-editions/directory - Create a new markdown file named
YYYY.md(replace YYYY with the year) - Use the following template structure:
---
title: "JSON Schema Conference YYYY"
date: YYYY-MM-DD
year: YYYY
location: "Event Location"
summary: "Brief description of the conference edition"
sessionLink: "/archive-sessions/YYYY/"
---
Detailed description of the conference edition.
## Conference Highlights
- Key point 1
- Key point 2
- Key point 3
## Resources
- [Conference Website](https://conference.json-schema.org)
- [JSON Schema Organization](https://json-schema.org)
Additional information and links.- Navigate to the
content/archive-sessions/directory - Create a new directory named
YYYY/(replace YYYY with the year) - Create an
_index.mdfile in the new directory with the following structure:
---
title: "YYYY Conference Sessions"
editionTitle: "JSON Schema Conference YYYY"
editionLink: "/previous-editions/YYYY/"
---
Description of the sessions for this edition (For example, Browse through all sessions from the JSON Schema Conference YYYY. Click on a session to view details, watch the presentation, and access related resources.)- Move all session files from
content/sessions/tocontent/archive-sessions/YYYY/. Each session file should maintain structure below:
---
key: file-name-without-extension
title: Session Title
id: file-name-without-extension
format: talk
duration: total-duration-in-minutes
tags:
- talk
presentation: presentation/file-name.pdf
speakers_info:
- name: "Speaker Name"
company: "Company Name"
city: "City, Country"
photoURL: "/images/speakers/speaker-photo.jpg"
draft: false
---
Session description and content.- Navigate to the
public/speakersdirectory - For each speaker in the current conference:
- Check if the speaker already exists by searching for their name in the
speakers/directory - If the speaker does not exist:
- Create a new directory named after the speaker (e.g.,
utkarsh/) - Create an index.html file in their directory.
- Follow the existing speaker's index.html structure while updating the content with the new speaker's information
- Create a new directory named after the speaker (e.g.,
- Check if the speaker already exists by searching for their name in the
- Use lowercase for filenames
- Use hyphens for spaces
- Include the year in relevant filenames
- Always include required fields
- Refer to the existing files for the required fields
- Keep content organized by year
- Maintain consistent formatting across all files
- Use relative links for internal navigation
- Store images in the
static/images/directory - Use appropriate subdirectories for different types of media
- Optimize images before adding them
- After adding new content, test the website locally
- Verify all links work correctly
- Check that the content displays properly on different screen sizes
-
Content Consistency
- Maintain consistent formatting across all files
- Use the same date format throughout
- Follow the established naming conventions
-
Version Control
- Create a new branch for each conference edition
- Use descriptive commit messages
-
Content Review
- Proofread all content before publishing
- Verify all links are working
- Check for proper formatting
-
Accessibility
- Ensure all images have alt text
- Use proper heading hierarchy
-
Performance
- Optimize images before adding them
- Keep file sizes reasonable
- Use appropriate image formats
For any questions or issues, please contact the website maintainers or open an issue in the repository.