whatisnuclear/website
whatisnuclear/website has 35 GitHub stars and 9 forks. GitHot measured 0 stars in 24 hours. Last checked 2026-11-15 11:55 UTC. Last push 2026-11-08.
측정된 스타 증가
- in 24h
- 0
- in 7 days
- 기록 수집 중
- in 15 days
- 기록 수집 중
- in 1 month
- 기록 수집 중
서로 겹치는 기간의 순증가량이며 일별 합계가 아닙니다. 측정값이 없으면 비워 둡니다. 스타는 관심도를 나타내며 품질을 보장하지 않습니다.
소개
The main whatisnuclear.com website
학습README.md
OriginalWhatisnuclear.com website
This is the source of the nuclear energy public-education website whatisnuclear.com. The site was founded in 2007 and has been built over the years. It is now on github to encourage collaboration with other nuclear experts who want to contribute to public education. More about us.
Contributing
We welcome pull requests for basic fixes and small changes of any kind. If you want to contribute something major, it's best to contact us first to discuss the content and tone. We definitely want stuff from you but don't want you to spend a bunch of time on something that we don't think is right for our site. All contributions you make will retain your copyright but you will grant whatisnuclear.com a irrevocable and perpetual license to use it. It will also be licensed CC-BY-NC.
We look forward to working with you!
Infrastructure
The site is built with Jekyll, which converts the source material you see here into the actual HTML that gets pushed live. Some of our pages here are in Markdown and others are still in HTML (we're slowly converting to Markdown to make collaborating/editing easier). At the moment, not everything needed to render the page is in this git repository (we excluded some third-party dependencies like fonts and themes) so you may have trouble rendering it at first. But if you had all the dependencies, you could just run:
bundle install
bundle exec jekyll build
or
bundle exec jekyll serve
you can test out your changes before submitting them.
For linting, do:
npm install prettier
npm install --save-dev @shopify/prettier-plugin-liquid
Then lint in your editor or with:
npx prettier -w .
CI
CI runs on a self-hosted Forgejo instance using a Docker-in-Docker runner. The
build-and-validate job uses a custom image built from .forgejo/Dockerfile.ci.
After modifying the Dockerfile (e.g. bumping the Ruby version or adding dependencies), rebuild and push the image:
docker build -t url-to-forge/whatisnuclear-ci:latest -f .forgejo/Dockerfile.ci .
docker push url-to-forge/whatisnuclear-ci:latest
Historical films
The catalog of historical nuclear films lives in _data/videos.yml and renders
to old-videos.md and museum.md. Every entry has a
stable id (the slugified title) that everything else keys off. After adding
entries, run uv run _scripts/add_video_ids.py to fill in the ids of any new
ones; it leaves existing ids alone, so it is safe to re-run.
To exhibit a film on an announcement post:
{% include film.liquid id="astr-tower-experiment" %}
That renders the video embed, the catalog description, a backlink to the catalog
entry, and the transcript if there is one. Pass caption="..." to add a figure
caption, or parts="video,transcript" to render only some of it on a page that
supplies its own prose. List the films a post announces in its front matter:
films:
- astr-tower-experiment
so the museum and the catalog table can link back to the announcement.
Transcripts are plain .srt files in _data/transcripts/, named after the film
id. Drop one in and it shows up; there is no conversion step (see
_plugins/srt-transcripts.rb). A film with a transcript but no announcement
post gets a generated page at /films/<id>.html (see _plugins/film-pages.rb),
and the catalog table links "Transcript" to whichever page shows it. Time the
.srt to the YouTube upload, since each timestamp links into the video.