Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
51 changes: 51 additions & 0 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
name: Publish to GitHub Pages

on:
push:
branches:
- main
pull_request:
branches:
- main
workflow_dispatch:

permissions:
contents: read
pages: write
id-token: write

concurrency:
group: "pages"
cancel-in-progress: false

jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Setup Quarto
uses: quarto-dev/quarto-actions/setup@v2
with:
version: pre-release

- name: Render Quarto Project
run: quarto render

- name: Upload artifact
uses: actions/upload-pages-artifact@v3
with:
path: _site

deploy:
if: github.event_name != 'pull_request'
needs: build
runs-on: ubuntu-latest
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
/_site/
/.quarto/
155 changes: 155 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,155 @@
# Contributing to Format Landscape

Thank you for your interest in contributing to the Format Landscape project! This guide will help you understand how to add or update content.

## Content Organization

The repository contains Quarto Markdown (`.qmd`) files that are automatically converted to HTML and published to GitHub Pages.

### Main Pages

- `index.qmd` - Landing page with overview and navigation
- `serialization-formats.qmd` - General overview of common serialization formats
- `*-physics.qmd` - Domain-specific pages for each physics area

### Supporting Files

- `_quarto.yml` - Quarto configuration (navigation, theme, settings)
- `styles.css` - Custom CSS styling
- `.github/workflows/publish.yml` - CI/CD automation
- `README.md` - Repository documentation

## How to Contribute

### Adding a New Format or Resource

1. **Identify the relevant page**: Determine which physics domain or the general serialization page is most appropriate

2. **Edit the `.qmd` file**: Add your content following the existing structure:
- Use appropriate markdown headers (`##`, `###`)
- Include links to official websites/repositories
- Provide brief, clear descriptions
- Mention key features and use cases

3. **Follow the existing format**:
```markdown
### Format Name
- **Website**: [URL](URL)
- **Description**: Brief description
- **Use Cases**: Where it's used
- **Key Features**: Notable characteristics
```

4. **Test your changes locally** (optional but recommended):
```bash
quarto preview
```

5. **Submit a pull request**: Once you're satisfied with your changes

### Adding a New Physics Domain

If you need to add an entirely new physics domain:

1. **Create a new `.qmd` file**: e.g., `quantum-computing.qmd`

2. **Follow the template** from existing domain pages:
- Front matter with title
- Introduction section
- Organized sections for different types of formats/tools
- Related Resources section
- External Links section

3. **Update `_quarto.yml`**: Add your new page to the navigation menu

4. **Update `index.qmd`**: Add a link to your new page

5. **Cross-reference**: Add links from related pages

## Content Guidelines

### Quality Standards

- **Accuracy**: Ensure all information is correct and up-to-date
- **Relevance**: Focus on formats and DSLs actually used in the physics community
- **Clarity**: Write clearly and concisely
- **Links**: Provide working links to official sources when possible
- **Neutral tone**: Maintain an objective, educational tone

### Markdown Style

- Use proper markdown headers (`#`, `##`, `###`)
- Use bullet points for lists
- Use **bold** for emphasis on key terms
- Use `code blocks` for technical terms
- Include links using `[text](URL)` format

### Structure

Each domain page should include:

1. **Introduction**: Brief overview of the domain and its data needs
2. **Main sections**: Organized by format type or use case
3. **Best Practices**: Guidelines for using formats in the domain
4. **Related Resources**: Links to other relevant pages
5. **External Links**: Links to organizations, standards bodies, etc.

## Quarto Markdown Features

You can use Quarto-specific features:

- **Code blocks** with syntax highlighting
- **Callout blocks** for notes/warnings
- **Cross-references** between pages
- **Tables** and **figures**

See [Quarto documentation](https://quarto.org/docs/authoring/markdown-basics.html) for more details.

## Local Development

### Prerequisites

1. Install Quarto: https://quarto.org/docs/get-started/

### Building Locally

```bash
# Preview (with live reload)
quarto preview

# Render to HTML
quarto render
```

The rendered site will be in the `_site` directory.

### Checking Your Changes

Before submitting a PR:

1. Preview your changes locally
2. Check that all links work
3. Verify cross-references to other pages
4. Ensure the navigation works correctly

## Automated Checks

When you submit a pull request:

- GitHub Actions will automatically build the site
- You can preview the build in the Actions tab
- Any build errors will be reported

## Questions?

If you have questions about contributing, please:

1. Check existing issues for similar questions
2. Open a new issue with your question
3. Tag it appropriately (e.g., `question`, `documentation`)

## License and Attribution

By contributing, you agree that your contributions will be part of the open educational resource that is Format Landscape.

Thank you for helping make scientific data formats more accessible!
61 changes: 60 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,61 @@
# Format-Landscape
This public repository gathers links and resources relevant for the project

This repository gathers links and resources on **serialization formats** and **domain-specific languages (DSLs)** used in various physics domains.

## About

Format Landscape is a collection of Markdown documents that provides an organized overview of data formats, file formats, and domain-specific languages used across different areas of physics research:

- **Lattice Physics** - Lattice QCD and related simulations
- **Hadron Physics** - Hadron structure and interactions
- **Nuclear Physics** - Nuclear structure and reactions
- **Astrophysics** - Astronomical observations and cosmology
- **Laser Physics** - Laser-plasma interactions and ultrafast phenomena
- **Particle Physics** - High-energy particle physics experiments
- **Neutrino Physics** - Neutrino experiments and simulations

## Website

The website is automatically built from the Markdown source files using [Quarto](https://quarto.org/) and deployed to GitHub Pages.

Visit the live site at: **https://democratizing-models-project.github.io/Format-Landscape/**

## Local Development

To build and preview the site locally:

1. Install Quarto: https://quarto.org/docs/get-started/
2. Clone this repository
3. Run `quarto preview` in the repository root
4. Open your browser to the provided local URL

To render the site:
```bash
quarto render
```

The output will be in the `_site` directory.

## Contributing

Contributions are welcome! To add information about a format or correct existing content:

1. Fork this repository
2. Edit the relevant `.qmd` files
3. Submit a pull request

## Structure

- `index.qmd` - Main landing page
- `serialization-formats.qmd` - Overview of common serialization formats
- `*-physics.qmd` - Domain-specific pages for each physics area
- `_quarto.yml` - Quarto configuration
- `.github/workflows/publish.yml` - CI/CD workflow for automatic deployment

## License

This is an open educational resource. Content is provided as-is for the benefit of the scientific community.

## Part of

This project is part of the **Democratizing Models Project**, aimed at making scientific software and data more accessible and interoperable.
41 changes: 41 additions & 0 deletions _quarto.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
project:
type: website
output-dir: _site

website:
title: "Format Landscape"
navbar:
left:
- href: index.qmd
text: Home
- href: serialization-formats.qmd
text: Serialization Formats
- text: Physics Domains
menu:
- href: lattice-physics.qmd
text: Lattice Physics
- href: hadron-physics.qmd
text: Hadron Physics
- href: nuclear-physics.qmd
text: Nuclear Physics
- href: astro-physics.qmd
text: Astro Physics
- href: laser-physics.qmd
text: Laser Physics
- href: particle-physics.qmd
text: Particle Physics
- href: neutrino-physics.qmd
text: Neutrino Physics
sidebar: false
page-footer:
left: "Format Landscape - A collection of serialization formats and DSLs for physics"
right: "Built with Quarto"

format:
html:
theme: cosmo
css: styles.css
toc: true
toc-depth: 3
code-copy: true
code-overflow: wrap
Loading