A nostalgic recreation of the classic Windows 98 desktop interface built with React, TypeScript, and Vite for OSDCHack25. Experience the iconic Windows 98 look and feel in your modern browser!
- Classic Windows 98 Desktop: Authentic desktop background and layout
- Desktop Icons: Interactive desktop icons with hover effects
- Start Menu: Functional start menu with program categories
- Taskbar: Working taskbar with system tray and clock
- Window Management: Draggable, resizable, and minimizable windows
- My Computer: File system browser
- Notepad: Simple text editor
- Calculator: Functional calculator with classic design
- Recycle Bin: File deletion simulation
- Internet Explorer: Web browser interface
- Yahoo Messenger: Chat application interface
- Snake: Classic snake game
- Minesweeper: Logic puzzle game
- Solitaire: Card game
- Node.js (version 16 or higher)
- npm or yarn
-
Clone the repository
git clone https://github.com/kanak227/NetCafe2005.git cd project
-
Install dependencies
npm install
-
Start the development server
npm run dev
-
Open your browser Navigate to
http://localhost:5173
to see the Windows 98 desktop
public/
โโโ images/
โ โโโ background.png
โ โโโ logo.png
src/
โโโ components/
โ โโโ windows/
โ โ โโโ games/
โ โ โ โโโ SnakeGame.tsx
โ โ โ โโโ Minesweeper.tsx
โ โ โ โโโ Solitaire.tsx
โ โ โโโ MyComputer.tsx
โ โ โโโ Notepad.tsx
โ โ โโโ Calculator.tsx
โ โ โโโ RecycleBin.tsx
โ โ โโโ InternetExplorer.tsx
โ โ โโโ YahooMessenger.tsx
โ โ โโโ Games.tsx
โ โโโ Desktop.tsx
โ โโโ StartMenu.tsx
โ โโโ Taskbar.tsx
โ โโโ Window.tsx
โ โโโ WindowManager.tsx
โ โโโ DesktopIcon.tsx
โโโ contexts/
โ โโโ WindowContext.tsx
โโโ App.tsx
โโโ main.tsx
โโโ index.css
npm run dev
- Start development servernpm run build
- Build for productionnpm run lint
- Run ESLintnpm run preview
- Preview production build
- Click and drag desktop icons to move them around
- Double-click icons to open applications
- Right-click for context menus (where implemented)
- Drag window title bars to move windows
- Resize windows by dragging their edges
- Minimize windows using the minimize button
- Maximize windows using the maximize button
- Close windows using the X button
- My Computer: Browse through simulated file system
- Notepad: Type and edit text
- Calculator: Perform basic calculations
- Games: Play classic Windows games
- Internet Explorer: Browse web content
- Yahoo Messenger: Simulate chat functionality
- React 18 - UI framework
- TypeScript - Type safety
- Vite - Build tool and dev server
- Tailwind CSS - Styling
- Lucide React - Icons
- ESLint - Code linting
- Multi-window support
- Window stacking and focus management
- Resizable and draggable windows
- Window state persistence
- Authentic Windows 98 styling
- Functional start menu
- Working taskbar with system tray
- Desktop icon management
- Multiple functional applications
- Classic Windows 98 UI design
- Interactive elements and animations
- Create a new component in
src/components/windows/
- Add the application to the start menu in
StartMenu.tsx
- Register the window in the
WindowContext
The project uses Tailwind CSS for styling. The Windows 98 theme is achieved through custom CSS classes and Tailwind utilities.
Window state is managed through React Context (WindowContext.tsx
), providing a centralized way to handle window operations.
This project is for educational and nostalgic purposes. Windows 98 is a trademark of Microsoft Corporation.
Contributions are welcome! Feel free to:
- Add new applications
- Improve existing functionality
- Fix bugs
- Enhance the UI/UX
- Microsoft for the original Windows 98 design
- The React and Vite communities for excellent tooling
- All contributors who help maintain this nostalgic project
Relive the golden age of computing with this Windows 98 desktop clone! ๐ฅ๏ธโจ