|
| 1 | +# 🌐 Vite + React Error Page System |
| 2 | + |
| 3 | +A **production-ready**, **responsive**, and **elegant error page system** built with **Vite**, **React**, and **TypeScript**. Designed to handle various HTTP error codes with style and clarity, this system ensures users stay informed and engaged even when things go wrong. |
| 4 | + |
| 5 | +--- |
| 6 | + |
| 7 | +## 🚀 Core Features |
| 8 | + |
| 9 | +- ✅ Prebuilt pages for common HTTP errors: |
| 10 | + - 404 (Not Found) |
| 11 | + - 403 (Forbidden) |
| 12 | + - 401 (Unauthorized) |
| 13 | + - 500 (Internal Server Error) |
| 14 | + - 502 (Bad Gateway) |
| 15 | + - ...and more |
| 16 | +- 🎯 Interactive navigation to preview each error page |
| 17 | +- 🖼️ Custom illustrations and animations tailored to each error type |
| 18 | +- 📚 Descriptive error messages with friendly, actionable guidance |
| 19 | +- 🔁 "Back to Home" buttons for smoother recovery |
| 20 | +- 🔍 Filter/search to quickly jump to any error code |
| 21 | +- 📱 Fully responsive for mobile, tablet, and desktop |
| 22 | + |
| 23 | +--- |
| 24 | + |
| 25 | +## 🎨 Design System |
| 26 | + |
| 27 | +- 🧼 **Minimalist Aesthetic** – Clean lines, ample whitespace, and simple iconography |
| 28 | +- 📦 **8px Grid System** – Consistent rhythm across layouts |
| 29 | +- 🌈 **Color Palette** – Soft blue primary, orange accents, and modern neutral tones |
| 30 | +- 🖋️ **Typography** – Sans-serif font with 3 weights, accessible sizing, and hierarchy |
| 31 | +- 🌀 **Illustrations** – Custom abstract, geometric representations of each error |
| 32 | +- ✨ **Subtle Animations** – Smooth page transitions and feedback effects |
| 33 | +- 🪞 **Shadows & Rounding** – Elegant touches for a polished UI |
| 34 | + |
| 35 | +--- |
| 36 | + |
| 37 | +## 🛠️ Tech Stack |
| 38 | + |
| 39 | +- **Vite** – Lightning-fast build & dev tooling |
| 40 | +- **React** – Declarative, component-driven UI |
| 41 | +- **TypeScript** – Strong typing for scalability and safety |
| 42 | +- **ESLint (Flat Config)** – Linting with `@typescript-eslint`, `react-hooks`, and `react-refresh` |
| 43 | +- **CSS Modules / Tailwind / SCSS** (customizable) – Clean styling with theme support |
| 44 | + |
| 45 | +--- |
| 46 | + |
| 47 | +## 📦 Getting Started |
| 48 | + |
| 49 | +```bash |
| 50 | +git clone https://github.com/DefinetlyNotAI/Website_Error_Examples |
| 51 | +cd Website_Error_Examples |
| 52 | +npm install |
| 53 | +npm run dev |
| 54 | +```` |
| 55 | + |
| 56 | +--- |
| 57 | + |
| 58 | +## 🧪 Scripts |
| 59 | + |
| 60 | +| Command | Description | |
| 61 | +| ----------------- | -------------------------- | |
| 62 | +| `npm run dev` | Start Vite dev server | |
| 63 | +| `npm run build` | Build for production | |
| 64 | +| `npm run preview` | Preview built site locally | |
| 65 | +| `npm run lint` | Run ESLint (Flat Config) | |
| 66 | + |
| 67 | +--- |
| 68 | + |
| 69 | +## 💡 Customization |
| 70 | + |
| 71 | +* Easily add new error codes: just create a new component under `src/pages/errors/` as well as the animation in `src/components/Illustrations` |
| 72 | +* Swap out illustrations with your own assets or animated SVGs |
| 73 | +* Use Tailwind, SCSS, or CSS Modules based on your stack preference |
| 74 | +* Extend ESLint config via `eslint.config.js` using flat config structure |
| 75 | + |
| 76 | +--- |
| 77 | + |
| 78 | +## 📄 License |
| 79 | + |
| 80 | +MIT — Free to use and adapt for personal or commercial projects. |
| 81 | + |
| 82 | +--- |
0 commit comments