Below is a list of all pages in RDMKit for the ease of finding content to link or contribute to.
Research software & quality
| title | description |
|---|---|
| Research Software Lifecycle | Research software stages from planning and development to publication, preservation, maintenance and community feedback, showing how software evolves within the research process |
| Quality of Research Software | Software quality through reproducibility questions, FAIR and open-source practices, and measurable quality dimensions and indicators |
| Research Software Quality Dimensions | High-level quality attributes of research software, each assessed through specific indicators |
| What is Research Software? | Research software and how it distinguishes from general software used in research |
| Three-Tier Model of Research Software | Framework that classifies research software by purpose into analysis code, prototype tools, and research software infrastructure to guide appropriate practices and support |
Research software stories
| title | description |
|---|---|
| Research Software Story - ACTS | ACTS - Toolkit for Track Reconstruction in Particle Physics Experiments |
| Research Software Story - alpaka | alpaka is a header-only C++ template library that enables writing platform and performance portable applications. It can use CPUs with sequential and thread parallel code, GPUs via multiple programming paradigms and also FPGAs. |
| APICURON - The platform to credit and acknowledge scientific contributions beyond traditional publications | APICURON aims to provide a recognition model for contributions beyond traditional publications, including research software, data sources, and training material |
| Research Software Story - BALER | Machine-Learning-Based Compression of Scientific Data in Real Time |
| DOME Registry | A repository supporting standardised machine learning method disclosures in the life sciences. |
| Research Software Story - GreenPhysECS | Applying ECS to Physics Simulation with Energy Tracking |
| Research Software Story - OpenEBench | OpenEBench is an open, community-driven platform for benchmarking and monitoring bioinformatics software, enabling transparent performance evaluation and improved research software quality. |
| Phoenix2 | An ecosystem of minimalist, modular and extensible libraries for transverse topics in data acquisition and analysis software in C++, Python and Rust. |
| Research Software Story - PIConGPU | PIConGPU is used to simulate nonlinear plasma physics, from laser plasma accelerators to astrophysics research. |
| Research Software Story - SCIPION | Scipion is an integrated platform that unifies cryo-EM image processing tools to manage, execute, and reproduce complete structural reconstruction workflows. |
| Research Software Story - xAODAnaHelpers | Analysis Framework for High-Level ATLAS Data |
Research clusters or infrastructures
| title | description |
|---|---|
| ENVRI - environmental sciences | European Environmental Research Infrastructures (ENVRI) is a science cluster bringing together communities & research infrastructure in the area of Earth & environmental sciences |
| ESCAPE - physics & astronomy | ESCAPE is a science cluster bringing together communities & research infrastructure in the area of astronomy and particle physics |
| LS-RI - life sciences | European Life Science Research Infrastructures (LS-RI) are serving excellent science in Europe by providing access to world-class facilities, samples, instruments, services and data |
| PaNOSC - photon and neutron science | Photon and Neutron Open Science Cluster (PaNOSC) represents Photon and Neutron European Research Infrastructures |
| SSHOC - social sciences & humanities | Social Sciences and Humanities Open Cluster (SSHOC) cluster bring together a range of disciplines and methodological backgrounds |
Roles
| title | description |
|---|---|
| Policy maker | Software development and quality guidance for policy makers |
| Principal Investigator (PI) | Software development and quality guidance for Principal Investigators (PIs) |
| Product owner | Software development and quality guidance for research software product owners |
| Project manager | Software development and quality guidance for research software project managers |
| Research Software Engineer (RSE) | Software development and quality guidance for Research Software Engineers (RSEs) |
| Researcher who codes | Software development and quality guidance for researchers who code |
| Trainer | Software development and quality guidance for trainers |
Tasks (alphabetical)
| title | description |
|---|---|
| Archiving software | How can you archive your software for preservation? |
| Continuous Integration and Continuous Delivery/Deployment | How can you use CI/CD in software development? |
| Managing complex CI testing matrices for research software | Efficiently test research software across multiple compilers, libraries, architectures, and platforms while managing CI resource constraints and maintaining fast feedback loops |
| Citing software | How can people cite your software? |
| Performing a code review | How do you review code? |
| Creating bibliographic metadata with CodeMeta | Guidance on creating a CodeMeta file for software projects. |
| Computational workflows | How to use computational workflows to automate and reproduce data pipelines? |
| Creating a good README | How to create a good README document for software projects? |
| Credit and recognition for research software and people who write it | Guidance on making software contributions visible, citable and verifiable, and building the evidence needed for career progression for people who write research code. |
| Fostering diversity, equity, and inclusion in reserach software projects | Practical guidance for research software projects on diversity, equity, and inclusion (DEI), covering inclusive contribution processes, accessible documentation and onboarding, support for underrepresented contributors, governance, and event accessibility, with attention to the academic power dynamics specific to research software. |
| Documenting code | How to write technical documentation to explain to other developers and administrators how your code works internally? |
| Documenting software project | How to write clear and useful software project documentation for end-users and collaborators? |
| Documenting software using 'Read The Docs' | How to use 'Read The Docs' tool for software documentation? |
| Adopting FAIR research software practices | What practices and tools can help improve FAIRness of software? |
| Improving environmental sustainability | How to measure and improve environmental sustainability of software? |
| Choosing languages, tools & infrastructures | How to decide which programming languages, tools and infrastructures to use? |
| Licensing software | How to license your software for reuse? |
| Using organisational GitLab CI infrastructure for your GitHub project | Leverage local GitLab CI runners and specialized hardware for GitHub-hosted projects when standard CI resources are insufficient |
| Packaging software | How to package and release your software for distribution and reuse? |
| Publishing software | How do you publish your software for reuse by others? |
| Releasing software | How to release your software for reuse? |
| Reproducible software environments | How to create a development environment for your software so others can run and contribute to your software? |
| Software documentation | How do you document your software (code and project) for use by various different audiences? |
| Software identifiers | How to uniquely identify your software and its versions? |
| Maintaining research software | Guidance on keeping research software functioning, understandable, and usable over time — covering ongoing maintenance practices, dependency management, documentation, versioning, and the management of technical debt. |
| Software Management Planning | How to prepare a software management plan? |
| Software metadata | How to describe your software using metadata? |
| Software project structure | How to organise your code and software folders? |
| Task automation using GitHub Actions | How to set up GitHub Actions on software repositories for task automation |
| Task automation using GitLab CI/CD | How to use and set up GitLab CI/CD for your GitLab repository |
| Testing software | How to test your software? |
| Using containers | Why and how to use containers for research software development? |
| Using version control | How to version control your software? |
| Writing readable code | How to write code readable and understandable by others? |
| Writing a Research Software Story | Capturing the context, community, and practices around a research software project. |
Get involved
| title | description |
|---|---|
| Get involved | Different ways to get involved with the project and pointers to various guidelines for contributions. |
| Contribution Guidelines | Detailed guidelines for various contributions to RSQKit. |
| Contributors | All contributors to RSQKit. |
| Editorial Board | Editorial Board oversees the topics and content featured in RSQKit. |
| Editors Checklist | Checklist for editors (Editorial Board members) before approving changes to RSQKit content and infrastructure. |
| Metadata Guidelines | Descriptions of different metadata schemas used to describe various resources and pages in RSQKit. |
| Page Style Guidelines | Comprehensive guidelines for page style and formatting. |