Skip to content

Commit 9ebb2aa

Browse files
committed
Merge branch 'dev' into fix_whitepaper
2 parents ec39b2f + 08b181e commit 9ebb2aa

File tree

1,069 files changed

+34122
-7020
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,069 files changed

+34122
-7020
lines changed

.all-contributorsrc

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10920,6 +10920,51 @@
1092010920
"contributions": [
1092110921
"content"
1092210922
]
10923+
},
10924+
{
10925+
"login": "o2Stake",
10926+
"name": "Tim - o2Stake",
10927+
"avatar_url": "https://avatars.githubusercontent.com/u/77958700?v=4",
10928+
"profile": "http://o2stake.com",
10929+
"contributions": [
10930+
"content"
10931+
]
10932+
},
10933+
{
10934+
"login": "b-wagn",
10935+
"name": "Benedikt Wagner",
10936+
"avatar_url": "https://avatars.githubusercontent.com/u/113296072?v=4",
10937+
"profile": "http://benedikt-wagner.dev",
10938+
"contributions": [
10939+
"content"
10940+
]
10941+
},
10942+
{
10943+
"login": "tdahar",
10944+
"name": "Tarun Mohandas Daryanani",
10945+
"avatar_url": "https://avatars.githubusercontent.com/u/18716811?v=4",
10946+
"profile": "https://github.com/tdahar",
10947+
"contributions": [
10948+
"content"
10949+
]
10950+
},
10951+
{
10952+
"login": "Crosstons",
10953+
"name": "Shubh",
10954+
"avatar_url": "https://avatars.githubusercontent.com/u/110349596?v=4",
10955+
"profile": "https://github.com/Crosstons",
10956+
"contributions": [
10957+
"content"
10958+
]
10959+
},
10960+
{
10961+
"login": "duckdegen",
10962+
"name": "duckdegen",
10963+
"avatar_url": "https://avatars.githubusercontent.com/u/98649644?v=4",
10964+
"profile": "https://github.com/duckdegen",
10965+
"contributions": [
10966+
"content"
10967+
]
1092310968
}
1092410969
],
1092510970
"contributorsPerLine": 7,

.eslintrc.json

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
11
{
2-
"extends": ["next/core-web-vitals", "prettier", "plugin:storybook/recommended"],
2+
"extends": [
3+
"next/core-web-vitals",
4+
"prettier",
5+
"plugin:storybook/recommended"
6+
],
37
"env": { "es6": true },
48
"plugins": ["simple-import-sort"],
59
"rules": {
Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
name: Event listing
2+
description: Request an Ethereum event for listing
3+
title: Event listing
4+
labels: ["event :calendar:"]
5+
body:
6+
- type: input
7+
id: event_listing_name
8+
attributes:
9+
label: Event/Meetup Name
10+
description: Name for the event to be listed
11+
validations:
12+
required: true
13+
- type: input
14+
id: event_listing_website
15+
attributes:
16+
label: Website
17+
description: Publicly available website URL to get more information about the event
18+
validations:
19+
required: true
20+
- type: input
21+
id: event_listing_location
22+
attributes:
23+
label: Location (City/Country, or Remote)
24+
description: Geographic location of in-person event, or "Remote" for a virtual event
25+
validations:
26+
required: true
27+
- type: input
28+
id: event_listing_description
29+
attributes:
30+
label: Description
31+
description: Brief description of event
32+
validations:
33+
required: true
34+
- type: input
35+
id: event_listing_start_date
36+
attributes:
37+
label: "Start date: (yyyy-mm-dd)"
38+
description: Start date of event in yyyy-mm-dd format
39+
validations:
40+
required: true
41+
- type: input
42+
id: event_listing_end_date
43+
attributes:
44+
label: "End date: (yyyy-mm-dd)"
45+
description: End date of event in yyyy-mm-dd format
46+
validations:
47+
required: true
48+
- type: textarea
49+
id: event_listing_additional_context
50+
attributes:
51+
label: Additional context
52+
description: Add any other context about the event here
53+
- type: markdown
54+
attributes:
55+
value: |
56+
**Note:**
57+
Events will be only added on the "Upcoming events" table if all fields above are completed, pending approval
58+
- type: markdown
59+
attributes:
60+
value: |
61+
**Want to contribute?**
62+
We love contributions from the Ethereum community! Please comment on an issue if you're interested in helping out with a PR.
63+
- type: checkboxes
64+
id: event_listing_work_on
65+
attributes:
66+
label: Would you like to work on this issue?
67+
options:
68+
- label: "Yes"
69+
required: false

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,3 +49,6 @@ robots.txt
4949

5050
# .crowdin folder used as temp forlder for crowdin-import script
5151
.crowdin
52+
53+
# vscode workplace configuration
54+
.vscode

.storybook/preview.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ const chakraBreakpointArray = Object.entries(extendedTheme.breakpoints)
1111

1212
const preview: Preview = {
1313
globals: {
14-
locale: 'en',
14+
locale: "en",
1515
locales: baseLocales,
1616
},
1717
parameters: {

README.md

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -91,10 +91,10 @@ git checkout -b new_branch_name
9191
2. Start developing!
9292

9393
```sh
94-
yarn start
94+
yarn dev
9595
```
9696

97-
- Open this directory in your favorite text editor / IDE, and see your changes live by visiting `localhost:8000` from your browser
97+
- Open this directory in your favorite text editor / IDE, and see your changes live by visiting `localhost:3000` from your browser
9898
- Pro Tip:
9999
- Explore scripts within `package.json` for more build options
100100
- Get **faster** local builds by building only one language. E.g. in your `.env` file, set `BUILD_LOCALES=en` to build the content only in English
@@ -1705,6 +1705,13 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
17051705
<td align="center" valign="top" width="14.28%"><a href="https://github.com/kamuik16"><img src="https://avatars.githubusercontent.com/u/93703995?v=4?s=100" width="100px;" alt="Krishang Shah"/><br /><sub><b>Krishang Shah</b></sub></a><br /><a href="https://github.com/ethereum/ethereum-org-website/commits?author=kamuik16" title="Code">💻</a></td>
17061706
<td align="center" valign="top" width="14.28%"><a href="https://github.com/vuvoth"><img src="https://avatars.githubusercontent.com/u/45826131?v=4?s=100" width="100px;" alt="Vu Vo"/><br /><sub><b>Vu Vo</b></sub></a><br /><a href="#content-vuvoth" title="Content">🖋</a></td>
17071707
</tr>
1708+
<tr>
1709+
<td align="center" valign="top" width="14.28%"><a href="http://o2stake.com"><img src="https://avatars.githubusercontent.com/u/77958700?v=4?s=100" width="100px;" alt="Tim - o2Stake"/><br /><sub><b>Tim - o2Stake</b></sub></a><br /><a href="#content-o2Stake" title="Content">🖋</a></td>
1710+
<td align="center" valign="top" width="14.28%"><a href="http://benedikt-wagner.dev"><img src="https://avatars.githubusercontent.com/u/113296072?v=4?s=100" width="100px;" alt="Benedikt Wagner"/><br /><sub><b>Benedikt Wagner</b></sub></a><br /><a href="#content-b-wagn" title="Content">🖋</a></td>
1711+
<td align="center" valign="top" width="14.28%"><a href="https://github.com/tdahar"><img src="https://avatars.githubusercontent.com/u/18716811?v=4?s=100" width="100px;" alt="Tarun Mohandas Daryanani"/><br /><sub><b>Tarun Mohandas Daryanani</b></sub></a><br /><a href="#content-tdahar" title="Content">🖋</a></td>
1712+
<td align="center" valign="top" width="14.28%"><a href="https://github.com/Crosstons"><img src="https://avatars.githubusercontent.com/u/110349596?v=4?s=100" width="100px;" alt="Shubh"/><br /><sub><b>Shubh</b></sub></a><br /><a href="#content-Crosstons" title="Content">🖋</a></td>
1713+
<td align="center" valign="top" width="14.28%"><a href="https://github.com/duckdegen"><img src="https://avatars.githubusercontent.com/u/98649644?v=4?s=100" width="100px;" alt="duckdegen"/><br /><sub><b>duckdegen</b></sub></a><br /><a href="#content-duckdegen" title="Content">🖋</a></td>
1714+
</tr>
17081715
</tbody>
17091716
</table>
17101717

docs/api-keys.md

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ We recommend setting this up when running the project locally, as we use the Git
1111
1212
```sh
1313
# .env Example:
14-
GATSBY_GITHUB_TOKEN_READ_ONLY=48f84de812090000demo00000000697cf6e6a059
14+
NEXT_PUBLIC_GITHUB_TOKEN_READ_ONLY=48f84de812090000demo00000000697cf6e6a059
1515
```
1616

1717
2. Add Etherscan API token (free)
@@ -25,13 +25,3 @@ GATSBY_GITHUB_TOKEN_READ_ONLY=48f84de812090000demo00000000697cf6e6a059
2525
# .env Example:
2626
ETHERSCAN_API_KEY=K6NUTARFJZJCIXHF1F1E1YGJZ8RQ29BE4U
2727
```
28-
29-
3. Add DeFiPulse API token (free)
30-
31-
> - [Follow this guide](https://docs.defipulse.com/quick-start-guide) to create an account and get your DeFiPulse API token
32-
> - Copy & paste your Active API Key from DeFiPulse into `.env`
33-
34-
```sh
35-
# .env Example:
36-
DEFI_PULSE_API_KEY=4953aaf7966dad9c129397e197a0630ed0594f66962dd5fb058972b250da
37-
```

docs/applying-storybook.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ It's as easy as running `yarn storybook` to boot up a dedicated localhost to see
1818

1919
## Setting up a component's stories
2020

21-
> 🚨 NOTE: This project has version 7, which is currently still in beta. The following documentation outlines preferences in setup as it relates to this version. You can refer to the [7.0 beta docs](https://storybook.js.org/docs/7.0/react/) if you need any additional details
21+
> 🚨 NOTE: This project uses Storybook v7. The following documentation outlines preferences in setup as it relates to this version. You can refer to the [main docs](https://storybook.js.org/docs/get-started/install) if you need any additional details
2222
2323
A Storybook "story" is an instance of a component in a certain state or with certain parameters applied to show an alternative version of the component.
2424

@@ -42,13 +42,13 @@ import ComponentA from "."
4242

4343
type ComponentAType = typeof ComponentA
4444

45-
const meta: Meta<ComponentAType> {
45+
const meta {
4646
title: "ComponentA",
4747
component: ComponentA
48-
}
48+
} satisfies Meta<ComponentAType>
4949

5050
export default meta
51-
type Story = StoryObj<ComponentAType>;
51+
type Story = StoryObj<typeof meta>;
5252

5353
export const Basic: Story = {
5454
render: () => <ComponentA />
@@ -68,13 +68,13 @@ import Button from "."
6868

6969
type ButtonType = typeof Button
7070

71-
const meta: Meta<ButtonType> {
71+
const meta {
7272
title: "Button",
7373
component: Button
74-
}
74+
} satisfies Meta<ButtonType>
7575

7676
export default meta
77-
type Story = StoryObj<ButtonType>;
77+
type Story = StoryObj<typeof meta>;
7878

7979
export const Solid: Story = {
8080
render: (args) => <Button {...args}>A Button</Button>,
@@ -116,7 +116,7 @@ The dashboard where you view each story has a number of different addons availab
116116

117117
Outlined below are each area going from left to right in the selections.
118118

119-
| Sidebar above the preview | Dashboard below the preview |
119+
| Toolbar above the preview | Panel below the preview |
120120
| ---------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
121121
| 1. Rerender preview | 1. Controls - allows you to interact with a component’s args (inputs) dynamically. Experiment with alternate configurations of the component to discover edge cases. See [Controls addon docs](https://storybook.js.org/docs/7.0/react/essentials/controls) |
122122
| 2. Zoom In | 2. Actions (if applicable) - help you verify interactions produce the correct outputs via callbacks. See [Actions addon docs](https://storybook.js.org/docs/7.0/react/essentials/actions) |

docs/best-practices.md

Lines changed: 7 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ Markdown will be translated as whole pages of content, so no specific action is
5252

5353
- _tl;dr Each individual JSON entry should be a complete phrase by itself_
5454

55-
- This is done using the `Translation` component. However there is an alternative method for regular JS: using the `t` function from `gatsby-plugin-react-i18next`
55+
- This is done using the `Translation` component. However there is an alternative method for regular JS: using the `t` function from `next-i18next`
5656

5757
- **Method one: `<Translation />` component (preferred if only needed in JSX)**
5858

@@ -66,7 +66,7 @@ Markdown will be translated as whole pages of content, so no specific action is
6666
- **Method two: `t()`**
6767

6868
```tsx
69-
import { useTranslation } from "gatsby-plugin-react-i18next"
69+
import { useTranslation } from "next-i18next"
7070
7171
// Utilize anywhere in JS using
7272
const { t } = useTranslation()
@@ -104,7 +104,7 @@ export default ComponentName
104104

105105
We use [Chakra UI](https://chakra-ui.com/).
106106

107-
`src/@chakra-ui/gatsby-plugin/theme.ts` - Holds all the theme configuration. This is where you can find the colors, fonts, component themes, variants, etc.
107+
`src/@chakra-ui/theme.ts` - Holds all the theme configuration. This is where you can find the colors, fonts, component themes, variants, etc.
108108

109109
- Wrappers or layout divs
110110

@@ -149,7 +149,7 @@ Use [the Chakra default breakpoints](https://chakra-ui.com/docs/styled-system/th
149149
<Text color="primary.base" bg="background.base" />
150150
```
151151

152-
> Note the dotted notation. In Chakra, the values are referred to as "semantic tokens" and the new theme applies a nested structure of like tokens for better organization. See [semanticTokens.ts](../src/%40chakra-ui/gatsby-plugin/semanticTokens.ts)
152+
> Note the dotted notation. In Chakra, the values are referred to as "semantic tokens" and the new theme applies a nested structure of like tokens for better organization. See [semanticTokens.ts](../src/@chakra-ui/semanticTokens.ts)
153153

154154
> Note 2: all the previous colors defined in the old theme `src/theme.ts` were
155155
> ported into the new theme for compatibility reasons. Those colors will
@@ -177,63 +177,10 @@ import { BsQuestionSquareFill } from "react-icons/bs"
177177
;<Icon as={BsQuestionSquareFill} />
178178
```
179179

180-
## Image loading and API calls using GraphQL
180+
## Using custom `Image` component
181181

182-
- [Gatsby + GraphQL](https://www.gatsbyjs.com/docs/graphql/) used for loading of images and preferred for API calls (in lieu of REST, if possible/practical). Utilizes static page queries that run at build time, not at run time, optimizing performance.
183-
- Image loading example:
182+
[Next Image](https://nextjs.org/docs/pages/api-reference/components/image) is the component of choice to handle responsive images. However, we use a custom version of this component that is properly optimized with Chakra. This way we can use style props from Chakra but still be able to forward common or Next Image-specific props to the component for correct usage and rendering.
184183

185184
```tsx
186-
import { graphql } from "gatsby"
187-
188-
export const query = graphql`
189-
query {
190-
hero: file(relativePath: { eq: "developers-eth-blocks.png" }) {
191-
childImageSharp {
192-
gatsbyImageData(
193-
width: 800
194-
layout: FIXED
195-
placeholder: BLURRED
196-
quality: 100
197-
)
198-
}
199-
}
200-
}
201-
`
202-
// These query results get passed as an object `props.data` to your component
203-
```
204-
205-
- API call example:
206-
207-
```tsx
208-
import { graphql } from "gatsby"
209-
210-
export const repoInfo = graphql`
211-
fragment repoInfo on GitHub_Repository {
212-
stargazerCount
213-
languages(orderBy: { field: SIZE, direction: DESC }, first: 2) {
214-
nodes {
215-
name
216-
}
217-
}
218-
url
219-
}
220-
`
221-
export const query = graphql`
222-
query {
223-
hardhatGitHub: github {
224-
repository(owner: "nomiclabs", name: "hardhat") {
225-
...repoInfo
226-
}
227-
}
228-
}
229-
`
230-
// These query results get passed as an object `props.data` to your component
231-
```
232-
233-
### Using custom `GatsbyImage`
234-
235-
[GatsbyImage](https://www.gatsbyjs.com/plugins/gatsby-plugin-image/) is the component of choice to handle responsive images processed through graphql. However, we use a custom version of this component that is properly optimized with Chakra. This way we can use style props from Chakra but still be able to forward common or GatsbyImage-specific props to the Gatsby component for correct usage and rendering.
236-
237-
```tsx
238-
import GatsbyImage from "./components/GatsbyImage"
185+
import { Image } from "@/components/Image"
239186
```
File renamed without changes.

0 commit comments

Comments
 (0)