Section recipes¶
These recipes use composed pages: list all pages in
pageFiles, then add the snippets below under a page's sections. Strings are
English-only for brevity; use { pt: ..., en: ... } for bilingual text.
Examples describe fictional work. Replace URLs, people, logos and publication
metadata with your own material.
About page with a circular photograph¶
Set the page's header: false because profile supplies its main heading.
Save your photograph in public/images/portrait.jpg and add:
- type: profile
title: Example Researcher
eyebrow: Scientific computing
text: I work on numerical methods and scientific software.
image:
src: /images/portrait.jpg
alt: Portrait of Example Researcher
shape: circle
position: [50, 35]
caption: Photograph by Example Photographer
Omit shape to preserve the original rectangular aspect ratio. See
profile photographs for automatic
pages, bilingual descriptions and framing options.
Captions and source links are centered below their image by default in all
themes. Set appearance.captions.figures in sciastro.yaml to change the site
default, or add captionAlign: left under this image to override it. The values
are left, center, right and justify; justified captions keep credit links
left-aligned. The same options apply to research figures, card images and logos.
See caption alignment for table defaults
and Markdown/notebook syntax.
Publications selected from BibTeX¶
- type: publications
title: Selected publications
items:
- bibtex:
file: references.bib
key: silva2025
topic:
pt: Geoquímica
en: Geochemistry
The file path is relative to contentDir. Only the file and key are required:
the title, authors, year, venue and available links are generated from the record.
topic is an optional editorial category. See BibTeX publication cards
for multiple libraries, missing fields and manual entries.
Software with distribution and reproducibility¶
- type: cards
id: software
title: Scientific software
layout: rows
items:
- title: Example solver
eyebrow: Python package
text: |
A solver for transport models. Releases include installation instructions,
verification examples and automated regression tests.
meta: MIT license
links:
- label: Repository
url: https://github.com/example/solver
icon: lucide:code-xml
- label: Documentation
url: https://example.org/solver/
icon: lucide:book-open
Describe actual practices rather than assuming every project has the same test or
release coverage. To show a logo, add an images item with src and alt.
Short courses and recordings¶
- type: cards
id: short-courses
title: Short courses and talks
items:
- title: Finite element methods with Firedrake
meta: Short course · 2026
text: Course outline, notebooks and recordings.
links:
- label: YouTube playlist
url: https://www.youtube.com/playlist?list=YOUR_PLAYLIST_ID
icon: lucide:youtube
Separate regular courses into another cards or list section. A recording link
is an ordinary outbound link; SciAstro does not embed a video tracker.
Research figure with credits¶
- type: figure
id: transport
title: Transport models
text: Explain the scientific question and the scope of this particular result.
image:
src: /images/transport.png
alt: Describe the plotted variables and visible trends.
width: 1200
height: 800
enlarge: true
caption: Explain the conditions and identify the original source.
links:
- label: Source and license
url: https://example.org/research/source
Create the image in public/images/transport.png. Use alt text that communicates
the figure's purpose; retain captions and credits. A citation does not by itself
permit redistributing a figure. For a cropped display window, use viewBox with
the original dimensions; see image fields.
Multi-institutional partnerships¶
- type: prose
title: Academic collaborations
text: |
Our group includes researchers at Example University and Example Institute.
Joint work includes postgraduate supervision and collaborative projects.
- type: logos
title: Partner institutions
items:
- image:
src: /images/example-university.svg
alt: Example University
link:
label: Example University website
url: https://example.org
Keep institutional affiliation, collaborations and prior employment distinct.
Use a separate logos section for industrial partners where appropriate.
Logos retain their owners' rights; the package's MIT license does not relicense them.
Career or education timeline¶
- type: timeline
title: Professional experience
items:
- title: Researcher
period: 2026–present
subtitle: Example Institute
text: Research in numerical models and scientific computing.
- title: Senior scientific software developer
period: 2022–2026
text: Development and maintenance of scientific software for industrial use.
A CV can name previous employers if appropriate; other pages can describe prior software-industry experience without attributing current projects to an employer.
Team inside a composed site¶
- type: team
id: people
title: Our team
This section reads content/team.yaml and uses the same active/alumni grouping as
the automatic Team page. The homepage can remain a short overview with research
cards. Card links can point to /research/#transport, or their translated paths.
Migrate an existing website¶
- Create a branch and inventory existing URLs, language variants, downloads and reference keys. Keep the current website as the comparison point.
- Install a pinned SciAstro release or archive. Keep the content and
public/directory in the website repository. - Use automatic pages for a conventional structure, or
pageFilesto preserve existing page order, routes and sections. Do not retain duplicate page definitions. - Select a theme. For a sidebar and academic typography, start with
lncc. Transfer colors, logo, favicon, footer andthemeStorageKeythrough configuration. - Replace repeated markup with cards, lists, timelines, figures and logo sections. Keep truly specialized rendering in registered Astro components.
- Run content validation and a production build. Check every language, internal link, download, citation, mobile menu and theme before replacing the old site.
The LNCC example shows composed pages, a custom component and CSS. An update to the framework does not overwrite a consumer's content; it takes effect when that consumer updates its dependency and rebuilds.