Skip to content

[Feature] Implement Internationalization (i18n) in OWASP AI BOM Generator reports #55

@fmelo006

Description

@fmelo006

Description
Propose the implementation of a robust internationalization (i18n) infrastructure in the OWASP AI BOM Generator to support multiple languages. This will enable the tool to generate reports and outputs in Brazilian Portuguese, Spanish, English, and other languages, significantly expanding the reach and usability of the tool across the global community.

Objectives
Enable the OWASP AI BOM Generator to produce results in Brazilian Portuguese (pt-BR)
Establish a scalable i18n infrastructure to support Spanish, French, German, and other languages in future PRs
Facilitate community contributions in different languages

Motivation
Global Reach: The OWASP community is international. Supporting multiple languages reduces barriers to entry for users from non-English-speaking regions
Better Adoption: Security professionals in Lusophone, Hispanic, and other regions will have access to an essential tool in their native language
Community Engagement: Facilitates contributions from translators and subject matter experts from different regions
Maintainability: A well-defined i18n structure makes future translations simpler and more scalable

Proposed Scope
Phase 1: i18n Infrastructure

Select an appropriate internationalization solution for the project stack (e.g., i18next, gettext, or similar)
Implement a system for localizable strings
Create file structure for translation files (.json, .po, .yml, etc)
Define language management process (contribution workflow for new translations)

Phase 2: Brazilian Portuguese Translation

Translate generator output strings to pt-BR
Translate related documentation
Test with real-world usage flows

Phase 3 (Future): Additional Languages

Spanish (es-ES, es-MX)
French (fr-FR)
Other languages based on community demand

🛠️ Technical Suggestions
Examples of common approaches for i18n in similar projects:
Option 1 - Structured JSON files:
src/locales/
├── en.json
├── pt-BR.json
├── es.json
└── fr.json

Option 2 - Gettext (.po files):

Traditional and well-established format
Excellent community support for translation
Industry standard for localization

Option 3 - YAML:

Readable and easy to maintain
Clear hierarchical structure
Good for configuration-driven approaches

Expected Benefits

Tool more accessible to Portuguese, Spanish, and other language speakers
Greater relevance of OWASP AI BOM in Latin America, Brazil, and Europe
Clear pipeline for future multilingual contributions
Increased community engagement in non-English-speaking regions
Enhanced user experience for security professionals worldwide

Next Steps

Gather feedback from the team on the preferred i18n approach
Decide which language to start with (we suggest pt-BR)
Reach consensus on structure and naming conventions
I am available to contribute with a Pull Request implementing the i18n infrastructure and initial Brazilian Portuguese translations

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status

    Todo

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions