Big thanks to the EF's Cryptography Team for letting us copy their website 🙂
This directory holds the codebase to our website, security.ethereum.org.
The main stack used in the project includes:
- Next.js.
- TypeScript.
- ChakraUI as component library.
- KaTeX to render LaTeX math syntax.
The project is bootstrapped with create-next-app
, with a custom scaffolding.
First, install dependencies:
yarn install
Then, run the development server:
yarn dev
Open http://localhost:3000 with your browser to see the result.
You can start editing the page by modifying pages/index.tsx
. The page auto-updates as you edit the file.
The following list describes the main elements of the project structure:
public
: contains static assets like fonts and images.src
: contains the source code.components
: React components.- components with state are directly located inside
/components
. layout
: components used to contain and apply different layouts to different pages.UI
: stateless (functional) components.
- components with state are directly located inside
pages
: includes components that renders to pages and NextJS API Routes.posts
: markdown blog posts.styles
: css stylesheets.global.css
: global stylesheet.
theme
: contains the Chakra UI custom theme, organized infoundations
andcomponents
for better scaling.utils
: utilitary stuff.constants.ts
: this is the global constants file, containg URLs and lists of elements we use across the site.types.ts
: contains the custom defined TypeScript types and interfaces.