A design system for building faithful recreations of old UIs https://jdan.github.io/98.css
  • CSS 90.2%
  • JavaScript 9.8%
Find a file
2025-09-07 09:40:26 -04:00
.github/workflows add workflow_dispatch, created -> published 2022-05-22 09:39:35 -04:00
docs make badges in docs/ 29px tall so the screen doesn't jank 2025-09-07 09:40:26 -04:00
fonts get rid of windows line endings 2020-04-23 13:14:40 -04:00
icon Added maximize disabled styling 2024-01-21 12:15:48 -05:00
.editorconfig add react's .editorconfig 2020-04-23 21:46:47 -04:00
.gitignore build/ -> dist/ and remove from version control 2020-04-24 19:16:57 -04:00
.npmignore add npmignore 2020-05-07 16:33:17 -04:00
build.js Convert SourceMapGenerator to string in build script (#74) 2020-04-29 09:31:02 -04:00
LICENSE closing notes, readme, etc 2020-04-21 19:18:56 -04:00
now.json Add help title-bar button (#72) 2020-04-28 12:17:40 -04:00
package-lock.json Bump postcss from 8.2.13 to 8.4.31 2023-10-03 17:41:18 +00:00
package.json bump to 0.1.21 2025-04-28 17:58:50 -04:00
README.md add heights to github badges so the screen doesn't jank 2025-09-07 09:34:38 -04:00
server.js add live-server 2020-04-25 20:05:47 -04:00
style.css Merge pull request #204 from frankier/add-field-borders 2024-11-30 12:42:48 -03:00

98.css

npm gzip size

A design system for building faithful recreations of old UIs.

a screenshot of a window with the title 'My First VB4 Program' and two buttons OK and Cancel, styled like a Windows 98 dialog a magnified view showing pixel-perfect borders on a scrollbar and button element

98.css is a CSS file that takes semantic HTML and makes it look pretty. It does not ship with any JavaScript, so it is compatible with your frontend framework of choice.

Be sure to check out XP.css and 7.css as well.

Installation / Usage

The easiest way to use 98.css is to import it from unpkg.

<!DOCTYPE html>
<html>
<head>
  <title>98.css example</title>
  <meta charset="UTF-8" />
  <link rel="stylesheet" href="https://unpkg.com/98.css" />
</head>

<body>
  <div class="window" style="margin: 32px; width: 250px">
    <div class="title-bar">
      <div class="title-bar-text">
        My First VB4 Program
      </div>
    </div>
    <div class="window-body">
      <p>Hello, world!</p>
    </div>
  </div>
</body>
</html>

Alternatively, you can grab 98.css for the releases page or npm.

npm install 98.css

Here is an example of 98.css being used with React, and an example with vanilla JavaScript.

Refer to the documentation page for specific instructions on this library's components.

Developing

First, run npm install.

style.css is where everything happens.

You can use npm start to start a development environment that will watch for file changes and rebuild 98.css, reloading your browser in the process.

You can run a build manually with npm run build. This will write to the dist/ directory.

Issues, Contributing, etc.

Refer to the GitHub issues page to see bugs in my CSS or report new ones. I'd really like to see your pull requests (especially those new to open-source!) and will happily provide code review. 98.css is a fun, silly project and I'd like to make it a fun place to build your open-source muscle.

Thank you for checking my little project out, I hope it brought you some joy today. Consider starring/following along on GitHub and maybe reading my posts on Bluesky. 👋

Publishing

Building the docs site: npm run deploy:docs

Publishing to npm: npm run release

License

MIT