Skip to content

Commit

Permalink
Merge pull request #3540 from ethereum/dev
Browse files Browse the repository at this point in the history
Deploy v2.33.1
  • Loading branch information
wackerow authored Aug 2, 2021
2 parents 8da622d + 81db6aa commit 07e8e66
Show file tree
Hide file tree
Showing 65 changed files with 373 additions and 154 deletions.
12 changes: 11 additions & 1 deletion .all-contributorsrc
Original file line number Diff line number Diff line change
Expand Up @@ -772,7 +772,8 @@
"avatar_url": "https://avatars0.githubusercontent.com/u/382183?v=4",
"profile": "http://phor.net",
"contributions": [
"content"
"content",
"doc"
]
},
{
Expand Down Expand Up @@ -4227,6 +4228,15 @@
"contributions": [
"code"
]
},
{
"login": "hbriese",
"name": "Hayden Briese",
"avatar_url": "https://avatars.githubusercontent.com/u/14974903?v=4",
"profile": "https://github.com/hbriese",
"contributions": [
"bug"
]
}
],
"contributorsPerLine": 7,
Expand Down
5 changes: 4 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -566,7 +566,7 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
<td align="center"><a href="https://www.samajammin.com/"><img src="https://avatars1.githubusercontent.com/u/8097623?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Sam Richards</b></sub></a><br /><a href="https://github.com/ethereum/ethereum-org-website/commits?author=samajammin" title="Code">💻</a> <a href="#content-samajammin" title="Content">🖋</a> <a href="https://github.com/ethereum/ethereum-org-website/commits?author=samajammin" title="Documentation">📖</a> <a href="#projectManagement-samajammin" title="Project Management">📆</a></td>
<td align="center"><a href="http://antodp.xyz"><img src="https://avatars3.githubusercontent.com/u/20992089?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Antonio Della Porta</b></sub></a><br /><a href="https://github.com/ethereum/ethereum-org-website/commits?author=antodp" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/Abhimanyu121"><img src="https://avatars0.githubusercontent.com/u/16034874?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Abhimanyu Shekhawat</b></sub></a><br /><a href="#content-Abhimanyu121" title="Content">🖋</a></td>
<td align="center"><a href="http://phor.net"><img src="https://avatars0.githubusercontent.com/u/382183?v=4?s=100" width="100px;" alt=""/><br /><sub><b>William Entriken</b></sub></a><br /><a href="#content-fulldecent" title="Content">🖋</a></td>
<td align="center"><a href="http://phor.net"><img src="https://avatars0.githubusercontent.com/u/382183?v=4?s=100" width="100px;" alt=""/><br /><sub><b>William Entriken</b></sub></a><br /><a href="#content-fulldecent" title="Content">🖋</a> <a href="https://github.com/ethereum/ethereum-org-website/commits?author=fulldecent" title="Documentation">📖</a></td>
<td align="center"><a href="http://sangphilkim.me"><img src="https://avatars1.githubusercontent.com/u/13456532?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Sangphil Kim</b></sub></a><br /><a href="#translation-sangphilkim" title="Translation">🌍</a></td>
<td align="center"><a href="https://github.com/tstt"><img src="https://avatars2.githubusercontent.com/u/16997688?v=4?s=100" width="100px;" alt=""/><br /><sub><b>peijie</b></sub></a><br /><a href="#translation-tstt" title="Translation">🌍</a></td>
</tr>
Expand Down Expand Up @@ -1047,6 +1047,9 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
<td align="center"><a href="http://blackwood.london"><img src="https://avatars.githubusercontent.com/u/646863?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Graeme Blackwood</b></sub></a><br /><a href="https://github.com/ethereum/ethereum-org-website/issues?q=author%3Agraemeblackwood" title="Bug reports">🐛</a></td>
<td align="center"><a href="https://github.com/il3ven"><img src="https://avatars.githubusercontent.com/u/4337699?v=4?s=100" width="100px;" alt=""/><br /><sub><b>il3ven</b></sub></a><br /><a href="https://github.com/ethereum/ethereum-org-website/commits?author=il3ven" title="Code">💻</a></td>
</tr>
<tr>
<td align="center"><a href="https://github.com/hbriese"><img src="https://avatars.githubusercontent.com/u/14974903?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Hayden Briese</b></sub></a><br /><a href="https://github.com/ethereum/ethereum-org-website/issues?q=author%3Ahbriese" title="Bug reports">🐛</a></td>
</tr>
</table>
<!-- markdownlint-restore -->
Expand Down
4 changes: 3 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "ethereum-org-website",
"version": "2.33.0",
"version": "2.33.1",
"description": "Website of ethereum.org",
"main": "index.js",
"repository": "git@github.com:ethereum/ethereum-org-website.git",
Expand Down Expand Up @@ -48,6 +48,7 @@
"prism-react-renderer": "^1.1.1",
"prismjs": "^1.24.0",
"react": "17.0.2",
"react-countdown": "^2.3.2",
"react-dom": "17.0.2",
"react-emoji-render": "^1.2.4",
"react-helmet": "^6.1.0",
Expand Down Expand Up @@ -77,6 +78,7 @@
"generate-heading-ids": "node src/scripts/generate-heading-ids.js",
"merge-translations": "node src/scripts/merge-translations.js",
"start": "yarn merge-translations && yarn copy-contributors && gatsby develop",
"start:lambda": "netlify-lambda serve src/lambda",
"start:static": "gatsby build && gatsby serve",
"serve": "gatsby serve",
"test": "jest"
Expand Down
2 changes: 2 additions & 0 deletions src/components/Layout.js
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ import "../styles/layout.css"
import { lightTheme, darkTheme, GlobalStyle } from "../theme"

import Footer from "./Footer"
import ReleaseBanner from "./ReleaseBanner"
import Nav from "./Nav"
import SideNav from "./SideNav"
import SideNavMobile from "./SideNavMobile"
Expand Down Expand Up @@ -113,6 +114,7 @@ const Layout = (props) => {
path={path}
/>
{shouldShowSideNav && <SideNavMobile path={path} />}
<ReleaseBanner storageKey={"london-release-banner"} />
<MainContainer>
{shouldShowSideNav && <SideNav path={path} />}
<MainContent>
Expand Down
128 changes: 128 additions & 0 deletions src/components/ReleaseBanner.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
// Libraries
import React, { useEffect, useState } from "react"
import Countdown, { zeroPad } from "react-countdown"
import styled from "styled-components"

// Components
import BannerNotification from "./BannerNotification"
import Emoji from "./Emoji"
import Icon from "./Icon"
import Link from "./Link"
import Translation from "./Translation"

// Utils
import { getFreshData } from "../utils/cache"

const CloseIconContainer = styled.span`
position: absolute;
cursor: pointer;
top: 1.5rem;
right: 1.5rem;
& > svg {
fill: ${(props) => props.theme.colors.background};
&:hover path {
fill: ${(props) => props.theme.colors.background};
}
}
`

const StyledEmoji = styled(Emoji)`
margin-right: 1rem;
flex-shrink: 0;
`

const StyledBannerNotification = styled(BannerNotification)`
justify-content: center;
align-items: center;
flex-wrap: wrap;
position: relative;
padding-right: 3rem;
`

const Span = styled.span`
padding-left: 5px;
`

const ReleaseBanner = ({ storageKey }) => {
const [loading, setLoading] = useState(true)
const [show, setShow] = useState(true)
const [timeLeft, setTimeLeft] = useState("0")

useEffect(() => {
setLoading(true)
const fetchBlockInfo = async () => {
try {
const data = await getFreshData("/.netlify/functions/etherscanBlock")
setTimeLeft(data)
setLoading(false)
} catch (error) {
// will console log if an error, but wont set loading to false so that banner
// doesnt show up
console.error(error)
}
}
fetchBlockInfo()

if (localStorage && localStorage.getItem(storageKey) !== null) {
setShow(false)
} else {
setShow(true)
}
}, [storageKey])

const handleClose = () => {
if (localStorage) {
localStorage.setItem(storageKey, true)
}
setShow(false)
}

const renderer = ({ days, hours, minutes, seconds, completed }) => {
if (completed) {
return (
<StyledBannerNotification shouldShow={show}>
<CloseIconContainer onClick={handleClose}>
<Icon name="close" />
</CloseIconContainer>
<StyledEmoji size={2} text=":tada:" />
<Translation id="london-upgrade-banner-released" />
<Span>
<Link to="/history/#london">
<Translation id="learn-more" />
</Link>
</Span>
</StyledBannerNotification>
)
} else {
return (
<StyledBannerNotification shouldShow={show}>
<CloseIconContainer onClick={handleClose}>
<Icon name="close" />
</CloseIconContainer>
<StyledEmoji size={2} text=":tada:" />
<Translation id="london-upgrade-banner" />
<Span>
{zeroPad(days, 2)}:{zeroPad(hours, 2)}:{zeroPad(minutes, 2)}:
{zeroPad(seconds, 2)}!
</Span>
<Span>
<Link to="/history/#london">
<Translation id="learn-more" />
</Link>
</Span>
</StyledBannerNotification>
)
}
}

return loading ? null : (
<Countdown
date={Date.now() + parseFloat(timeLeft) * 1000}
renderer={renderer}
/>
)
}

export default ReleaseBanner
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
67 changes: 54 additions & 13 deletions src/content/contributing/translation-program/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,9 @@ The Translation Program is a collaborative effort to translate ethereum.org into

Our progress so far:

- **1,400 +** translators
- **35** languages live on site
- **1.4 million** words translated in 2021
- **1,800 +** translators
- **36** languages live on site
- **1.5 million** words translated in 2021

If you want to get involved and help us grow the global Ethereum community by translating the website into your language, follow the steps below!

Expand All @@ -22,18 +22,55 @@ If you want to get involved and help us grow the global Ethereum community by tr
<a href="https://ethereum.org/en/contributing/#poap">More on POAPs</a>
</InfoBanner>

## How to join {#how-to-join}
## How to translate {#how-to-translate}

1. **[Join our project on Crowdin](https://crowdin.com/project/ethereum-org/invite)**
_You will need to create a Crowdin account if you don't already have one. Here's [documentation on how to use Crowdin](https://support.crowdin.com/online-editor/)_
You will need to log in to your Crowdin account or sign up if you dont already have one. All that is required to sign up is an e-mail account and password.

2. **Find the language you want to translate and select a document. If translation progress is below 100%, please contribute! Don't see your language listed? [Open an issue](https://github.com/ethereum/ethereum-org-website/issues/new/choose)**
_A note on content versions: we use version management within Crowdin to avoid translation delays for added content. When you check out a language, for example, [Filipino](https://crowdin.com/project/ethereum-org/fil#) you'll see folders for each site version ("v2.0", "v2.1", etc.)._
_We encourage you to translate the lowest version first and work your way up to higher versions (v.2.0 → v.2.1 → v.2.2 → ⋯) as lower versions will be updated on the site first_
3. **Once you've completed the translation (i.e. all files for a content version display 100%), our professional translation service will review (and potentially edit) the content. Once the review is complete (i.e. review progress is 100%), we will add it to the website.**
2. **Open the language you want to translate and find a document to work on**
The website content is divided into a number of documents and language versions. You can check the progress of each document on the right – if translation progress is below 100%, please contribute!

Don't see your language listed? [Open an issue](https://github.com/ethereum/ethereum-org-website/issues/new/choose)

![Translated and untranslated files on Crowdin](./crowdin-files.png)

A note on content versions: we use version management within Crowdin to avoid translation delays for added content. When you check out a language, for example, [Filipino](https://crowdin.com/project/ethereum-org/fil#) you'll see folders for each site version ("v2.0", "v2.1", etc.).
We encourage you to translate the lowest version first and work your way up to higher versions (v.2.0 → v.2.1 → v.2.2 → ⋯) as lower versions will be updated on the site first.

3. **Translate**
After selecting the file you want to translate, it will open in the online editor. If you have never used Crowdin before, you can use this quick guide to go over the basics.

![Crowdin online editor](./online-editor.png)

**_1 – Left sidebar_**
- Untranslated (red) – text that has not been worked on yet. These are the strings that you should be translating.
- Translated (green) – text that has already been translated, but not yet reviewed. You are welcome to suggest alternate translations, or vote on existing ones using the ‘’+’’ and ‘’-‘‘ buttons in the editor.
- Approved (check mark) – text that has already been reviewed and is currently live on the website.

You can also use the buttons on top to search for specific strings, filter them by status or change the view.

**_2 – Editor area_**

The main translation area – source text is displayed on top, with additional context and screenshots, if available.
To suggest a new translation, enter your translation in the ‘’Enter translation here’’ field and click Save.

You can also find existing translations of the string and translations into other languages in this section, as well as translation memory matches and machine translation suggestions.

**_3 – Right sidebar_**

This is where you can find comments, translation memory entries and glossary entries. The default view shows the comments and allows translators to communicate, raise issues or report incorrect translations.

By using the buttons on top, you can also switch to the Translation Memory, where you can search for existing translations, or to the Glossary, which contains descriptions and standard translations of key terms.

Want to learn more? Feel free to check out the [documentation on using the Crowdin online editor](https://support.crowdin.com/online-editor/)

4. **Review process**
Once you've completed the translation (i.e. all files for a content version display 100%), our professional translation service will review (and potentially edit) the content. Once the review is complete (i.e. review progress is 100%), we will add it to the website.

Do you have any questions? Or want to collaborate with our team and other translators? Please post in the #translations channel of our [ethereum.org Discord server](https://discord.gg/6WX7E97)

You can also reach out to us at translations@ethereum.org

Thank you for your participation in the ethereum.org Translation Program!

<InfoBanner shouldCenter emoji=":information_source:">
Expand All @@ -46,20 +83,24 @@ Thank you for your participation in the ethereum.org Translation Program!
**Tools**

- [Microsoft Language Portal](https://www.microsoft.com/en-us/language)
_Useful for finding and checking the standard translations of technical terms_
_useful for finding and checking the standard translations of technical terms_
- [Linguee](https://www.linguee.com/)
_– Search engine for translations and dictionary that enables searching by word or phrase_
_– search engine for translations and dictionary that enables searching by word or phrase_
- [Proz term search](https://www.proz.com/search/)
_– database of translation dictionaries and glossaries for specialized terms_
- [Eurotermbank](https://www.eurotermbank.com/)
_– collections of European terminology in 42 languages_

**Communities**

- [Chinese translator group](https://www.notion.so/Ethereum-org-05375fe0a94c4214acaf90f42ba40171)
- [Chinese translators group](https://www.notion.so/Ethereum-org-05375fe0a94c4214acaf90f42ba40171)
_– Notion page for easier coordination between Chinese translators_

## Eth2 Launchpad Translations {#eth2-launchpad}

Our translation community is also working on the [Eth2 Launchpad](https://launchpad.ethereum.org/en/). This allows anyone to set up an Ethereum validator and help secure the Ethereum network. The Launchpad is currently live in 15 languages.

If you're interested, [join the Eth2 Launchpad translation project on Crowdin](https://crowdin.com/project/launchpad-translation). You can [create an issue](https://github.com/ethereum/ethereum-org-website/issues/new/choose) on GitHub to request the addition of a new language, if your language is not available in Crowdin.
If you're interested, [join the Eth2 Launchpad translation project on Crowdin](https://crowdin.com/project/launchpad-translation). You can [create an issue](https://github.com/ethereum/ethereum-org-website/issues/new/choose) on GitHub to request the addition of a new language, if your language is not available on Crowdin.

## In-progress translations {#in-progress}

Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 2 additions & 2 deletions src/content/developers/docs/apis/backend/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ sidebar: true

In order for a software application to interact with the Ethereum blockchain (i.e. read blockchain data and/or send transactions to the network), it must connect to an Ethereum node.

For this purpose, every Ethereum client implements the [JSON-RPC](/developers/docs/apis/json-rpc/) specification, so there are a uniform set of [endpoints](/developers/docs/apis/json-rpc/endpoints/) that applications can rely on.
For this purpose, every Ethereum client implements the [JSON-RPC](/developers/docs/apis/json-rpc/) specification, so there are a uniform set of [endpoints](/developers/docs/apis/json-rpc/#json-rpc-methods) that applications can rely on.

If you want to use a specific programming language to connect with an Ethereum node, there are many convenience libraries within the ecosystem that make this much easier. With these libraries, developers can write intuitive, one-line methods to initialize JSON-RPC requests (under the hood) that interact with Ethereum.

Expand Down Expand Up @@ -45,7 +45,7 @@ These libraries abstract away much of the complexity of interacting directly wit

- [cloudflare-eth.com](https://cloudflare-eth.com)

**Nodesmith -** **_JSON-RPC API access to Ethereum mainnet and testnets._**
**Nodesmith -** **_JSON-RPC API access to Ethereum Mainnet and testnets._**

- [nodesmith.io](https://nodesmith.io/network/ethereum/)
- [Documentation](https://nodesmith.io/docs/#/ethereum/apiRef)
Expand Down
Loading

0 comments on commit 07e8e66

Please sign in to comment.