Skip to content Skip to footer

All tools and resources

Tool or resource Description Related pages
Ansible Ansible is a suite of open source command line tools (written in Python) that enables Infrastructure as Code (IaC) - including configuring systems, deploying software, and orchestrating workflows, known for its simplicity and ease of use.
Apptainer Apptainer (formerly Singularity) simplifies the creation and execution of containers, ensuring software components are encapsulated for portability and reproducibility, especially in High Performance Computing (HPC) environments.
Bandit Bandit is a tool designed to find common security issues in Python code.
Bash Bash, which stands for - Bourne Again SHell, is a command-line interface and scripting language commonly used in Unix and Unix-like operating systems. It provides a powerful environment for executing commands, managing files, and automating tasks through scripts.
Bearer Bearer CLI is a static application security testing (SAST) tool that scans your source code and analyzes your data flows to discover, filter and prioritize security and privacy risks.
Black Automated Python code formatter
Bundler Bundler is a Ruby gems and environment management tool for Ruby projects.
C++ C++ is a high-performance, general-purpose programming language that supports both procedural and object-oriented paradigms, offering fine-grained control over system resources. Known for its versatility and efficiency, C++ is widely used in applications requiring high speed and precision, such as game development, operating systems, and real-time simulations.
Calendar Versioning Calendar Versioning (CalVer) is a versioning convention based on your project's release calendar, instead of arbitrary numbers.
carbontracker carbontracker tracks and predicts the energy consumption and carbon footprint of training deep learning models
CFFINIT Generator
ChatGPT Generative artificial intelligence chatbot developed by OpenAI and able to produce code or answer questions on code
Checkstyle Static code analysis tool for Java
Choose an open source license Choose an open source license is a tool to help you choose an open source license for your software. An open source license protects contributors, users and developers.
Claude Claude is a a generative artificial intelligence chatbot developed by Anthropic and able to produce code or answer questions on code.
CMake Software Build System.
Code Linters Static code analysis tools
CodeCarbon CodeCarbon is a software package that integrates into Python codebase and estimates the amount of carbon dioxide (CO2) produced by the cloud or personal computing resources used to execute the code
CodeMeta CodeMeta is a community standard and initiative focused on creating a minimal metadata schema for scientific software and code, promoting their findability, preservation, and reuse through machine-readable metadata in JSON-LD format.
CodeMeta Generator A free, open-source project that creates a minimal metadata schema for research software and code
Conan Conan is an open source, decentralised and multi-platform package manager for C and C++ that allows for creating and sharing native binaries.
Conda Open-source, cross-platform, language-agnostic package manager and environment management system - originally developed to solve package management challenges faced by Python data scientists
CPPUnit CPP testing tool
Creative Commons License Chooser Creative Commons license chooser to help you select an appropriate Creative Commons license
CUDA
Dependabot Generate automated pull requests updating dependencies for projects
Docker Docker is a tool for creating isolated environments (application isolation) for software development called containers to enable consistent software running across platforms. Docker allows developers to build, share, run and verify applications easily. DockerHub is a repository for sharing and managing container images.
Docker Compose Docker Compose is a tool for defining and running multi-container applications for streamlined and efficient development and deployment experience.
Documenter.jl Documenter.jl is a documentation generator for Julia, a package for building documentation from docstrings and markdown files.
Doxygen Doxygen is a documentation generator tool in software development for C++ (and also C, Python, PHP, Java, C#, Objective-C, Fortran, VHDL, Splice, IDL, and Lex)
DVC Data Version Control - to help you manage and version images, audio, video, and text files in storage and organise your ML modeling process into a reproducible workflow
Eclipse Eclipse is a free and open-source Integrated Development Environment (IDE) used for Java development, with support for developing applications in other programming languages too.
Ecograder Evaluates website sustainability based on design and operational efficiency
eOSSR Python library to programmatically manage the ESCAPE OSSR; also includes a CodeMeta generator and validator
F-UJI Original version for automated assessment of data FAIRness; extended version (POC only - not all metrics are implemented) for research software based on the FAIR4RS principles.
FAIR Aware Guided approach to assess the FAIRness of data
FAIR Python Coockiecutter FAIR Python Cookiecutter is a cookiecutter template command-line tool to help you kickstart a modern best-practice Python project with FAIR metadata
FigShare Figshare is a provider of open research repository infrastructure for sharing, showcasing and managing all research outputs in a discoverable, citable, reportable and transparent way.
Flake8 Static code analysis tool for Python
Fortran Modern Fortran is high-performance parallel programming language that is especially suited to numeric computation and scientific computing.
Galaxy Galaxy is a free, open-source system for analysing data, authoring workflows, training and education, publishing tools, and managing infrastructure.
Gcov Code coverage analysis tool
Git Distributed version control system designed to handle everything from small to very large projects with speed and efficiency
Git Large File Storage Git Large File Storage is an open source Git extension for versioning large files, such as audio samples, videos, datasets, and graphics.
GitHub GitHub is a platform that allows developers to create, store, manage, and share their code. It uses Git to provide distributed version control. GitHub provides access control, bug tracking, software feature requests, task management, continuous integration, and wikis for every project.
GitHub Actions GitHub's infrastructure for continuous integration, deployment and delivery
Github Copilot Github Copilot is a code completion and automatic programming tool developed by GitHub and OpenAI that assists users of Visual Studio Code, Visual Studio, Neovim, and JetBrains integrated development environments (IDEs) by autocompleting code.
GitHub Pages Publish static websites directly from GitHub repository
GitLab DevOps platform that enables teams to collaborate, plan, develop, test, and deploy software using an integrated toolset for version control, CI/CD, and project management.
GitLab CI/CD GitLab's infrastructure for continuous integration, deployment and delivery
GitLab Pages A GitLab tool that publishes static websites directly from a GitLab repository
gitleaks SAST tool for detecting and preventing hardcoded secrets like passwords, API keys, and tokens in code stored in Git repositories
Google’s programming style guide Style guidelines (a set of conventions about how to write code for a project) used for Google code.
Green Algorithms An online tool to estimate the carbon footprint of computational tasks using a web calculator
Greenspector Studio Greenspector is a tool that measures energy usage and resource efficiency in web and mobile applications
Guix Package manager.
Hadolint Dockerfile linter
Hermes Workflows
howfairis Howfariris is a command line tool to analyze a GitHub or GitLab repository's compliance with the EU FAIR software recommendations.
Hugo Static website generation based on Go
IntelliJ IDEA Integrated development environment (IDE) written in Java.
InvenioRDM InvenioRDM is a turn-key research data management (RDM) repository based on Invenio Framework and Zenodo
Java Java is a versatile, object-oriented programming language designed to be platform-independent, with its “write once, run anywhere” capability enabled by the Java Virtual Machine (JVM).
JavaDoc Documentation generator for Java used to generate API documentation in HTML format from Java source code
JavaScript JavaScript is a lightweight, high-level programming language primarily used to create interactive and dynamic content on web pages, running seamlessly in browsers. Known for its versatility, JavaScript supports event-driven, functional, and object-oriented programming, making it essential for modern web development and widely used alongside HTML and CSS.
Jenkins Automation server to support building, testing and deploying software
JSDoc JSDoc is a tool and a markup language that serves as an API documentation generator for JavaScript, similar to Javadoc.
JSON-LD validator Service to validate JSON-LD files
Julia Julia is a high-performance programming language designed for numerical and scientific computing that combines the speed of C with the ease of use of Python. It features multiple dispatch, optional typing, and excellent parallel processing capabilities, making it particularly strong for mathematical computations, data science, and machine learning applications.
JUnit Test automation framework for Java
Jupyter Book Jupyter Book is a tool to build publication quality books and documents from computational material.
Jupyter-Book For building publication-quality books and documents from computational material
Keras Keras is a multi-backend deep learning framework, with support for JAX, TensorFlow, PyTorch, and OpenVINO (for inference-only) to build and train models for computer vision, natural language processing, audio processing, timeseries forecasting, recommender systems, etc.
Kubernetes Kubernetes is a container orchestration platform that manages the deployment, scaling, and operation of containerised applications.
Maven Maven is a software project management and build automation tool used primarily for Java, but can also be used to build and manage projects written in C#, Ruby, Scala, and other programming languages.
Mercurial Mercurial is a free, distributed source control management tool. Ιt efficiently handles projects of any size and offers an easy and intuitive interface
MKDocs A tool for creating static documentation for software projects from Markdown
mypy Mypy is an optional static type checker for Python that aims to combine the benefits of dynamic typing and static typing
NixOS NixOS is a free and open-source Linux distribution based on the Nix package manager. It uses declarative configuration (using the Nix language) to manage packages and the entire system environment - allowing for reproducibility and portability.
OpenCL OpenCL (Open Computing Language) is an open standard for parallel programming across various platforms, including CPUs, GPUs, and other processors. It enables developers to write programs that execute across heterogeneous computing systems, allowing for high-performance computing in applications like scientific simulations, image processing, and machine learning.
Packer Packer is an automated build system to manage the creation of identical images for containers and virtual machines (multiple platforms) from a single source configuration, encapsulating 'Images as Code' philosophy. Packer is lightweight, runs on every major operating system, and is highly performant, creating machine images for multiple platforms in parallel.
Pelican Static website generation based on Python
PEP8 Style guide for Python code
Perforce Highly scalable development and DevOps solutions designed to deliver dynamic development, intelligent testing and risk management environment
pip pip is the package installer for Python. It allows you to install and manage additional libraries and dependencies that are not part of the Python standard library.
Pkg.jl Pkg.jl is a package manager for the Julia programming language.
Playwrite Framework for Web testing and automation, allowing testing using Chromium, Firefox and WebKit with a single API
Poetry Python packaging and dependency management tool
PowerShell PowerShell is a Microsoft task automation and configuration management framework, featuring a command-line shell and a scripting language. It is designed to help system administrators and power users control and automate the administration of Windows and other Microsoft technologies.
precommit A framework for managing and maintaining multi-language pre-commit hooks
Prettier Prettier is a code formatter to enforce a consistent style with its own rules for different languages, including JavaScript, TypeScript, Flow, JSX, JSON, CSS, SCSS, Less, HTML, Vue, Angular, GraphQL, Markdown, and YAML.
PyCharm PyCharm is a free Python Integrated Development Environment (IDE) for application, data science and web development.
Pylint Static code analysis tool for Python
Pytest Test automation framework for Python
Python Python is an interpreted, high-level, object-oriented programming language known for its dynamic typing, readability, and extensive standard library, making it ideal for rapid development and modular, reusable code.
Python Docstring Generator Python Docstring Generator (autoDocstring) is a Visual Studio Code extension to quickly generate docstrings for python functions.
Python Package Index (PyPi) Official third-party software repository for Python packages
R R is a programming language and environment designed for statistical computing and graphics, widely used by data scientists, statisticians, and researchers. Known for its extensive libraries and rich visualization capabilities, R excels in data analysis, modelling, and reproducible research.
R Style Guide Google’s R code style guide
Read the Docs Read the Docs serves as a documentation building and hosting platform aimed at helping developers create documentation from code
renv renv is an R package that helps you create reproducible environments for your R projects - use renv to make your R projects more isolated, portable and reproducible
REUSE Automate the declaring of copyright and licensing for software projects with SPDX Tags
Roxygen Roxygen2 is an R package that makes it easier to document R code, especially functions, datasets, and packages.
RPM Package manager.
RSQKit RSQKit is a platform that curates quality practices in research software. It links to tools, resources, quality metrics, and training to support implementing these practices, while also highlighting the importance of roles like Research Software Engineers (RSEs) and career development in the field.
RStudio RStudio is an Integrated Development Environment (IDE) for R, a programming language for statistical computing and graphics.
Ruff An extremely fast Python linter and code formatter written in Rust
Rust Rust is a systems programming language focused on memory safety, concurrency, and performance without using garbage collection, enforcing memory safety through its unique ownership system and borrowing rules. It combines low-level control with high-level abstractions, making it suitable for everything from operating systems to WebAssembly applications.
SCANOSS SCANOSS is a tool that helps identify and manage open-source components in software by scanning for licenses, vulnerabilities, and compliance risks.
Score-P The Score-P (Scalable Performance Measurement Infrastructure for Parallel Codes) measurement infrastructure is a highly scalable and easy-to-use tool suite for profiling and event trace recording of HPC applications.
Selenium Automates Web browser interaction from Python - Selenium WebDriver is often used as a basis for testing Web applications
Semantic Versioning Semantic versioning (SemVer) is a widely-adopted version scheme that encodes a version of a project by a three-part version number (MAJOR.MINOR.PATCH), an optional pre-release tag, and an optional build meta tag.
Singularity Singularity is an open source container platform allows us to create and run containers that package up pieces of software in a way that is portable and reproducible. Singularity is designed for ease-of-use on shared multiuser systems and in High Performance Computing (HPC) environments. Singularity is compatible with all Docker images and it can be used with GPUs and MPI applications.
Software Heritage Software Heritage archive is the largest public collection of source code in existence. It Collects, preserves, curates and makes available software in source code form as cultural heritage
SOMEF Software Metadata Extraction Framework (SOMEF) is a command line tool for automatically extracting relevant software information from README files
SOMEF Vider Somef Vider is a web application that retrieves the metadata of the given GitHub repository through the Software Metadata Extraction Framework (SOMEF) and shows it in a user-friendly way.
Somesy Somesy (software metadata sync) is a CLI tool to avoid messy software project metadata by keeping it in sync.
SonarQube Continuous inspection of code quality to perform automatic reviews for static analysis of code
SPDX System Package Data Exchange (SPDX) is an open standard for representing systems with software components as SBOMs (Software Bill of Materials) and other AI, data and security references supporting a range of risk management use cases.
Sphinx Documentation generator from reStructuredText files primarily for Python, but also supports other languages - C++, C, JavaScript.
SQAaas Software Quality Assessment as a Service - the Quality Assessment & Awarding building block analysing the level of completeness with the FAIR4RS reference criteria for any given release of your software
Subversion Subversion is a centralized version control system used to manage and track changes to files and directories over time. It is particularly popular for managing source code in software development but can be used for any type of file.
Swagger A suite of tools for API developers that generate APIs from code (and the basis for the OpenAPI Specification)
Terraform Terraform is a powerful and one of the most popular Infrastructure as Code (IaC) tools that enables infrastructure management across multiple cloud providers using a simple, declarative language,
Test.jl Test module for Julia
testthat Unit Testing for R
tortellini-action Tortellini Action is GitHub action to run licence analysis on a GitHub repository.
tox Python testing tool
Travis CI platform to support building, testing and deploying software
TypeScript TypeScript is a strongly typed superset of JavaScript that adds static typing and advanced tooling capabilities, enhancing code quality and developer productivity. Designed for building scalable applications, TypeScript compiles to plain JavaScript, ensuring compatibility with existing JavaScript environments.
uv uv is an extremely fast Python package and project manager, written in Rust.
Vagrant Vagrant is a tool that simplifies and provides a single workflow for the creation and management of virtual machines, and provides full VM isolation.
Valgrind Detect memory management and threading bugs, run profiling to see how to speed up your programs
venv venv is a Python module for creating lightweight “virtual environments”, each with their own independent set of Python packages installed in their site directories
Visual Studio Code Visual Studio Code, commonly referred to as VS Code, is an Integrated Development Environment (IDE) developed by Microsoft that includes support for debugging, syntax highlighting, intelligent code completion, snippets, code refactoring, and embedded version control with Git.
Workflow Description Language Workflow Description Language (WDL) is an open standard for describing data processing workflows with a human-readable and writeable syntax.
Zammad Helpdesk software, ticketing system
Zenodo Zenodo is a general-purpose open repository developed under the European OpenAIRE program and operated by CERN. It allows researchers to deposit research papers, data sets, research software, reports, and other research-related digital artefacts.