Open standards and best practices
This page describes Ersilia's open standards and best practices principles
Ersilia is recognised as a Digital Public Good by the Digital Public Goods Alliance.
Open standards
We follow DPG Alliance tips for Open Standards. Below is a summary and proof of adherence to these standards.
Accessibility, Security, Authentication and Authorization
Ersilia uses GitHub primarily. Accessibility, security and authentication/authorization is therefore reliant on GitHub solutions. We use DependaBot to monitor package dependencies and identify security liabilities. GitHub Secrets are used intensively in our workflows.
Internationalization
UTF-8 encodings is used in our scripts, most of them written in Python. Code is formatted with Black.
Application Programming Interfaces (APIs)
OpenAPI, especially via Swagger UI as facilitated by BentoML.
Data Exchange and Configuration Formats
We primarily use YAML, JSON, CSV and TOML formats.
Standard Content Formats and Multimedia
Content and multimedia are not our main assets. Internally, we store documents and media files with standard formats.
Best practices and principles
We follow DPG Alliance tips for Best Practices and Principles. Below is a summary and proof of adherence to these principles.
ICT4D
User stories
We share community stories via our blog publication. We are active on social media and use GitHub Issues for the more technical aspects.
Change management and version control
We use all version control functionalities of GitHub.
Test driven development using automated tests
Extensive and customized tests are performed, both for the main code and the models.
CI/CD
We use GitHub Actions for our CI/CD workflows, especially for model incorporation.
Code review
We operate via pull requests and code reviewing is necessary previous to approval.
Agile development
We use GitHub projects following the "Epic", "Sprint", etc. logic.
Modularity and Maintainability, Reusability and extensibility
The Ersilia Model Hub is highly modular, with each model corresponding to one artifact stored in an isolated environment.
Component based architecture
By design, our architecture is component based.
Cloud Computing
We have infrastructure as service scripts for AWS. However, the Ersilia Model Hub is designed to be cloud-agnostic.
AI/ML
We use ONNX format for interoperability as much as possible in our assets.
Data Principles
We follow FAIR data principles in all our projects. Most of our projects are collaborative.
User Interface and User Experience (UI/UX)
Graphical user interfaces and a simple command-line interface are available.
Coding Styles and Standards
We follow PEP 8 and format with Black.
Open Source
We are a fully open source project and are part of several open source communities.
Last updated