GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - AmirulAndalib/98: đŸ’ŋ Web-based Windows 98 desktop recreation â–ˆâ–ˆâ–ˆâ–ˆâ–ˆâ–“â–ˆâ–“â–“â–’â–“â–’â–’â–‘â–’â–‘â–‘â–‘đŸ—•ī¸ŽđŸ——ī¸ŽđŸ—™ī¸Ž

BranchesTags
Open more actions menu
 
 

Latest commit

 

History

885 Commits
885 Commits

Folders and files

NameName
Last commit message
Last commit date
.github/workflows
.github/workflows
 
 
.vscode
.vscode
 
 
audio
audio
 
 
desktop
desktop
 
 
font/fixedsys-excelsior
font/fixedsys-excelsior
 
 
help
help
 
 
images
images
 
 
lib
lib
 
 
my-documents
my-documents
 
 
my-pictures
my-pictures
 
 
network-neighborhood
network-neighborhood
 
 
programs
programs
 
 
src
src
 
 
tests
tests
 
 
.gitattributes
.gitattributes
 
 
.gitignore
.gitignore
 
 
CNAME
CNAME
 
 
CONTRIBUTING.md
CONTRIBUTING.md
 
 
README.md
README.md
 
 
TODO.md
TODO.md
 
 
android-chrome-192x192.png
android-chrome-192x192.png
 
 
android-chrome-256x256.png
android-chrome-256x256.png
 
 
apple-touch-icon.png
apple-touch-icon.png
 
 
browserconfig.xml
browserconfig.xml
 
 
classic.css
classic.css
 
 
cspell.json
cspell.json
 
 
extract-icons.sh
extract-icons.sh
 
 
favicon-16x16.png
favicon-16x16.png
 
 
favicon-32x32.png
favicon-32x32.png
 
 
favicon.ico
favicon.ico
 
 
filesystem-index.json
filesystem-index.json
 
 
index.html
index.html
 
 
layout.css
layout.css
 
 
mstile-150x150.png
mstile-150x150.png
 
 
package-lock.json
package-lock.json
 
 
package.json
package.json
 
 
playwright.config.ts
playwright.config.ts
 
 
pull-libs.js
pull-libs.js
 
 
safari-pinned-tab.svg
safari-pinned-tab.svg
 
 
site.webmanifest
site.webmanifest
 
 

Repository files navigation

98.js

Discord GitHub Repo stars

A web based Windows 98 desktop remake.

Includes:

  • Notepad (separate README)
  • Sound Recorder (separate README)
  • Paint (separate repository)
  • Calculator (separate README)
  • 3D Pipes (separate repository)
  • 3D FlowerBox (original repository) by Kevin Shannon
  • Minesweeper (separate README; original repository) by Jon Ziebell
  • Solitaire (original repository) by Radovan Janjic
  • Pinball (original repository) ported by Muzychenko Andrey and Alula
  • Winamp 2.9 (separate README; original repository) by Jordan Eldredge
  • Windows Explorer / Internet Explorer (separate README)
  • Help Viewer
  • 📎 Clippy (original repository)

Features:

  • Drop files onto the desktop, and they'll be stored in a virtual filesystem
  • Load Windows themes! Many are included in the Themes folder on the desktop.
  • Easter eggs (try a famous cheat code 😉)
  • Meticulous detail in many areas (although there's obviously lots "missing")
  • Help > Help Topics in Paint, Sound Recorder, Notepad, and Minesweeper
  • You can add the site to your homescreen on mobile

Try it out

īŧĨīŧŽīŧ´īŧĨīŧ˛ã€€ã€€īŧˇīŧŠīŧŽīŧ¤īŧ¯īŧˇīŧŗã€€īŧ™īŧ˜ã€€äŊ“験へようこそ

License

Not yet licensed. This project is currently source-available / shared source, but not open source.

Related Projects

Apps that it would be nice to integrate:

  • Windows Classic theme designer
  • Win95 Media Player

Other online operating systems / web desktops:

Name & Link Vague Description Repo & License Chat
 Rahul.io another Windows 98 remake repo here - MIT license
 Windows 93 a "fictional version of Windows" (not open source currently) Discord
🏡 ZineOS emojis everywhere repo here - MIT license Discord
 EmuOS emulator-focused Win9X desktop repo here - shared source Discord
 OS.js a more serious web desktop repo here - simplified BSD license Gitter
 Friend another serious one repo here - different licenses for different parts
 CloudDesk another serious one (explicitly not open source)
 AaronOS interesting aesthetic repo here - shared source Discord
 Web Desktop Windows 10 like "startpage"
 System Windows 10 like thing
 WinXP Windows XP repo here - MIT license
Windows 98 - Packard Belle Windows 98 repo here - shared source
X-WebDesktop-Vue Windows 7 repo here - MIT license
 vue win3.1 Windows 3.1 repo here - shared source
 VirtualDesktop Screenshot flows, several OSes
GUIdebook Screenshots, several OSes

Plus many more web desktops on Wikipedia, awesome-web-desktops, and awesome-OS.

Libraries:

  • OS-GUI, which grew out of this project
  • Packard Belle, React95, and another one called React95, with similar goals to OS-GUI
  • BrowserFS, a filesystem abstraction library powering 98.js

Also:

  • Awesome Atwood's Law, a curated list of JavaScript reimplementations, similar to /r/atwoodslaw/

Contributing

See CONTRIBUTING

Development Setup

  • Install Git if you don't already have it.
  • Install Node.js if you don't already have it.
  • Clone the repository.
  • Open up a terminal / command prompt in the project directory, and run npm install to install dependencies.
  • Install one global dependency: npm i -g [email protected] (this will be simplified in the future; I'm using two different versions of BrowserFS for some reason)
  • Run npm start to start up a live-reloading development web server.

When pulling changes from git, run npm install again in case there are any new or updated dependencies. (If you know package-lock.json hasn't changed, you shouldn't need to do this.)

Some dependencies are versioned with npm, but pulled into the repo with npm run pull-libs

Quality Assurance

Tests are written with Playwright. Spell checking is done with Cspell.

npm test
npm run lint

Debug tests or run them when code changes using the Playwright UI:

npx playwright test --ui

Quickly add tests using the code generator:

# Note: this runs the server, and currently leaves it running when closing the browser.
# Could use `start-server-and-test` to fix this, or see if there's an option in `npm-run-all`'s `run-p` command.
# (There's no option in `playwright codegen --help` to run the server, even though it's configured in `playwright.config.js`)
npm run test-codegen

There are also VS Code extensions for Playwright and Cspell (Code Spell Checker).

Managing Subrepos

To update subrepos, or push changes to them, install git-subrepo. You don't need this tool to clone the project and get up and running, as subrepos are just normal subdirectories with a .gitrepo metadata file.

Note that the metadata file references specific commit hashes, including between repositories, so it's best to avoid rebasing when subrepo updates are involved, i.e. once you do a subrepo command, it makes a commit, and you should leave it (and earlier commits) alone, and you should leave commits in the subrepo alone, before and up to any commits referenced by the containing project.

When making changes to a subrepo within the containing project: I'd recommend phrasing commit messages to apply to the subrepo, primarily, rather than the containing project, so that when you push the changes to the subrepo, the commit message will be appropriate.

If you so much as edit the commit message for a git subrepo pushed commit, you'd have to update the .gitrepo metadata file manually in the containing project, OR you could drop the commit you pushed and the git subrepo push commit (which updates the metadata) and do git subrepo pull instead (which btw gives you an option to rename the commit; and I think renaming that commit would be safe after the fact anyways as long as it's the last commit and not pushed).

TODO

See TODO

About

đŸ’ŋ Web-based Windows 98 desktop recreation â–ˆâ–ˆâ–ˆâ–ˆâ–ˆâ–“â–ˆâ–“â–“â–’â–“â–’â–’â–‘â–’â–‘â–‘â–‘đŸ—•ī¸ŽđŸ——ī¸ŽđŸ—™ī¸Ž

98.js.org

Resources

Readme

Contributing

Contributing
Activity

Stars

1 star

Watchers

0 watching

Forks

1 fork
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.