ardc-fair-checklist.github.io

Self-assessment checklist for FAIR software

https://github.com/ardc-fair-checklist/ardc-fair-checklist.github.io

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.6%) to scientific vocabulary
Last synced: 6 months ago · JSON representation ·

Repository

Self-assessment checklist for FAIR software

Basic Info
Statistics
  • Stars: 1
  • Watchers: 2
  • Forks: 1
  • Open Issues: 21
  • Releases: 0
Created over 3 years ago · Last pushed over 2 years ago
Metadata Files
Readme License Citation

README.dev.md

Developer documentation

Tech stack

  1. Vue 3
  2. Vite
  3. Vitest
  4. TypeScript
  5. vite-ssr-plugin

IDE / dev setup

We recommend using Volar VSCode extension for improved development experience. The project uses Vue 3 <script setup> SFCs, check out the script setup docs to learn more.

  1. VS Code
  2. Volar

Development installation

shell cd <some dir> git clone https://github.com/ardc-fair-checklist/ardc-fair-checklist.github.io . npm install

npm scripts

  • npm run build: build the project for production, output files in ./dist
  • npm run coverage: run the tests once and calculate coverage using @vitest/coverage-c8
  • npm run dev: build the project for development, watch files for changes, serve output files on localhost.
  • npm run lint: run eslint with configuration from .eslintrc
  • npm run prod: shorthand for npm run build && npm run server:prod
  • npm run server: serve the development build
  • npm run server:prod: serve the production build
  • npm run test: run the unit tests in watch mode using vitest

relevant version info from npm list:

text ├── @types/compression@1.7.2 ├── @types/express@4.17.14 ├── @types/node@17.0.45 ├── @vitejs/plugin-vue@3.2.0 ├── @vue/compiler-sfc@3.2.41 ├── @vue/server-renderer@3.2.41 ├── ajv@8.11.0 ├── compression@1.7.4 ├── cross-env@7.0.3 ├── express@4.18.2 ├── sirv@2.0.2 ├── ts-node@10.9.1 ├── typescript@4.8.4 ├── vite-plugin-ssr@0.4.43 ├── vite@3.2.0 ├── vitest@0.24.3 └── vue@3.2.41

Versioning strategy

In the current app, there are multiple entities that could be versioned, namely the software questions JSON and the software questions app. The DRY (Don't Repeat Yourself) principle would suggest to make one app that can be used to render any version of the questions. However, this becomes more difficult to maintain as more versions of the questions are introduced. We therefore chose to have one directory for each version. That one directory contains all the components, along with all the data needed to render the app for that particular version of the questions. Naturally, this comes at the cost of having duplicate code between versions. Each version is assigned its own route, and can choose to do its own processing on supplied query parameters. Only the contents of public/, renderer/, and server/ are shared across versions.

Publishing

GitHub Pages

There is a GitHub action /.github/workflows/publishing.yml that builds the project for production and hosts it at https://fairsoftwarechecklist.net/, which is owned by Netherlands eScience Center. The GitHub action can be triggered manually via the GitHub user interface.

GitHub

Don't make GitHub releases manually, instead let the zenodraft workflow do it. See https://github.com/ardc-fair-checklist/ardc-fair-checklist.github.io/issues/92.

Zenodo

See https://github.com/ardc-fair-checklist/ardc-fair-checklist.github.io/issues/92 for avoiding a problem when publishing.

There is a GitHub action /.github/workflows/zenodraft.yml that publishes a snapshot of main to Zenodo, makes a release on GitHub, and tags the corresponding SHA. The workflow purposely does not finalize the depostion on Zenodo. It must be published manually by clicking the "Publish" button on Zenodo after inspection of the draft's metadata. The GitHub action can be triggered manually via the GitHub user interface.

Adding a new version

Let's say the current latest version is v0.2, and the version you want to make is v1. You would do the following:

shell cd <project root> cp -r pages/v0.2 pages/v1

Then, add the new version string to the relevant part of the state in versions.ts:

shell nano renderer/versions.ts

where it says

ts ['v0.1', 'v0.2']

add the next version identifier:

ts ['v0.1', 'v0.2', 'v1']

Start the development server:

shell npm run dev

Check browser:

```shell

add BASE_URL if you have it enabled, see vite.config.js

open http://localhost:3000 ```

Now make whatever changes you want under pages/v1. The page should update through hot module reloading. Existing badges that point to any version that isn't the latest should still resolve to the correct (older) version page, but will now display a message prompting users to update.

Owner

  • Name: ardc-fair-checklist
  • Login: ardc-fair-checklist
  • Kind: organization

Citation (CITATION.cff)

# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!

cff-version: 1.2.0
title: FAIR software checklist
message: Please cite this software using these metadata.
type: software
authors:
  - given-names: Jurriaan H.
    family-names: Spaaks
    email: j.spaaks@esciencecenter.nl
    affiliation: Netherlands eScience Center
    orcid: 'https://orcid.org/0000-0002-7064-4069'
  - given-names: Tom
    family-names: Honeyman
    email: tom.honeyman@ardc.edu.au
    affiliation: Australian Research Data Commons
    orcid: 'https://orcid.org/0000-0001-9448-4023'
  - given-names: Stefan
    family-names: Verhoeven
    affiliation: Netherlands eScience Center
    orcid: 'https://orcid.org/0000-0002-5821-2060'
identifiers:
  - type: url
    value: 'https://github.com/ardc-fair-checklist/ardc-fair-checklist.github.io'
    description: Where the software is being developed
  - type: url
    value: 'https://fairsoftwarechecklist.net'
    description: Where the software is deployed
repository-code: 'https://github.com/ardc-fair-checklist/ardc-fair-checklist.github.io'
url: 'https://fairsoftwarechecklist.net'
abstract: >-
  The software for a self-assessment web form that allows authors to evaluate the FAIRness of their
  research software, resulting in a badge that they can put in their project's README.
keywords:
  - FAIR software
  - FAIR data
  - FAIR
  - badging
  - best practices
  - research software
  - RSE
  - Research Software Engineer
license: Apache-2.0
version: 0.2.2
references:
  -
    authors:
      - family-names: Chue Hong
        given-names: Neil P.
      - family-names: Katz
        given-names: Daniel S.
      - family-names: Barker
        given-names: Michelle
      - family-names: Lamprecht
        given-names: Anna-Lena
      - family-names: Martinez
        given-names: Carlos
      - family-names: Psomopoulos
        given-names: Fotis E.
      - family-names: Harrow
        given-names: Jen
      - family-names: Castro
        given-names: Leyla Jael
      - family-names: Gruenpeter
        given-names: Morane
      - family-names: Martinez
        given-names: Paula Andrea
      - family-names: Honeyman
        given-names: Tom
      - family-names: Struck
        given-names: Alexander
      - family-names: Lee
        given-names: Allen
      - family-names: Loewe
        given-names: Axel
      - family-names: Werkhoven
        given-names: Ben
        name-particle: van
      - family-names: Jones
        given-names: Catherine
      - family-names: Garijo
        given-names: Daniel
      - family-names: Plomp
        given-names: Esther
      - family-names: Genova
        given-names: Francoise
      - family-names: Shanahan
        given-names: Hugh
      - family-names: Leng
        given-names: Joanna
      - family-names: Hellström
        given-names: Maggie
      - family-names: Sandström
        given-names: Malin
      - family-names: Sinha
        given-names: Manodeep
      - family-names: Kuzak
        given-names: Mateusz
      - family-names: Herterich
        given-names: Patricia
      - family-names: Zhang
        given-names: Qian
      - family-names: Islam
        given-names: Sharif
      - family-names: Sansone
        given-names: Susanna-Assunta
      - family-names: Pollard
        given-names: Tom
      - family-names: Atmojo
        given-names: Udayanto Dwi
      - family-names: Williams
        given-names: Alan
      - family-names: Czerniak
        given-names: Andreas
      - family-names: Niehues
        given-names: Anna
      - family-names: Fouilloux
        given-names: Anne Claire
      - family-names: Desinghu
        given-names: Bala
      - family-names: Goble
        given-names: Carole
      - family-names: Richard
        given-names: Céline
      - family-names: Gray
        given-names: Charles
      - family-names: Erdmann
        given-names: Chris
      - family-names: Nüst  
        given-names: Daniel
      - family-names: Tartarini
        given-names: Daniele
      - family-names: Ranguelova
        given-names: Elena
      - family-names: Anzt
        given-names: Hartwig
      - family-names: Todorov
        given-names: Ilian
      - family-names: McNally
        given-names: James
      - family-names: Moldon
        given-names: Javier
      - family-names: Burnett
        given-names: Jessica
      - family-names: Garrido-Sánchez
        given-names: Julián
      - family-names: Belhajjame
        given-names: Khalid
      - family-names: Sesink
        given-names: Laurents
      - family-names: Hwang
        given-names: Lorraine
      - family-names: Tovani-Palone
        given-names: Marcos Roberto
      - family-names: Wilkinson
        given-names: Mark D.
      - family-names: Servillat
        given-names: Mathieu
      - family-names: Liffers
        given-names: Matthias
      - family-names: Fox
        given-names: Merc
      - family-names: Miljković
        given-names: Nadica
      - family-names: Lynch
        given-names: Nick
      - family-names: Martinez Lavanchy
        given-names: Paula
      - family-names: Gesing
        given-names: Sandra
      - family-names: Stevens
        given-names: Sarah
      - family-names: Martinez Cuesta
        given-names: Sergio
      - family-names: Peroni
        given-names: Silvio
      - family-names: Soiland-Reyes
        given-names: Stian
      - family-names: Bakker
        given-names: Tom
      - family-names: Rabemanantsoa
        given-names: Tovo
      - family-names: Sochat
        given-names: Vanessa
      - family-names: Yehudi
        given-names: Yo
      - name: RDA FAIR4RS WG
    identifiers:
      -
        type: doi
        value: '10.15497/RDA00068'
    title: FAIR Principles for Research Software (FAIR4RS Principles)
    type: article
    date-published: 2022-05-24
  -
    authors:
      - family-names: Levett
        given-names: Kerry
      - family-names: Russell
        given-names: Keith
      - family-names: Schweitzer
        given-names: Martin
      - family-names: Unsworth
        given-names: Kathryn
      - family-names: White
        given-names: Andrew
      - name: ARDC
    identifiers:
      -
        type: url
        value: https://ardc.edu.au/resource/fair-data-self-assessment-tool/
        description: Where the website is deployed
      -
        type: url
        value: https://github.com/au-research/FAIR-Data-Assessment-Tool
        description: Where the software for the website is being developed
    title: FAIR Data Self Assessment Tool
    type: website
    date-published: 2021-06-17

GitHub Events

Total
  • Watch event: 1
  • Issue comment event: 14
Last Year
  • Watch event: 1
  • Issue comment event: 14

Issues and Pull Requests

Last synced: almost 2 years ago

All Time
  • Total issues: 86
  • Total pull requests: 10
  • Average time to close issues: 26 days
  • Average time to close pull requests: 2 days
  • Total issue authors: 4
  • Total pull request authors: 1
  • Average comments per issue: 1.53
  • Average comments per pull request: 0.0
  • Merged pull requests: 10
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 9
  • Pull requests: 4
  • Average time to close issues: about 1 month
  • Average time to close pull requests: 1 minute
  • Issue authors: 4
  • Pull request authors: 1
  • Average comments per issue: 1.78
  • Average comments per pull request: 0.0
  • Merged pull requests: 4
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • jspaaks (81)
  • tom-h (2)
  • roblanf (1)
  • RikDTJanssen (1)
Pull Request Authors
  • jspaaks (10)
Top Labels
Issue Labels
discuss (10) user-feedback (7) bug (3)
Pull Request Labels

Dependencies

package-lock.json npm
  • 216 dependencies
package.json npm
  • ajv ^8.11.0 development
  • vitest ^0.24.3 development
  • @types/compression ^1.7.2
  • @types/express ^4.17.13
  • @types/node ^17.0.31
  • @vitejs/plugin-vue ^3.0.3
  • @vue/compiler-sfc ^3.2.33
  • @vue/server-renderer ^3.2.33
  • compression ^1.7.4
  • cross-env ^7.0.3
  • express ^4.18.1
  • sirv ^2.0.2
  • ts-node ^10.7.0
  • typescript ^4.6.4
  • vite ^3.0.9
  • vite-plugin-ssr ^0.4.43
  • vue ^3.2.33
.github/workflows/linting.yml actions
  • actions/checkout v3 composite
  • actions/setup-node v3 composite
.github/workflows/publishing.yml actions
  • JamesIves/github-pages-deploy-action 4.1.4 composite
  • actions/checkout v3 composite
  • actions/setup-node v3 composite
.github/workflows/testing.yml actions
  • actions/checkout v3 composite
  • actions/setup-node v3 composite
.github/workflows/zenodraft.yml actions
  • actions/checkout v3 composite
  • citation-file-format/cffconvert-github-action 2.0.0 composite
  • zenodraft/action 0.10.0 composite