The Citation.cff is a fantastic format that combines human-readable and machine-readable metadata about its repository. It provides linking systems with important metadata about the presented project and gives people the ability to reference the project, among other things. However, for a wide range of users, the YAML file format can seem intimidating, whereas a clean website is generally more readable. This project aims to automate the conversion of cff files, so that maintaining the cff file pays off for developers in terms of the project's presentation, thereby ensuring that the website representation is retained.
cff2pages is envisioned as a Python package, designed to automate the extraction of metadata from your project's Citation.cff file, and swiftly generate a sleek, static HTML page. This versatile page can serve as a vivid representation of your project on Github/Gitlab Pages.
cd project_folder
pip install cff2pages
cff2pages
stages:
- Pages
pages:
stage: Pages
image: python:3.11
script:
- python -m pip install cff2pages
- cff2pages
artifacts:
paths:
- public
deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Set up Python 3.11
uses: actions/setup-python@v3
with:
python-version: 3.11
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install cff2pages
cff2pages
- name: Setup Pages
uses: actions/configure-pages@v3
- name: Upload artifact
uses: actions/upload-pages-artifact@v2
with:
path: './public'
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v2
- 0.0.1 version in pypi
- convert all cff-attributes
- abstract
- authors
- cff-version
- commit
- contact
- date
- doi
- identifiers
- doi
- swh
- url
- keywords
- license
- license-url
- message
- preferred-citation
- references (new, but not published!)
- repository
- repository-artifact
- repository-code
- title
- type
- url
- version
- simple conversion from cff to html
- working samples for GitHub and gitlab
- integrate cff2pages into given html
- change styles