Back to the catalog

UNM-CARC/foss · docs

A self-paced course that teaches researchers core open-science skills: open science, data management, the command line, LLMs, version contro

Open source Repository Open in the app JSON README (API)

About

# Foundational Open Science Skills (FOSS) { .carc-visually-hidden }

<div class="carc-hero" markdown>

<p class="carc-hero__title">Foundational Open Science Skills</p>

<p class="carc-hero__tagline">A self-paced course in the open-science skills every researcher needs — from FAIR data and the command line to Git, containers, HPC, and the cloud.</p>

<div class="carc-actions" markdown>
[:material-rocket-launch: Start lesson 1](lessons/01-open-science.md){ .md-button .md-button--primary }
[:material-clipboard-check-outline: Before you start](course/setup.md){ .md-button }
[:material-format-list-numbered: All lessons](lessons/index.md){ .md-button }
[:material-github: Source on GitHub](https://github.com/UNM-CARC/foss){ .md-button target=_blank }
</div>

</div>

<div class="grid cards" markdown>

- :material-calendar-check:{ .lg .middle } __Course information__

---

Accounts and software to set up first, the schedule of the last live
offering, the code of conduct, and a glossary of terms

Details

Kind
OKF bundles
Topic
Version control
Publisher
unm-carc
Origin
okf_github
Category
dados
Version
0.2
Last push
2026-09-11T13:53:57Z
Repository state
ativo
Language
Python
License
NOASSERTION
Added
2026-09-13 14:03:47
Updated
2026-09-13 14:03:47
Origin id
UNM-CARC/foss:docs/index.md

README

# Foundational Open Science Skills (FOSS)

A self-paced course that teaches researchers core open-science skills — open
science, data management, the command line, LLMs, version control, software
environments, containers, HPC, and CyVerse cloud computing — published by the
[UNM Center for Advanced Research Computing (CARC)](https://carc.unm.edu) at
**<https://unm-carc.github.io/foss/>**.

The course is adapted from [CyVerse](https://cyverse.org)'s
[Foundational Open Science Skills](https://github.com/CyVerse-learning-materials/foss)
under CC BY 4.0. It is built with [Zensical](https://zensical.org), styled
after the [CARC documentation](https://carc.unm.edu/docs/), and structured as
an [Open Knowledge Format (OKF) v0.2](https://github.com/GoogleCloudPlatform/open-knowledge-format)
knowledge bundle so the content is first-class for both humans and AI agents.

## Quick start

```bash
python3 -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt   # zensical + pyyaml (Python 3.11+)
zensical serve                    # live preview at http://localhost:8000
zensical build --clean            # static site in ./site
```

## Repository layout

```
├── zensical.toml              # Site configuration (theme, nav, extensions)
├── docs/                      # The OKF knowledge bundle + site content
│   ├── index.md               # Landing page (declares okf_version: "0.2")
│   ├── log.md                 # OKF update log (reserved filename)
│   ├── course/                # Setup, dated schedule, code of conduct, glossary
│   ├── lessons/               # Lessons 01–09 plus extras
│   ├── capstone/              # Capstone project guidance
│   ├── about/                 # Credits, contributing, guidance for AI agents
│   ├── assets/                # Images, logos, and the Nextflow tutorial files
│   ├── stylesheets/extra.css  # UNM cherry + turquoise theme
│   └── llms.txt, llms-full.txt  # Generated agent indexes (do not edit)
├── scripts/
│   ├── okf_validate.py            # OKF v0.2 conformance checker (CI)
│   ├── check_links.py             # Links, images, and nav coverage (CI)
│   ├── gen_llms_txt.py            # Builds docs/llms.txt + docs/llms-full.txt
│   ├── postbuild_agent_surface.py # Markdown mirror, OKF meta tags, robots.txt
│   └── externalize_links.py       # Adds {target=_blank} to external links
├── MIGRATION.md               # Old foss.cyverse.org URLs -> new URLs
├── AGENTS.md / CLAUDE.md      # Rules for coding agents working in this repo
└── .github/workflows/docs.yml # Validation + GitHub Pages deployment
```

## Machine readability (OKF)

Every content page carries YAML frontmatter with:

- `type` — `Lesson`, `Guide`, `Reference`, `Policy`, or `Schedule` (required by OKF)
- `title`, `description`, `tags` — used by search, indexes, and agents
- `generated: { by, at }` — who or what produced the current content
- `sources` — provenance links to the exact upstream CyVerse file and commit,
  with `last_modified` from git history
- `status` / `stale_after` — lifecycle markers (the course schedule records a
  dated offering and carries a `stale_after` date)

Pages migrated by an agent are intentionally **unverified** (no `verified`
key). When CARC staff review a page, they add:

```yaml
verified: { by: "human:<netid>", at: "2026-XX-XXT00:00:00Z" }
```

The deployed site is directly consumable by AI agents:

- `/llms.txt` ([convention](https://llmstxt.org)) — linked outline;
  `/llms-full.txt` — the full corpus with frontmatter in one file.
- **Markdown mirror**: any page URL + `index.md` returns that page's source
  with OKF frontmatter (e.g. `/lessons/05-version-control/index.md`).
- Rendered pages carry `<link rel="alternate" type="text/markdown">` and
  `okf:*` meta tags; `robots.txt` advertises all of the above.
  `docs/about/ai-agents.md` is the human- and agent-readable guide.

After content changes, regenerate the indexes (CI fails on drift) and check
the bundle:

```bash
python scripts/okf_validate.py docs
python scripts/check_links.py docs
python scripts/gen_llms_txt.py
zensical build --clean && python scripts/postbuild_agent_surface.py site
```

## Credits

FOSS was created by CyVerse at the University of Arizona. Cite the original
course as:

> Michele Cosi, Jeffrey K. Gillan, Tyson L. Swetnam. (2024, May 2).
> CyVerse-learning-materials/foss: FOSS 2024 Spring. Zenodo.
> <https://doi.org/10.5281/zenodo.11105956>

CyVerse is funded by the US National Science Foundation (awards DBI-0735191,
DBI-1265383, and DBI-1743442). See
[docs/about/credits.md](docs/about/credits.md) for authors, funding, and the
list of changes made in this adaptation. Content is licensed
[CC BY 4.0](LICENSE).

## Deployment

Pushing to `main` on [UNM-CARC/foss](https://github.com/UNM-CARC/foss) runs
OKF validation and the link check, verifies the llms.txt indexes are current,
builds the site, adds the agent surface, and deploys to GitHub Pages at
<https://unm-carc.github.io/foss/> via `.github/workflows/docs.yml`. The
workflow enables Pages automatically (`configure-pages` with
`enablement: true`); if the first deploy fails on permissions, set
Settings → Pages → Source to "GitHub Actions" once.

More