Skip to content

Conversation

@cmotadev
Copy link

Hello guys,

This is a first version of Brazilian Portuguese geonode-mapstore-client.

I don't know if it is 100% completed, but it covers a lot of terms, and it was enhanced from original Portuguese translation. This was based on geonode 4.4.3.

Please embed this translation as a "Suported Translations" on GeoNode, as below, on geonode's settings.py.

https://github.com/GeoNode/geonode/blob/6761e67bcdbfd4b1d9416fcf093a19333b3d0129/geonode/settings.py#L1483-L1497

I'm opening this PR here, but it will be referenced on geonode repo, too.

[]s

@gemini-code-assist
Copy link

Summary of Changes

Hello @cmotadev, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request significantly expands GeoNode's localization capabilities by adding a comprehensive Brazilian Portuguese translation. This initiative aims to make the platform more accessible and user-friendly for Portuguese-speaking users in Brazil, covering a wide array of terms and UI elements within the geonode-mapstore-client component.

Highlights

  • Brazilian Portuguese Translation Added: A new Brazilian Portuguese (pt-BR) translation has been introduced for the geonode-mapstore-client.
  • Comprehensive Coverage: The translation covers a significant number of terms, enhancing the localization of the platform, and is based on GeoNode 4.4.3.
  • Integration Suggestion: The author suggests embedding this translation as a 'Supported Translation' within GeoNode's settings.py.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

Hello! Thank you for this contribution. The Brazilian Portuguese translation is a great addition.
I've reviewed the files and found a few minor corrections to be made, mostly typos and some suggestions to improve the fluency of the sentences in Portuguese.
Additionally, I noticed that some keys in the JSON translation files contain typos (e.g., reasourceType, cannotPerfomAction, prompPendingChanges). As these seem to be existing issues in the source code (also present in the en-US.json file), I've maintained consistency and only corrected the translation values. It would be good to fix these keys in a future PR to maintain code quality.
Overall, great work!

"attribution": "Atribuição",
"restriction": "Restrição",
"edition": "Edição",
"maintenanceFrequency": "Frequencia de manutenção",

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The word 'Frequencia' is missing the acute accent. The correct form is 'Frequência'.

Suggested change
"maintenanceFrequency": "Frequencia de manutenção",
"maintenanceFrequency": "Frequência de manutenção",

"titlePlaceholder": "Digite um título...",
"fullscreen": "Tela cheia",
"nativescreen": "Sair do modo de tela cheia",
"prompPendingChanges": "Exitem mudanças ainda não salvas, tem certeza que você gostaria de abandoná-las?",

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The word 'Exitem' contains a typo. The correct form is 'Existem'.

Suggested change
"prompPendingChanges": "Exitem mudanças ainda não salvas, tem certeza que você gostaria de abandoná-las?",
"prompPendingChanges": "Existem mudanças ainda não salvas, tem certeza que você gostaria de abandoná-las?",

"addLayer": "Adicionar camada",
"datasetsCatalogTitle": "Catálogo de camadas",
"datasetsCatalogFilterPlaceholder": "Filtrar conjuntos de dados por título ou resumo...",
"datasetsCatalogEntriesNoResults": "Não há resultados que correspondem a sua busca",

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

For better grammatical correctness, I suggest using the crase in 'à sua busca'. Also, the subjunctive verb 'correspondam' sounds more natural in this context.

Suggested change
"datasetsCatalogEntriesNoResults": "Não há resultados que correspondem a sua busca",
"datasetsCatalogEntriesNoResults": "Não há resultados que correspondam à sua busca",

"createApp": "Criar app",
"announcements": "Anúncios",
"inviteUsers": "Convidar usuários",
"addUser": "Adicioanr usuário",

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The word 'Adicioanr' contains a typo. The correct form is 'Adicionar'.

Suggested change
"addUser": "Adicioanr usuário",
"addUser": "Adicionar usuário",

"publishResource": "Publicado",
"featureResource": "Destacado",
"advertiseResource": "Anunciado",
"preserveUploadedMetadataTooltip": "Manter o matadado ISO carregado, ao invés de gerá-lo",

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The word 'matadado' contains a typo. The correct form is 'metadado'.

Suggested change
"preserveUploadedMetadataTooltip": "Manter o matadado ISO carregado, ao invés de gerá-lo",
"preserveUploadedMetadataTooltip": "Manter o metadado ISO carregado, ao invés de gerá-lo",


#: mapstore2_adapter/geoapps/geostories/__init__.py:36
msgid "GeoStory Deleted"
msgstr "GeoStory Apagado"

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

To maintain consistency with the JSON translation file (data.pt-BR.json, line 217), I suggest using 'Excluído' instead of 'Apagado'.

msgstr "GeoStory Excluído"


#: mapstore2_adapter/geoapps/geostories/__init__.py:36
msgid "A GeoStory was deleted"
msgstr "Um GeoStory foi apagado"

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

To maintain consistency with the JSON translation file (data.pt-BR.json, line 217), I suggest using 'excluído' instead of 'apagado'.

msgstr "Um GeoStory foi excluído"


#: mapstore2_adapter/geoapps/geostories/__init__.py:37
msgid "A GeoStory was commented on"
msgstr "Um GeoStory foi comentado em"

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The translation 'comentado em' is too literal and sounds a bit awkward in Portuguese. 'Um GeoStory foi comentado' is a more natural way to express the same idea.

msgstr "Um GeoStory foi comentado"

@gemini-code-assist
Copy link

Warning

Gemini encountered an error creating the review. You can try again by commenting /gemini review.

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
@cmotadev cmotadev changed the title Support for PT-BR translation [Fixes #2262] Support for PT-BR translation Nov 27, 2025
…nd fits the overall tone of the interface better

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
@giohappy giohappy added this to the 5.0.0 milestone Dec 5, 2025
@giohappy giohappy self-requested a review December 5, 2025 17:56
@giohappy giohappy merged commit a51d116 into GeoNode:master Dec 5, 2025
@cmotadev cmotadev deleted the pt_BR-translation branch December 8, 2025 14:30
giohappy added a commit that referenced this pull request Dec 9, 2025
@allyoucanmap
Copy link
Collaborator

@giohappy I just noticed that this PR includes some translations that should be included in MapStore instead.

@cmotadev FYI the content of the ms-translations is replaced every new build with the translations coming from the MapStore submodule, this means at the next js build the ms-translations/data.pt-BR.json will be automatically removed.

For this reason we will need a separate PR for the translations in the MapStore repository https://github.com/geosolutions-it/MapStore2. Once the PR will be merged we will align the submodule in geonode-mapstore-client.

I just opened the PR on MapStore geosolutions-it/MapStore2#11781

@cmotadev
Copy link
Author

cmotadev commented Dec 9, 2025

@giohappy I just noticed that this PR includes some translations that should be included in MapStore instead.

@cmotadev FYI the content of the ms-translations is replaced every new build with the translations coming from the MapStore submodule, this means at the next js build the ms-translations/data.pt-BR.json will be automatically removed.

For this reason we will need a separate PR for the translations in the MapStore repository https://github.com/geosolutions-it/MapStore2. Once the PR will be merged we will align the submodule in geonode-mapstore-client.

I just opened the PR on MapStore geosolutions-it/MapStore2#11781

@allyoucanmap I did a fork from your repo to translate the cookie policy page. At least tomorrow I will finish it and send you a PR

@cmotadev
Copy link
Author

@giohappy I just noticed that this PR includes some translations that should be included in MapStore instead.
@cmotadev FYI the content of the ms-translations is replaced every new build with the translations coming from the MapStore submodule, this means at the next js build the ms-translations/data.pt-BR.json will be automatically removed.
For this reason we will need a separate PR for the translations in the MapStore repository https://github.com/geosolutions-it/MapStore2. Once the PR will be merged we will align the submodule in geonode-mapstore-client.
I just opened the PR on MapStore geosolutions-it/MapStore2#11781

@allyoucanmap I did a fork from your repo to translate the cookie policy page. At least tomorrow I will finish it and send you a PR

Pull request
allyoucanmap/MapStore2#5

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants