- Node.js
- pnpm - Fast, disk space efficient package manager
- Next.js 14
- React framework with App Router, SSG, SSR, i18n support, Image component, etc.
- Configurable in
next.config.js - NextJS Tutorial
- NextJS Docs
- React - A JavaScript library for building component-based user interfaces
- Typescript - TypeScript is a strongly typed programming language that builds on JavaScript
- Tailwind CSS - Utility-first CSS framework
- shadcn/ui - Component library built on Radix UI and Tailwind CSS
- Radix UI - Accessible component primitives
- Algolia - Site indexing, rapid intra-site search results, and search analytics. Learn more on how we implement Algolia for site search.
- Primary implementation:
/src/components/Search/index.ts
- Primary implementation:
- Crowdin - crowdsourcing for our translation efforts (See "Translation initiative" below)
- GitHub Actions - Manages CI/CD, and issue tracking
- Netlify - DNS management and primary host for
masterbuild. - Storybook - For UI development, testing, and documentation. Check out our storybook!
- Chromatic - Visual testing & UI reviews. Visit our chromatic project
| Folder | Primary use |
|---|---|
/src |
Main source folder for development. |
/public/assets |
Image assets. |
/src/components |
React components that do not function as standalone pages. |
/public/content |
Markdown/MDX files for site content stored here. For example: ethereum.org/about/ is built from public/content/about/index.md The markdown files are parsed by [...slug].tsx and rendered using the proper layout in ContentPage.getLayout method. |
/public/content/developers/docs |
*Markdown files in here use the Docs layout: src/layouts/Docs.tsx |
/public/content/developers/tutorials |
*Markdown files in here use the Tutorial layout: src/layouts/Tutorial.tsx |
/src/data |
General data files importable by components. |
/src/hooks |
Custom React hooks. |
/src/intl |
Language translation JSON files. |
/app/api |
Next.js API Routes (https://nextjs.org/docs/app/building-your-application/routing/route-handlers) |
/app |
Next.js App Router pages and layouts. |
/src/scripts/src/lib/utils |
Custom utility scripts. |
/src/styles |
Global styles and Tailwind CSS configuration. |
/src/layouts |
Next.js layout components used throughout the site. |