• Stars
    star
    187
  • Rank 205,315 (Top 5 %)
  • Language
    JavaScript
  • License
    ISC License
  • Created over 5 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

πŸ–₯ WIP: A preact implementation of Windows 95/98/ME style components and apps. See it in action on my personal site at https://ash.ms

A preact implementation of Windows 95/98 style components and apps. It's a very specific implementation, and probably isn't suitable for your use case.

πŸ‘‰ Read the docs πŸ‘‰

preview desktop

Developing

There are three separate projects:

  1. Storybook for component development (npm start)
  2. Docs (npm run watch-docs)
  3. Example app (npm run watch-example)

The final build is automated by npm run build when deployed to Netlify.

Lessons learned

  1. React isn't super great for realtime apps. Window management in particular is handled directly in DOM to prevent windows rerendering on every mouse move.
  2. This took a fair while to implement, and toward the end I got a little lazy with prop drilling. Windows have far too many dependencies and could benefit from a simpler API.

More Repositories

1

geojson-regions

🌏 A repo to create simplified GeoJSON regions so we can display map-based visualisations without having to load tiles all over the place.
CSS
381
star
2

roadblocks

🚜 My entry for JS13K 2015. An isometric drag & drop puzzle game in 13 kilobytes.
HTML
20
star
3

isometric-tile-generator

Generate isometric tiles in png format for your game
Vue
19
star
4

alchemize

πŸ”© Alchemize gui for minifying/pretty-printing code in various web formats.
JavaScript
16
star
5

fruity-timeline

A timeline ala the old school Fruity Loops music sequencer.
JavaScript
9
star
6

b36

A custom base36 encoder for long strings of numbers.
JavaScript
8
star
7

tootdeck

Multi-account Mastodon client
JavaScript
7
star
8

polar-defense

A 2d fixed shooter space invaders style on a miniature planet. https://ash.ms/polar-defense
JavaScript
7
star
9

jankdefer

An experiment to defer executing until the framerate in the page stabilizes
JavaScript
6
star
10

jsfxr-editor

An editor interface to jsfxr that you can include in your app.
HTML
6
star
11

isobits

🏑 Bits of isometric vector art
HTML
5
star
12

australian-tv-network-logos

Australian TV network logos for the various Australian channels.
5
star
13

murdoch-block

A list of URLs and blocklists for News Corp websites
JavaScript
4
star
14

osmcycle

A cycling-centric stylesheet for OpenStreetMap data.
PHP
4
star
15

playitagainsam-js-libre

javascript player for playitagainsam terminal sessions (under the ISC license)
JavaScript
4
star
16

webextension-block-twitter-ads

Block advertisers on mobile.twitter.com. This extension is defunct. But feel free to use this as an example for your own extensions.
JavaScript
3
star
17

mini-sequencer

Tiny custom sequencer to play tunes with HTML5 audio
JavaScript
3
star
18

amp-iframe-resize

A tiny parent and child lib for handling amp & amp-like iframe resizing
JavaScript
3
star
19

lazy-product-landing-page

There are two hard things in computer science: putting together a landing page for the app you just built.
CSS
3
star
20

findapark-brisbane

Find a park in Brisbane with a nice surface for your laptop and maybe some wifi.
JavaScript
2
star
21

svg-recolour

An experimental SVG sprite recolouring project.
JavaScript
2
star
22

tabsalad

πŸ₯— Paste cells from your spreadsheet and convert them into HTML table markup.
JavaScript
2
star
23

proofer

A thing to render API Blueprint documents in HTML.
JavaScript
2
star
24

anotheriso

An isometric game engine
JavaScript
1
star
25

leaflet-geojson-map-boilerplate

Boilerplate project for a Leaflet vector map.
JavaScript
1
star
26

Another-Web-MPD-Client

A quick and dirty web-based MPD client I'm playing with.
PHP
1
star
27

vue-googlebot-test

Just testing
Vue
1
star
28

vlog-tools

JavaScript
1
star
29

wasm-weekly

A (probably not) weekly blog about random wasm stuff
HTML
1
star
30

web-games-brisjs-2015

Learn to teach yourself to make games for the web
HTML
1
star
31

wasm-demos

Some webassembly demos in C and Rust
Shell
1
star
32

batch-geocoder

A quick & dirty lat/lng geocoder using the Google API.
JavaScript
1
star
33

GeoThing

A bunch of classes to deal with geo things (particularly interchange formats)
1
star
34

codedit

Basic code editor for Chrome OS.
JavaScript
1
star
35

dot-nlink

Bi-directional NPM link with globbing.
Shell
1
star
36

HTML-Bootstrap

Bootstraps a HTML project by downloading the latest jQuery, Underscore, and creating a number of HTML, CSS and Javascript templates.
Shell
1
star
37

mediarename

πŸ“Ή A command line app to let you rename video files based on metadata
JavaScript
1
star
38

RadarViewer

Viewer for BOM radar images. Plaything.
JavaScript
1
star
39

webextension-lastfm-gpm

WebExtension to bring last.fm support to Google Play Music (RIP)
JavaScript
1
star
40

wordpress-api-to-markdown

Create a folder of markdown files (in jekyll/hexo/eleventy style) from a Wordpress JSON API
1
star
41

vue-accessible-select

WIP accessible select/autocomplete component
Vue
1
star
42

bne.social

The Brisbane Social
HTML
1
star
43

markdown-to-wordpress

Convert a folder of markdown files (in Jekyll/hexo/eleventy style) to a Wordpress XML import file
JavaScript
1
star
44

spider-solitaire

A super old game I made in 2012
JavaScript
1
star
45

cloudflare-pages-test

Just testing out cloudflare pages capabilities
Shell
1
star
46

GameBits

Bits and pieces for use in some conceptual game I may or may not ever get around to building.
JavaScript
1
star
47

CSS-Widgets

A general purpose repo for CSS widgets as I create them.
Shell
1
star
48

DeviantFeed

A thingy to load and make a DeviantArt RSS feed into something mildly more useful.
PHP
1
star
49

web-games-campjs-2015

Learn to teach yourself to make games for the web
HTML
1
star
50

willy-cacher

a small thing to cache willyweather requesticles
JavaScript
1
star
51

freecell

An old Freecell game I made. Lost the source code, so only got the minified version.
CSS
1
star
52

libreoffice-utils

Some utilities for dealing with LibreOffice stuff
JavaScript
1
star