On the ethereum.org Discord, you can send a message in the #translatathon & #translate channels
-
You can send an email to translations@ethereum.org
-
-
+While translation quality will not play a critical role in the scoring, any **participants found using machine or AI translations** or suggesting low-quality and inaccurate translations will not be eligible for prizes!
-
-
No. This year, the Translatathon will only have one main individual track and there will be no team competition.
-
You can still team up with your friends and translate together, however everyone will be competing in the Translatathon as an individual and only the number of your individual translated words will count towards your final score.
-
+The evaluation period will take place between throughout September and the results will be announced on the ethereum.org community call on September 25th.
-
-
You can translate into any language! It is recommended to only translate into your native language to ensure sufficient quality, but in short, all languages available in Crowdin are in scope for the Translatathon.
-
If you want to translate into a language that isn't available in Crowdin, reach out to us and we will add any language per request.
-
+All translations will also be fully reviewed before being added to the website.
diff --git a/public/content/contributing/translation-program/translatathon/index.md b/public/content/contributing/translation-program/translatathon/index.md
index 4860344f8a0..d25e4f8ffd0 100644
--- a/public/content/contributing/translation-program/translatathon/index.md
+++ b/public/content/contributing/translation-program/translatathon/index.md
@@ -1,5 +1,5 @@
---
-title: 2024 ethereum.org Translatathon
+title: 2025 ethereum.org Translatathon
lang: en
template: translatathon
---
@@ -8,33 +8,34 @@ template: translatathon
## Introduction
-The ethereum.org Translation Program is an ongoing effort to translate the website into as many languages as possible. We believe that Ethereum content and onboarding resources should be accessible to everyone, regardless of the language they speak.
+We believe that Ethereum content and onboarding resources should be accessible to everyone, regardless of the language they speak.
+To move closer to this goal, the ethereum.org translation program is an initiative to translate the website into as many languages as possible.
-As part of the Translation Program, we are organizing the second edition of the Translatathon with the aim of incentivizing translation contributions in less-active languages, increasing the number of languages and amount of content available on the site, onboard new contributors and reward our existing ones.
+As part of the translation program, we are organizing the 3rd edition of the Translatathon in order to incentivize translation contributions in less-active languages, increase the number of languages and amount of content available on the site, onboard new contributors and reward our existing ones.
-If you are bilingual and want to help make Ethereum content more accessible while competing for prizes, read on to learn more!
+If you are a native speaker of a language other than English and want to help make Ethereum content more accessible while competing for prizes, read on to learn more!
-[Learn more about the ethereum.org Translation Program](/contributing/translation-program/)
+[Learn more about the ethereum.org translation program](/contributing/translation-program/)
## Timeline
-Here are the important dates for the 2024 Translatathon:
+Here are the important dates for the 2025 Translatathon:
@@ -46,30 +47,23 @@ Here are the important dates for the 2024 Translatathon:
-
Who can join?
- Be older than 18 years and fluent in at least one language in addition to English.
+
Who can participate?
+ Anyone older than 18 years, native speaker of at least one non-English language and proficient in English.
-
Do I need to be a translator?
+
Do I need to be a translator?
No. You simply have to be bilingual and suggest human translations (using machine translation is forbidden!) to the best of your ability, no professional experience required.
-
How much time do I have to commit?
- As much as you want. The minimum threshold to be eligible for participatory prizes is 100 translated words, which takes about 10-20 minutes to complete, while competing for the top prizes will require a larger time commitment.
+
How much time do I have to commit?
+ As much as you want. The minimum threshold to be eligible for prizes is 1,000 translated words, which should take about 2 hours to complete, while competing for the top prizes will require a larger time commitment.
-
Do I need to be familiar with Ethereum?
- No. While being familiar with Ethereum can help with your productivity and quality, the Translatathon is as much a learning experience as it is a competition, and everyone is invited to join and learn more about Ethereum while participating.
-
-
-
-
-
-
What do I need to participate?
- We recommend using a computer to translate since our translation platform, Crowdin, is optimized for desktop.
+
Do I need to be familiar with Ethereum?
+ No. While being familiar with Ethereum can help with your productivity and quality, the Translatathon is also a learning experience, and everyone is invited to join and learn more about Ethereum while participating.
@@ -79,18 +73,5 @@ For more details, [see the full Terms & conditions](/contributing/translation-pr
-## Prizes
-
-
-
-## Stay up to date
-
-
-
Translatathon hubs
-
- This year we bring IRL community hubs to join local communities and help translate. These hubs are located all over the world, find out if there is one close to you and join the community!
-
-
-
diff --git a/public/content/contributing/translation-program/translatathon/terms-and-conditions/index.md b/public/content/contributing/translation-program/translatathon/terms-and-conditions/index.md
index 348bf0afe54..04ba401acc1 100644
--- a/public/content/contributing/translation-program/translatathon/terms-and-conditions/index.md
+++ b/public/content/contributing/translation-program/translatathon/terms-and-conditions/index.md
@@ -4,7 +4,7 @@ lang: en
template: translatathon
---
-The Ethereum.org Translation Competition, also referred to as the “Translatathon”, is an experimental initiative by the ethereum.org team to incentivise and reward contributions to the ethereum.org Translation Program.
+The Ethereum.org Translation Competition, also referred to as the “Translatathon”, is an experimental initiative by the ethereum.org team to incentivise and reward contributions to the ethereum.org translation program.
## Modification and Termination.
diff --git a/public/content/contributing/translation-program/translatathon/translatathon-hubs/index.md b/public/content/contributing/translation-program/translatathon/translatathon-hubs/index.md
deleted file mode 100644
index ca749d162df..00000000000
--- a/public/content/contributing/translation-program/translatathon/translatathon-hubs/index.md
+++ /dev/null
@@ -1,28 +0,0 @@
----
-title: 2024 ethereum.org Translatathon
-lang: en
-template: translatathon
----
-
-
-
-## Overview
-
-The Translatathon brings together people from different expertise and cultures to collaborate on one goal: making Ethereum knowledge accessible in as many languages as possible. This year, with the support of local communities, we are bringing Translatathon Hubs to several cities worldwide, where people can get together, meet fellow Ethereum enthusiasts, and participate in the Translatathon.
-
-
-
-
Why do we do it
- Translating is often a lonely task, but it doesn't have to be. By gathering participants in one place, they can enjoy the solitude of crafting the perfect translation while still taking breaks to socialize, have a coffee, and share the most challenging or funny terms they've encountered while translating.
-
-
-
How does it work
- Check the list of Translatathon Hubs to see if there's one happening in your city! Remember, the Translatathon is an online competition, so you can always participate from the comfort of your couch.
-
-
-
-## List of Translatathon Hubs
-
-
-
-
\ No newline at end of file
diff --git a/public/content/contributing/translation-program/translatathon/translatathon-hubs/local-communities.png b/public/content/contributing/translation-program/translatathon/translatathon-hubs/local-communities.png
deleted file mode 100644
index c59de181e54..00000000000
Binary files a/public/content/contributing/translation-program/translatathon/translatathon-hubs/local-communities.png and /dev/null differ
diff --git a/public/content/developers/docs/accounts/index.md b/public/content/developers/docs/accounts/index.md
index 5572ced5329..e79bb205ff8 100644
--- a/public/content/developers/docs/accounts/index.md
+++ b/public/content/developers/docs/accounts/index.md
@@ -45,7 +45,7 @@ Ethereum accounts have four fields:
- `nonce` – A counter that indicates the number of transactions sent from an externally-owned account or the number of contracts created by a contract account. Only one transaction with a given nonce can be executed for each account, protecting against replay attacks where signed transactions are repeatedly broadcast and re-executed.
- `balance` – The number of wei owned by this address. Wei is a denomination of ETH and there are 1e+18 wei per ETH.
- `codeHash` – This hash refers to the _code_ of an account on the Ethereum virtual machine (EVM). Contract accounts have code fragments programmed in that can perform different operations. This EVM code gets executed if the account gets a message call. It cannot be changed, unlike the other account fields. All such code fragments are contained in the state database under their corresponding hashes for later retrieval. This hash value is known as a codeHash. For externally owned accounts, the codeHash field is the hash of an empty string.
-- `storageRoot` – Sometimes known as a storage hash. A 256-bit hash of the root node of a Merkle Patricia trie that encodes the storage contents of the account (a mapping between 256-bit integer values), encoded into the trie as a mapping from the Keccak 256-bit hash of the 256-bit integer keys to the RLP-encoded 256-bit integer values. This trie encodes the hash of the storage contents of this account, and is empty by default.
+- `storageRoot` – Sometimes known as a storage hash. A 256-bit hash of the root node of a [Merkle Patricia Trie](/developers/docs/data-structures-and-encoding/patricia-merkle-trie/) that encodes the storage contents of the account (a mapping between 256-bit integer values), encoded into the trie as a mapping from the Keccak 256-bit hash of the 256-bit integer keys to the RLP-encoded 256-bit integer values. This trie encodes the hash of the storage contents of this account, and is empty by default.

_Diagram adapted from [Ethereum EVM illustrated](https://takenobu-hs.github.io/downloads/ethereum_evm_illustrated.pdf)_
diff --git a/public/content/developers/docs/apis/backend/index.md b/public/content/developers/docs/apis/backend/index.md
index 100b43333fa..47219134ea6 100644
--- a/public/content/developers/docs/apis/backend/index.md
+++ b/public/content/developers/docs/apis/backend/index.md
@@ -147,7 +147,7 @@ These libraries abstract away much of the complexity of interacting directly wit
**Chainstack -** **_Elastic and dedicated Ethereum nodes as a service._**
- [chainstack.com](https://chainstack.com)
-- [Documentation](https://docs.chainbase.com/docs)
+- [Documentation](https://docs.chainstack.com/)
- [Ethereum API reference](https://docs.chainstack.com/reference/ethereum-getting-started)
**Coinbase Cloud Node -** **_Blockchain Infrastructure API._**
diff --git a/public/content/developers/docs/data-and-analytics/index.md b/public/content/developers/docs/data-and-analytics/index.md
index ef855f103af..c972dae22e6 100644
--- a/public/content/developers/docs/data-and-analytics/index.md
+++ b/public/content/developers/docs/data-and-analytics/index.md
@@ -64,7 +64,7 @@ EVM Query Language (EQL) is an SQL-like language designed to query EVM (Ethereum
## Further Reading {#further-reading}
-- [Exploring Crypto Data I: Data Flow Architectures](https://research.2077.xyz/exploring-crypto-data-1-data-flow-architectures)
+- [Exploring Crypto Data I: Data Flow Architectures](https://web.archive.org/web/20250125012042/https://research.2077.xyz/exploring-crypto-data-1-data-flow-architectures)
- [Graph Network Overview](https://thegraph.com/docs/en/about/)
- [Graph Query Playground](https://thegraph.com/explorer/subgraph/graphprotocol/graph-network-mainnet?version=current)
- [API code examples on EtherScan](https://etherscan.io/apis#contracts)
diff --git a/public/content/developers/docs/networks/index.md b/public/content/developers/docs/networks/index.md
index 059cb8ebe64..b6367551854 100644
--- a/public/content/developers/docs/networks/index.md
+++ b/public/content/developers/docs/networks/index.md
@@ -89,7 +89,7 @@ Ephemery is a unique kind of testnet that fully resets every month. The executio
- Always fresh state, short term testing of validators and apps
- Includes only basic set of contracts
- Open validator set and easy to access large amounts of funds
-- Smallest node requirements and quickest sync, <5GB on average
+- Smallest node requirements and quickest sync, <5GB on average
##### Resources
diff --git a/public/content/developers/tutorials/ethereum-for-web2-auth/index.md b/public/content/developers/tutorials/ethereum-for-web2-auth/index.md
index 9ecb9dd2d19..cd166a52027 100644
--- a/public/content/developers/tutorials/ethereum-for-web2-auth/index.md
+++ b/public/content/developers/tutorials/ethereum-for-web2-auth/index.md
@@ -644,7 +644,7 @@ Get the request ID, and delete the nonce from `nonces` to make sure it cannot be
try {
```
-Becasue there are so many ways in which the signature can be invalid, we wrap this in a `try ... catch` block to catch any thrown errors.
+Because there are so many ways in which the signature can be invalid, we wrap this in a `try ... catch` block to catch any thrown errors.
```typescript
const validSignature = await verifyMessage({
diff --git a/public/content/roadmap/pectra/index.md b/public/content/roadmap/pectra/index.md
index a4b11f37369..4276c890b16 100644
--- a/public/content/roadmap/pectra/index.md
+++ b/public/content/roadmap/pectra/index.md
@@ -1,12 +1,14 @@
---
-title: Pectra
-description: Learn about Pectra - the next Ethereum protocol upgrade
+title: Prague-Electra (Pectra)
+description: Learn about the Pectra protocol upgrade
lang: en
---
# Pectra {#pectra}
-Pectra is an upcoming Ethereum protocol upgrade that brings new functionality and changes to the Ethereum network. Following [Dencun](/roadmap/dencun/), this is another major upgrade to both the execution and consensus layer of Ethereum. The shortened name Pectra is a combination of Prague and Electra, which are the respective names for the execution and consensus layer specification changes. Together, these changes bring a number of improvements to Ethereum users, developers and validators.
+The Pectra network upgrade followed [Dencun](/roadmap/dencun/) and brought changes to both the execution and consensus layer of Ethereum. The shortened name Pectra is a combination of Prague and Electra, which are the respective names for the execution and consensus layer specification changes. Together, these changes bring a number of improvements to Ethereum users, developers and validators.
+
+This upgrade was successfully activated on Ethereum mainnet at epoch `364032`, on **07-May-2025 at 10:05 (UTC)**.
Pectra upgrade is only a single step in Ethereum's long-term development goals. Learn more about the protocol roadmap and previous upgrades.
diff --git a/public/content/translations/de/developers/docs/smart-contracts/libraries/index.md b/public/content/translations/de/developers/docs/smart-contracts/libraries/index.md
index 8e472a2dc3d..46a3bf0a4d4 100644
--- a/public/content/translations/de/developers/docs/smart-contracts/libraries/index.md
+++ b/public/content/translations/de/developers/docs/smart-contracts/libraries/index.md
@@ -65,7 +65,7 @@ Es ist erwähnenswert, dass einige ERCs nicht eigenständig sind, sondern Ergän
Beziehen Sie sich immer auf die Dokumentation der Bibliothek, die Sie einbinden, um genaue Anweisungen zur Einbindung in Ihr Projekt zu bekommen. Viele Solidity-Vertragsbibliotheken werden mit `npm` gepackt, sodass Sie sie einfach `npm install` benutzen können. Die meisten Anwendungen zum [Kompilieren](/developers/docs/smart-contracts/compiling/) von Verträgen prüfen Ihre `node_modules` für Smart-Contract-Bibliotheken, sodass Sie Folgendes tun können:
```solidity
-// Dadurch wird die @openzeppelin/contracts-Bibliothek von Ihren node_modules geladen
+// Dadurch wird die @openzeppelin/contracts-Bibliothek von Ihren node_modules geladen
import "@openzeppelin/contracts/token/ERC721/ERC721.sol";
contract MyNFT is ERC721 {
@@ -104,7 +104,7 @@ Schließlich sollten Sie bei der Entscheidung, ob Sie eine Bibliothek integriere
**thirdweb Solidity SDK -** **_Bietet die Tools, die zum effizienten Erstellen von benutzerdefinierten Smart Contracts erforderlich sind_**
-- [Dokumentation](https://portal.thirdweb.com/contracts/build/overview)
+- [Dokumentation](https://portal.thirdweb.com/solidity/)
- [GitHub](https://github.com/thirdweb-dev/contracts)
## Ähnliche Tutorials {#related-tutorials}
diff --git a/public/content/translations/de/developers/docs/smart-contracts/security/index.md b/public/content/translations/de/developers/docs/smart-contracts/security/index.md
index 8633714d670..d37e94b12a7 100644
--- a/public/content/translations/de/developers/docs/smart-contracts/security/index.md
+++ b/public/content/translations/de/developers/docs/smart-contracts/security/index.md
@@ -8,7 +8,7 @@ Smart Contracts sind äußerst flexibel und in der Lage, große Mengen an Werten
Öffentliche Blockchains wie Ethereum erschweren das Problem der Sicherung von Smart Contracts zusätzlich. Der Code des veröffentlichten Vertrags _kann in der Regel _ nicht geändert werden, um Sicherheitslücken zu schließen, während die aus Smart Contracts gestohlenen Vermögenswerte aufgrund der Unveränderlichkeit extrem schwer nachzuverfolgen und meist nicht wiederherzustellen sind.
-Obwohl die Zahlen variieren, wird geschätzt, dass der Gesamtbetrag des gestohlenen oder verlorenen Werts aufgrund von Sicherheitsmängeln in Smart Contracts weit über 1 Milliarde US-Dollar beträgt. Dies beinhaltet hochkarätige Vorfälle, wie den [DAO-Hack](https://hackingdistributed.com/2016/06/18/analysis-of-the-dao-exploit/) (3,6 Mio. ETH gestohlen, nach heutigen Preisen über 1 Milliarde US-Dollar wert), den [Parity Multi-Sig Wallet-Hack](https://www.coindesk.com/markets/2017/07/19/30-million-ether-reported-stolen-due-to-parity-wallet-breach) (30 Mio. US-Dollar von Hackern verloren) und das [Problem mit den eingefrorenen Parity-Wallets](https://www.theguardian.com/technology/2017/nov/08/cryptocurrency-300m-dollars-stolen-bug-ether) (über 300 Mio. US-Dollar in ETH gesperrt).
+Obwohl die Zahlen variieren, wird geschätzt, dass der Gesamtbetrag des gestohlenen oder verlorenen Werts aufgrund von Sicherheitsmängeln in Smart Contracts weit über 1 Milliarde US-Dollar beträgt. Dies beinhaltet hochkarätige Vorfälle, wie den [DAO-Hack](https://hackingdistributed.com/2016/06/18/analysis-of-the-dao-exploit/) (3,6 Mio. ETH gestohlen, nach heutigen Preisen über 1 Milliarde US-Dollar wert), den [Parity Multi-Sig Wallet-Hack](https://www.coindesk.com/30-million-ether-reported-stolen-parity-wallet-breach) (30 Mio. US-Dollar von Hackern verloren) und das [Problem mit den eingefrorenen Parity-Wallets](https://www.theguardian.com/technology/2017/nov/08/cryptocurrency-300m-dollars-stolen-bug-ether) (über 300 Mio. US-Dollar in ETH gesperrt).
Die oben genannten Probleme machen es für Entwickler zwingend erforderlich, in die Entwicklung sicherer, robuster und widerstandsfähiger Smart Contracts zu investieren. Die Sicherheit von Smart Contracts ist eine ernste Angelegenheit, die jeder Entwickler lernen sollte. In diesem Ratgeber werden Sicherheitsüberlegungen für Ethereum-Entwickler behandelt und Ressourcen zur Verbesserung der Smart Contract-Sicherheit vorgestellt.
@@ -304,7 +304,7 @@ Hier ist nichts verkehrt, außer dass `Attacker` eine weitere Funktion hat, die
- `Victim` finally applies the results of the first transaction (and subsequent ones) to its state, so `Attacker`’s balance is set to 0
```
-Da das Guthaben des Aufrufers nicht auf 0 gesetzt wird, bevor die Funktion ausgeführt wurde, können nachfolgende Aufrufe erfolgreich sein und dem Aufrufer ermöglichen, sein Guthaben mehrmals abzuheben. Diese Art von Angriff kann genutzt werden, um einem Smart Contract das Kapital zu entziehen, wie es beim [2016 DAO-Hack](https://www.coindesk.com/learn/understanding-the-dao-attack) geschehen ist. Wiederholungsangriffe sind auch heute noch ein kritisches Thema für Smart Contracts, wie [öffentliche Auflistungen von Reentrancy-Exploits](https://github.com/pcaversaccio/reentrancy-attacks) zeigen.
+Da das Guthaben des Aufrufers nicht auf 0 gesetzt wird, bevor die Funktion ausgeführt wurde, können nachfolgende Aufrufe erfolgreich sein und dem Aufrufer ermöglichen, sein Guthaben mehrmals abzuheben. Diese Art von Angriff kann genutzt werden, um einem Smart Contract das Kapital zu entziehen, wie es beim [2016 DAO-Hack](https://www.coindesk.com/learn/2016/06/25/understanding-the-dao-attack/) geschehen ist. Wiederholungsangriffe sind auch heute noch ein kritisches Thema für Smart Contracts, wie [öffentliche Auflistungen von Reentrancy-Exploits](https://github.com/pcaversaccio/reentrancy-attacks) zeigen.
##### So verhindert man Wiederholungsangriffe
@@ -505,7 +505,7 @@ Wenn Sie vorhaben, ein On-Chain-Oracle nach Assetpreisen zu befragen, sollten Si
- **[Hacken](https://hacken.io)** - _Web3 Cybersicherheitsauditor mit 360-Grad-Ansatz für die Sicherheit der Blockchain._
-- **[](https://www.nethermind.io/smart-contract-audits)** - _Solidity und Cairo Audit-Dienste sorgen für Datenintegrität der Smart Contracts und Sicherheit der Nutzer im Ethereum- und Starknet-Ökosystem._
+- **[](https://nethermind.io/smart-contracts-audits)** - _Solidity und Cairo Audit-Dienste sorgen für Datenintegrität der Smart Contracts und Sicherheit der Nutzer im Ethereum- und Starknet-Ökosystem._
- **[HashEx](https://hashex.org/)** - _HashEx konzentriert sich auf die Prüfung von Blockchain und Smart Contracts, um die Sicherheit von Kryptowährungen zu gewährleisten, und bietet Dienstleistungen wie die Entwicklung von Smart Contracts, Penetrationstests und Blockchain-Beratung._
@@ -515,7 +515,7 @@ Wenn Sie vorhaben, ein On-Chain-Oracle nach Assetpreisen zu befragen, sollten Si
- **[Cyfrin](https://cyfrin.io)** – _Web3-Sicherheits-Kraftwerk, das Krypto-Sicherheit durch Produkte und Smart-Contract-Audit-Dienste fördert._
-- **[ImmuneBytes](https://immunebytes.com/smart-contract-audit/)** – _Web3-Sicherheitsunternehmen, das Sicherheits-Audits für Blockchain-Systeme durch ein Team erfahrener Prüfer und erstklassige Tools anbietet._
+- **[ImmuneBytes](https://www.immunebytes.com//smart-contract-audit/)** – _Web3-Sicherheitsunternehmen, das Sicherheits-Audits für Blockchain-Systeme durch ein Team erfahrener Prüfer und erstklassige Tools anbietet._
- **[Oxorio](https://oxor.io/)** – _Smart-Contract-Audits und Blockchain-Sicherheitsdienste mit Expertise in EVM, Solidity, ZK und Cross-Chain-Technologien für Krypto-Unternehmen und DeFi-Projekte._
diff --git a/public/content/translations/el/developers/docs/data-and-analytics/index.md b/public/content/translations/el/developers/docs/data-and-analytics/index.md
index f571832b248..f5ed9d45d3a 100644
--- a/public/content/translations/el/developers/docs/data-and-analytics/index.md
+++ b/public/content/translations/el/developers/docs/data-and-analytics/index.md
@@ -50,7 +50,7 @@ lang: el
Η Γλώσσα Ερωτημάτων EVM (EQL) είναι μια γλώσσα που μοιάζει με SQL και έχει σχεδιαστεί για να υποβάλλει ερωτήματα σε αλυσίδες EVM (Εικονική μηχανή Ethereum). Ο απώτερος στόχος της EQL είναι να υποστηρίξει σύνθετα σχεσιακά ερωτήματα σε πολίτες πρώτης κατηγορίας της αλυσίδας EVM (μπλοκ, λογαριασμοί και συναλλαγές), ενώ παρέχει στους προγραμματιστές και τους ερευνητές μια εργονομική σύνταξη για καθημερινή χρήση. Με το EQL, οι προγραμματιστές μπορούν να ανακτήσουν δεδομένα blockchain χρησιμοποιώντας οικεία σύνταξη τύπου SQL και να εξαλείψουν την ανάγκη για πολύπλοκο κώδικα boilerplate. Η EQL υποστηρίζει τυπικά αιτήματα δεδομένων blockchain (π.χ. ανάκτηση του μηδενικού και υπολοίπου ενός λογαριασμού στο Ethereum ή ανάκτηση του τρέχοντος μεγέθους και χρονικής σφραγίδας μπλοκ) και προσθέτει συνεχώς υποστήριξη για πιο σύνθετα αιτήματα και σύνολα χαρακτηριστικών.
## Περισσότερες πληροφορίες {#further-reading}
-- [Εξερευνώντας Δεδομένα Κρύπτο I: Αρχιτεκτονική Ροής Δεδομένων](https://research.2077.xyz/exploring-crypto-data-1-data-flow-architectures)
+- [Εξερευνώντας Δεδομένα Κρύπτο I: Αρχιτεκτονική Ροής Δεδομένων](https://web.archive.org/web/20250125012042/https://research.2077.xyz/exploring-crypto-data-1-data-flow-architectures)
- [Επισκόπηση του Δικτύου Graph](https://thegraph.com/docs/en/about/)
- [Χώρος ανάπτυξης Graph Query](https://thegraph.com/explorer/subgraph/graphprotocol/graph-network-mainnet?version=current)
- [Παραδείγματα κώδικα API στο EtherScan](https://etherscan.io/apis#contracts)
diff --git a/public/content/translations/hu/developers/docs/nodes-and-clients/nodes-as-a-service/index.md b/public/content/translations/hu/developers/docs/nodes-and-clients/nodes-as-a-service/index.md
index 9169de7beaa..36dc6bac164 100644
--- a/public/content/translations/hu/developers/docs/nodes-and-clients/nodes-as-a-service/index.md
+++ b/public/content/translations/hu/developers/docs/nodes-and-clients/nodes-as-a-service/index.md
@@ -264,7 +264,7 @@ Az alábbiak a legnépszerűbb Ethereum-csomópontszolgáltatók – ha ismer ol
- Közvetlen, technikai támogatás
- [**NodeReal MegaNode**](https://nodereal.io/)
- - [Dokumentáció](https://docs.nodereal.io/docs/introduction)
+ - [Dokumentáció](https://docs.nodereal.io/nodereal/meganode/introduction)
- Jellemzők
- Megbízható, gyors és skálázható RPC API-szolgáltatások
- Továbbfejlesztett API a web3-fejlesztőknek
diff --git a/public/content/translations/hu/developers/docs/nodes-and-clients/run-a-node/index.md b/public/content/translations/hu/developers/docs/nodes-and-clients/run-a-node/index.md
index 69720fc5995..52b944e63c6 100644
--- a/public/content/translations/hu/developers/docs/nodes-and-clients/run-a-node/index.md
+++ b/public/content/translations/hu/developers/docs/nodes-and-clients/run-a-node/index.md
@@ -162,7 +162,7 @@ Fontos tisztában lenni azzal is, hogy a kliensdiverzitás [problémát jelent a
##### Konszenzusos kliensek
- [Lighthouse](https://github.com/sigp/lighthouse/releases/latest)
-- [Lodestar](https://chainsafe.github.io/lodestar/run/getting-started/installation#build-from-source/) (nem ad előre megépített binárist, csak egy Docker-képet vagy fel kell építeni a forrásból)
+- [Lodestar](https://chainsafe.github.io/lodestar/install/source/) (nem ad előre megépített binárist, csak egy Docker-képet vagy fel kell építeni a forrásból)
- [Nimbus](https://github.com/status-im/nimbus-eth2/releases/latest)
- [Prysm](https://github.com/prysmaticlabs/prysm/releases/latest)
- [Teku](https://github.com/ConsenSys/teku/releases)
@@ -256,7 +256,7 @@ A Besu egy telepítő opcióval bír, mely egy sor kérdést tesz fel, majd lege
besu --Xlauncher
```
-A [Besu dokumentációja](https://besu.hyperledger.org/public-networks/get-started/start-node/) további opciókat és konfigurációs részleteket tartalmaz.
+A [Besu dokumentációja](https://besu.hyperledger.org/en/latest/HowTo/Get-Started/Starting-node/) további opciókat és konfigurációs részleteket tartalmaz.
##### Az Erigon futtatása
@@ -288,7 +288,7 @@ Tekintse meg a [dokumentációt az összes konfigurálási opcióhoz](https://ge
##### A Nethermind futtatása
-A Nethermind különféle [telepítési opciókat](https://docs.nethermind.io/get-started/installing-nethermind) kínál. A csomag számos binárist tartalmaz, beleértve egy Telepítőt, ami egy vezetett felállítást tesz lehetővé, így a konfigurációt interaktív módon lehet létrehozni. Másik megoldásként használhatja a Runner-t is, ami a végrehajtási program maga, és konfigurációs jelölőkkel futtathatja. A JSON-RPC alapból engedélyezve van.
+A Nethermind különféle [telepítési opciókat](https://docs.nethermind.io/nethermind/first-steps-with-nethermind/getting-started) kínál. A csomag számos binárist tartalmaz, beleértve egy Telepítőt, ami egy vezetett felállítást tesz lehetővé, így a konfigurációt interaktív módon lehet létrehozni. Másik megoldásként használhatja a Runner-t is, ami a végrehajtási program maga, és konfigurációs jelölőkkel futtathatja. A JSON-RPC alapból engedélyezve van.
```sh
Nethermind.Runner --config mainnet \
@@ -296,7 +296,7 @@ Nethermind.Runner --config mainnet \
--JsonRpc.JwtSecretFile=/path/to/jwtsecret
```
-A Nethermind dokumentációk egy [teljeskörű útmutatót](https://docs.nethermind.io/first-steps-with-nethermind/running-nethermind-post-merge) adnak arról, hogyan lehet a Nethermind-ot konszenzusos klienssel működtetni.
+A Nethermind dokumentációk egy [teljeskörű útmutatót](https://docs.nethermind.io/nethermind/first-steps-with-nethermind/running-nethermind-post-merge) adnak arról, hogyan lehet a Nethermind-ot konszenzusos klienssel működtetni.
A végrehajtási kliens elindítja a fő funkcióit, a kiválasztott végpontokat, és társakat keres. Miután sikeresen felfedezte a társait, elkezd szinkronizálni. A végrehajtási kliens kapcsolódásra vár a konszenzusos klienstől. A jelenlegi blokkláncadatok elérhetők lesznek, amint a kliens sikeresen szinkronizál a jelen státuszhoz.
diff --git a/public/content/translations/hu/developers/docs/smart-contracts/libraries/index.md b/public/content/translations/hu/developers/docs/smart-contracts/libraries/index.md
index 9cae48d70ff..49dabb58139 100644
--- a/public/content/translations/hu/developers/docs/smart-contracts/libraries/index.md
+++ b/public/content/translations/hu/developers/docs/smart-contracts/libraries/index.md
@@ -104,7 +104,7 @@ Végül, amikor eldöntöd, hogy felveszel-e egy könyvtárat, vedd figyelembe a
**thirdweb Solidity SDK –** **_Olyan eszközöket biztosít, melyekkel hatékonyan lehet személyre szabott okosszerződéseket létrehozni_**
-- [Dokumentáció](https://portal.thirdweb.com/contracts/build/overview)
+- [Dokumentáció](https://portal.thirdweb.com/solidity/)
- [GitHub](https://github.com/thirdweb-dev/contracts)
## Kapcsolódó útmutatók {#related-tutorials}
diff --git a/public/content/translations/hu/developers/docs/smart-contracts/security/index.md b/public/content/translations/hu/developers/docs/smart-contracts/security/index.md
index c6ac5b766ee..d9f8d59749c 100644
--- a/public/content/translations/hu/developers/docs/smart-contracts/security/index.md
+++ b/public/content/translations/hu/developers/docs/smart-contracts/security/index.md
@@ -8,7 +8,7 @@ Az okosszerződések rendkívüli módon rugalmasak és képesek nagy mennyiség
A nyilvános blokkláncok, mint az Ethereum, tovább bonyolítják az okosszerződések biztosításának problémáját. A telepített szerződéskód _általában_ nem módosítható, hogy ezzel a biztonsági kockázatokat elkerüljék, eközben az okosszerződésekből ellopott eszközöket rendkívül nehéz lekövetni és a legtöbb esetben visszaszerezhetetlenek a megváltoztathatatlanság miatt.
-Bár a számok változnak, de úgy becsülik, hogy a biztonsági hibák miatt az okosszerződésből ellopott vagy onnan elvesztett értékek teljes összege könnyen meghaladhatja az 1 milliárd dollárt is. Ez magába foglal olyan nagy horderejű incidenseket is, mint amilyen a [DAO-hackelés volt](https://hackingdistributed.com/2016/06/18/analysis-of-the-dao-exploit/) (3,6 millió ETH-t loptak, ami meghaladja az 1 milliárd dollárt mai áron), [Parity több aláírásos tárca hackelését](https://www.coindesk.com/markets/2017/07/19/30-million-ether-reported-stolen-due-to-parity-wallet-breach) (30 millió USD-t veszett el), és a [Parity befagyasztott tárcaproblémát](https://www.theguardian.com/technology/2017/nov/08/cryptocurrency-300m-dollars-stolen-bug-ether) (300 millió USD-nyi ETH örökre elérhetetlenné vált).
+Bár a számok változnak, de úgy becsülik, hogy a biztonsági hibák miatt az okosszerződésből ellopott vagy onnan elvesztett értékek teljes összege könnyen meghaladhatja az 1 milliárd dollárt is. Ez magába foglal olyan nagy horderejű incidenseket is, mint amilyen a [DAO-hackelés volt](https://hackingdistributed.com/2016/06/18/analysis-of-the-dao-exploit/) (3,6 millió ETH-t loptak, ami meghaladja az 1 milliárd dollárt mai áron), [Parity több aláírásos tárca hackelését](https://www.coindesk.com/30-million-ether-reported-stolen-parity-wallet-breach) (30 millió USD-t veszett el), és a [Parity befagyasztott tárcaproblémát](https://www.theguardian.com/technology/2017/nov/08/cryptocurrency-300m-dollars-stolen-bug-ether) (300 millió USD-nyi ETH örökre elérhetetlenné vált).
Ezek az esetek kötelezővé teszik a fejlesztők számára, hogy folyamatosan azon dolgozzanak, hogy az okosszerződések biztonságosak, robusztusak és ellenállók legyenek. Az okosszerződésbiztonság komoly téma, melyet minden fejlesztőnek a maga érdekében meg kell ismerni. Ez az útmutató lefedi azokat a biztonsági megfontolásokat, amelyek az Ethereum-fejlesztőknek fontosak, és forrásokat tár fel az okosszerződésbiztonság továbbfejlesztésére.
@@ -304,7 +304,7 @@ Ebben még nincs semmi rossz, viszont a `attacker` (támadó) szerződésben van
- `Victim` finally applies the results of the first transaction (and subsequent ones) to its state, so `Attacker`’s balance is set to 0
```
-Összességében, mivel a meghívó egyenlege nem lesz 0 mindaddig, amíg a függvényvégrehajtás nem zárul le, a rákövetkező meghívások sikeresek lesznek, és megengedik a meghívónak, hogy kivegye az egyenlegét többször is. Ez a támadás alkalmas arra, hogy egy okosszerződés pénzeszközeit kifolyassák, ahogy az a [2016-os DAO hackelésnél](https://www.coindesk.com/learn/understanding-the-dao-attack) megtörtént. Az újrabelépéses támadás még mindig kritikus probléma az okosszerződéseknél, ahogy azt az [újrabelépéses támadások nyilvános listája](https://github.com/pcaversaccio/reentrancy-attacks) mutatja.
+Összességében, mivel a meghívó egyenlege nem lesz 0 mindaddig, amíg a függvényvégrehajtás nem zárul le, a rákövetkező meghívások sikeresek lesznek, és megengedik a meghívónak, hogy kivegye az egyenlegét többször is. Ez a támadás alkalmas arra, hogy egy okosszerződés pénzeszközeit kifolyassák, ahogy az a [2016-os DAO hackelésnél](https://www.coindesk.com/learn/2016/06/25/understanding-the-dao-attack/) megtörtént. Az újrabelépéses támadás még mindig kritikus probléma az okosszerződéseknél, ahogy azt az [újrabelépéses támadások nyilvános listája](https://github.com/pcaversaccio/reentrancy-attacks) mutatja.
##### Hogyan lehet megakadályozni egy újrabelépéses támadást
@@ -505,7 +505,7 @@ Ha Ön azt tervezi, hogy egy láncon lévő orákulumot kérdez le eszközárak
- **[Hacken](https://hacken.io)** – _Web3 kiberbiztonsági auditor, amely 360 fokos megközelítést alkalmaz a blokkláncbiztonságban._
-- **[Nethermind](https://www.nethermind.io/smart-contract-audits)** – _Solidity és Cairo auditszolgáltatások, amelyekkel az okosszerződések integritása, valamint a felhasználók biztonsága is biztosíthat az Ethereumon és a Starkneten._
+- **[Nethermind](https://nethermind.io/smart-contracts-audits)** – _Solidity és Cairo auditszolgáltatások, amelyekkel az okosszerződések integritása, valamint a felhasználók biztonsága is biztosíthat az Ethereumon és a Starkneten._
- **[HashEx](https://hashex.org/)** – _A HashEx a blokkláncok és okosszerződések auditálásra szakosodott a kriptovaluták biztonságának biztosítása céljából, illetve olyan szolgáltatásokat nyújt, mint az okosszerződés-fejlesztés, sérülékenység-vizsgálat, blokklánctanácsadás._
@@ -515,7 +515,7 @@ Ha Ön azt tervezi, hogy egy láncon lévő orákulumot kérdez le eszközárak
- **[Cyfrin](https://cyfrin.io)** – _Web3 biztonsági erőmű, elősegíti kriptobiztonságot termékeken és okosszerződés-ellenőrzési szolgáltatásokon keresztül._
-- **[ImmuneBytes](https://immunebytes.com/smart-contract-audit/)** – _Web3 biztonsági cég, amely a blokkláncrendszerek biztonsági ellenőrzését kínálja tapasztalt auditorcsapattal és a legjobb eszközökkel._
+- **[ImmuneBytes](https://www.immunebytes.com//smart-contract-audit/)** – _Web3 biztonsági cég, amely a blokkláncrendszerek biztonsági ellenőrzését kínálja tapasztalt auditorcsapattal és a legjobb eszközökkel._
- **[Oxorio](https://oxor.io/)** - _Okosszerződés-auditok és blokkláncbiztonsági szolgáltatások, szakértelem az EVM, Solidity, ZK, kriptocégek láncok közötti technológiái és DeFi projektek területén._
diff --git a/src/components/FeedbackWidget/FixedDot.tsx b/src/components/FeedbackWidget/FixedDot.tsx
index 2337e759708..3e144add559 100644
--- a/src/components/FeedbackWidget/FixedDot.tsx
+++ b/src/components/FeedbackWidget/FixedDot.tsx
@@ -38,14 +38,14 @@ const FixedDot = forwardRef(
/>
{t("feedback-widget-prompt")}
diff --git a/src/components/Translatathon/CountdownBanner.tsx b/src/components/Translatathon/CountdownBanner.tsx
index 3666672ccb7..e64b35805b2 100644
--- a/src/components/Translatathon/CountdownBanner.tsx
+++ b/src/components/Translatathon/CountdownBanner.tsx
@@ -6,11 +6,11 @@ export const CountdownBanner = () => {
const [countdown, setCountdown] = useState("")
const translatathonStartDate = useMemo(
- () => new Date("August 9, 2024 12:00:00 UTC"),
+ () => new Date("August 25, 2025 12:00:00 UTC"),
[]
)
const translatathonEndDate = useMemo(
- () => new Date("August 18, 2024 12:00:00 UTC"),
+ () => new Date("August 31, 2025 12:00:00 UTC"),
[]
)
diff --git a/src/components/Translatathon/DatesAndTimeline.tsx b/src/components/Translatathon/DatesAndTimeline.tsx
index 6f19299eca7..90b799457d6 100644
--- a/src/components/Translatathon/DatesAndTimeline.tsx
+++ b/src/components/Translatathon/DatesAndTimeline.tsx
@@ -21,30 +21,30 @@ export const dates = [
link: APPLICATION_URL,
linkText: "Apply",
},
- {
- title: "Workshops",
- description:
- "Join our Discord to participate in onboarding calls and workshops and learn all about the Translatathon",
- startDate: new Date("2024-08-05T12:00:00Z"),
- endDate: new Date("2024-08-08T12:00:00Z"),
- link: "/discord/",
- linkText: "Prepare",
- },
+ // {
+ // title: "Workshops",
+ // description:
+ // "Join our Discord to participate in onboarding calls and workshops and learn all about the Translatathon",
+ // startDate: new Date("2025-08-15T12:00:00"),
+ // endDate: new Date("2025-08-22T12:00:00"),
+ // link: "/discord/",
+ // linkText: "Join our Discord",
+ // },
{
title: "Translatathon",
description:
- "The translation period - translate as much or as little as you want",
- startDate: new Date("2024-08-09T12:00:00Z"),
- endDate: new Date("2024-08-18T12:00:00Z"),
+ "Collect points for any translations you add during the translation period",
+ startDate: new Date("2025-08-25T00:00:00"),
+ endDate: new Date("2025-08-31T23:59:59"),
link: CROWDIN_PROJECT_URL,
linkText: "Translate",
},
{
title: "Evaluation period",
description:
- "Each translation will be evaluated by professional reviewers to verify translations were not done with AI tools and meet the minimum quality threshold",
- startDate: new Date("2024-08-19T12:00:00Z"),
- endDate: new Date("2024-08-28T12:00:00Z"),
+ "Each translation will be evaluated by professional reviewers to make sure no AI tools were used and they meet the minimum quality threshold",
+ startDate: new Date("2025-09-01T00:00:00"),
+ endDate: new Date("2025-09-22T23:59:59"),
link: null,
linkText: null,
},
@@ -52,7 +52,7 @@ export const dates = [
title: "Results announcement",
description:
"We will announce the results and winners on the ethereum.org community Call",
- startDate: new Date("2024-08-29T12:00:00Z"),
+ startDate: new Date("2025-09-25T00:00:00"),
endDate: null,
link: null,
linkText: null,
@@ -124,6 +124,7 @@ export const DatesAndTimeline = () => {
)
})}
+
- )
-}
diff --git a/src/components/Translatathon/StepByStepInstructions.tsx b/src/components/Translatathon/StepByStepInstructions.tsx
index d864aa86d54..c7c75a9c13c 100644
--- a/src/components/Translatathon/StepByStepInstructions.tsx
+++ b/src/components/Translatathon/StepByStepInstructions.tsx
@@ -11,20 +11,20 @@ import {
const instructions = [
{
- title: "Read the rules and FAQs",
- description: "Get familiar with the rules, prizes and translation process",
+ title: "Read the rules and details",
+ description: "Get familiar with the rules, translation process and what to translate",
ctaLink: "/contributing/translation-program/translatathon/details/",
ctaLabel: "Learn",
},
{
title: "Submit your application",
description:
- "Everyone needs to fill out the application form before the translation period starts!",
+ "All participants need to fill out the application form before the translation period starts!",
ctaLink: APPLICATION_URL,
ctaLabel: "Apply",
},
{
- title: "Register on Crowdin (translation platform)",
+ title: "Register on Crowdin",
description:
"Join the ethereum.org project and familiarize yourself with Crowdin, where all the translations will take place",
ctaLink: CROWDIN_PROJECT_URL,
@@ -33,12 +33,12 @@ const instructions = [
{
title: "Join our Discord",
description:
- "Attend the onboarding calls and workshops, stay up to date with the latest news or ask questions",
+ "Keep up with the latest updates, attend the onboarding calls or ask questions",
ctaLink: "/discord/",
ctaLabel: "Join",
},
{
- title: "Translate! August 9th to August 18th",
+ title: "Translate! August 25th to August 31st",
description:
"Translate content to earn points. Each word you translate counts towards your final score",
ctaLink: CROWDIN_PROJECT_URL,
@@ -47,15 +47,15 @@ const instructions = [
{
title: "Wait for evaluations",
description:
- "All translations will be evaluated for quality and machine translations will be rejected",
+ "All translations will be evaluated for quality and AI or machine translations will be rejected",
ctaLink: null,
},
{
title: "Claim your prizes",
description: (
<>
- Results will be announced on August 29th. Eligible
- participants will receive an email with prize claim instructions.
+ Results will be announced on September 25th. Eligible
+ participants will receive an email with instructions on how to prize claim their prizes.
>
),
ctaLink: null,
diff --git a/src/components/Translatathon/TranslatathonInANutshell.tsx b/src/components/Translatathon/TranslatathonInANutshell.tsx
index 63361f3e8bd..5c06a83dde4 100644
--- a/src/components/Translatathon/TranslatathonInANutshell.tsx
+++ b/src/components/Translatathon/TranslatathonInANutshell.tsx
@@ -19,7 +19,7 @@ export const TranslatathonInANutshell = () => {
Earn points
Translate ethereum.org and ecosystem content to earn points and
- compete with other participants. 1 translated word = 1 point
+ compete against other participants. 1 translated word = 1 point
- Using machine translation is forbidden! All translations will be
+ Using AI or machine translation is forbidden! All translations will be
reviewed and evaluated, and participants using machine translation
- will be automatically disqualified and not be eligible to claim
- prizes (see{" "}
+ will not be eligible to claim prizes (see{" "}
terms and conditions
diff --git a/src/components/Translatathon/TranslatathonPrizes.tsx b/src/components/Translatathon/TranslatathonPrizes.tsx
index beedfa42824..960cf54db0e 100644
--- a/src/components/Translatathon/TranslatathonPrizes.tsx
+++ b/src/components/Translatathon/TranslatathonPrizes.tsx
@@ -14,8 +14,7 @@ const TranslatathonPrizes = () => {
- The translatathon is a competitive hackathon-style event where you can
+ The translatathon is a translation competition where you can
compete for prizes by translating ethereum.org content into different
languages.
diff --git a/src/lib/utils/intl.ts b/src/lib/utils/intl.ts
index 6ca6c11cd64..f7d034510f3 100644
--- a/src/lib/utils/intl.ts
+++ b/src/lib/utils/intl.ts
@@ -7,3 +7,9 @@ export const getLanguageCodeName = (languageCode: string, locale: string) => {
}).of(languageCode) as string
)
}
+
+export const getCountryCodeName = (countryCode: string, locale: string) => {
+ return new Intl.DisplayNames([locale], {
+ type: "region",
+ }).of(countryCode) as string
+}
diff --git a/src/lib/utils/sanitize.ts b/src/lib/utils/sanitize.ts
new file mode 100644
index 00000000000..3311113e68f
--- /dev/null
+++ b/src/lib/utils/sanitize.ts
@@ -0,0 +1,45 @@
+/**
+ * Lightweight sanitizer for user input to prevent XSS attacks
+ * Specifically designed for plain text content
+ *
+ * @param input - The string to sanitize
+ * @returns Sanitized string with dangerous content removed
+ */
+export function sanitizeInput(input: string): string {
+ return (
+ input
+ // Remove script tags (any variation)
+ .replace(/