A high-performance interactive presentation deck for technical interviews focusing on Ethereum, EVM, and Solidity standards. Built with React, TypeScript, and Vite for a smooth, modern presentation experience.
EVM Masterclass is an interactive presentation tool designed for technical interviews and educational sessions about Ethereum, the Ethereum Virtual Machine (EVM), and Solidity token standards. It features an AI-powered assistant that provides real-time technical explanations and answers questions about the content.
-
Interactive Slide Deck: Navigate through comprehensive slides covering:
- Blockchain Basics
- Consensus Mechanisms (PoW vs PoS)
- EVM Architecture
- Solidity Smart Contracts
- ERC-20 Token Standard
- ERC-721 NFT Standard
- ERC-1155 Multi-Token Standard
- Interactive Q&A Session
-
Speaker Notes: Built-in speaker notes overlay to help presenters deliver the content effectively
-
Keyboard Navigation: Navigate slides using arrow keys for a smooth presentation experience
-
Modern UI: Beautiful, dark-themed interface with smooth animations and transitions
-
Progress Tracking: Visual progress bar showing presentation completion
-
Slide Menu: Quick navigation menu to jump to any slide
- React 19 - UI framework
- TypeScript - Type safety
- Vite - Build tool and dev server
- Lucide React - Icon library
- Recharts - Data visualization (for charts in slides)
evm-masterclass/
├── components/
│ ├── slides/ # Individual slide components
│ │ ├── IntroSlide.tsx
│ │ ├── BlockchainBasics.tsx
│ │ ├── Consensus.tsx
│ │ ├── EvmArchitecture.tsx
│ │ ├── SolidityIntro.tsx
│ │ ├── Erc20Demo.tsx
│ │ └── Erc721Demo.tsx
│ ├── AiAssistant.tsx # AI chat interface
│ ├── CodeBlock.tsx # Code display component
│ └── Layout.tsx # Main layout and navigation
├── data/
│ └── presentationScript.ts # Speaker notes
├── constants.ts # Slide metadata and constants
├── types.ts # TypeScript type definitions
├── App.tsx # Root component
└── index.tsx # Entry point
- Node.js (v18 or higher recommended)
- npm or yarn
- Clone the repository:
git clone <repository-url>
cd evm-masterclass- Install dependencies:
npm install- Create a
.envfile in the root directory:
- Start the development server:
npm run dev- Open your browser and navigate to
http://localhost:3000
- Arrow Keys: Navigate between slides (Left/Right)
- Menu Button: Open slide index to jump to any slide
- Speaker Notes Button: Toggle speaker notes overlay
- AI Assistant Button: Open/close the AI co-pilot chat
- Use fullscreen mode (F11) for the best presentation experience
- The AI assistant is context-aware and will answer questions based on the current slide
- Speaker notes provide talking points for each slide
- Progress bar at the top shows presentation completion
npm run dev- Start development servernpm run build- Build for productionnpm run preview- Preview production build
- Create a new slide component in
components/slides/ - Add the slide type to
types.ts(SlideType enum) - Add slide metadata to
constants.ts(SLIDE_META array) - Add the slide case to the
renderSlidefunction inLayout.tsx - Add speaker notes to
data/presentationScript.ts(optional)
npm run buildThe production build will be output to the dist/ directory. You can preview it with:
npm run preview- The presentation is optimized for fullscreen viewing
- All slides are responsive and work on various screen sizes
- The project uses Tailwind CSS (via Vite) for styling
Contributions are welcome! Please feel free to submit a Pull Request.
This project is private and proprietary.
Built with ❤️ for technical interviews and blockchain education.