A modern single-page React application that spotlights the Engineering Leadership Team and their vision for AI-driven development. The experience is built with Vite and Material UI, delivering a dark, futuristic theme, smooth section transitions, and a responsive layout that works across desktop and mobile screens.
- Node.js 18.0.0 or higher (required by Vite 6)
- npm 9.0.0 or higher
- Clone the repository and install dependencies:
git clone <repo-url> cd ELT npm install
- Add team member images to
public/images(see Asset Management). - Start the development server:
npm run dev
- Open the URL printed in the terminal (typically
http://localhost:5173) to view the site. The development server features instant reloads when you edit files.
| Command | Description |
|---|---|
npm run dev |
Starts the Vite development server. |
npm run build |
Creates an optimized production build in the dist directory. |
npm run preview |
Serves the built assets locally so you can validate the production build. |
npm run lint |
Runs ESLint using the project configuration. |
npm run deploy |
Publishes the contents of dist to GitHub Pages using gh-pages (runs npm run build first via predeploy). |
ELT/
├── public/
│ ├── 404.html
│ └── vite.svg
├── src/
│ ├── assets/
│ ├── components/
│ │ ├── Contact.jsx
│ │ ├── Footer.jsx
│ │ ├── Hero.jsx
│ │ ├── Navbar.jsx
│ │ ├── Team.jsx
│ │ └── Vision.jsx
│ ├── App.jsx
│ ├── App.css
│ ├── index.css
│ └── main.jsx
├── package.json
├── vite.config.js
└── README.md
- Animated hero banner with a looping gradient background that introduces the Engineering Leadership Team vision.
- Responsive navigation bar that transitions on scroll, supports smooth in-page navigation, and collapses into a mobile drawer.
- Team spotlight grid with Material UI cards, hover animations, and support for custom imagery defined in a single array.
- Vision statement section using frosted glass styling to highlight the organization's mission.
- Contact form with Material UI inputs, required field validation, and a Snackbar confirmation message that can be wired to your backend.
- Dark Material UI theme applied globally via
ThemeProvider, including custom colors and typography for a futuristic aesthetic. - GitHub Pages ready thanks to the configured Vite
basepath and React Routerbasename, making static deployment straightforward.
- Branding & theme: Update colors, typography, or component overrides inside
src/App.jsxwhere the Material UI theme is defined. - Navigation labels: Modify the
navItemsarray insrc/components/Navbar.jsxto match your sections. Ensure the section components have correspondingidattributes. - Hero messaging: Edit the copy in
src/components/Hero.jsxto reflect your organization's tagline. - Team members: Adjust the
teamMembersarray insrc/components/Team.jsxto add, remove, or edit leaders. Provide matching image filenames inpublic/images. - Vision content: Update the mission statement text in
src/components/Vision.jsx. - Contact form: Extend the state shape and submission handler in
src/components/Contact.jsxto integrate with your backend or third-party services. - Routing base path: If you are not hosting on GitHub Pages, change the
basenameinsrc/main.jsxand thebasesetting invite.config.jsto match your deployment.
- Create a
public/imagesdirectory (if it does not exist) and add team portraits referenced by theTeamcomponent (defaults:leader1.jpg,leader2.jpg,leader3.jpg). - Use optimized JPG or PNG files around 600×600 pixels to keep the page lightweight while maintaining quality.
- Static assets placed in
publicare served as-is at the root of the deployed site, so reference them with/images/<filename>paths.
- Ensure the
basepath invite.config.jsand thebasenameinsrc/main.jsxmatch your hosting environment (for GitHub Pages, set them to/<repository-name>). - Generate a production build:
npm run build
- Optionally preview the build locally:
npm run preview
- Deploy to GitHub Pages:
The
npm run deploy
deployscript builds the project and publishes thedistdirectory to thegh-pagesbranch using thegh-pagespackage.
Feel free to tailor the content, imagery, and theme to match your team's story and branding.