mirror of
https://github.com/ducbao414/win32.run.git
synced 2025-12-16 17:22:51 +09:00
52 lines
2.3 KiB
Markdown
52 lines
2.3 KiB
Markdown
# Introduction
|
|
|
|
|
|
https://user-images.githubusercontent.com/5462728/218907749-22ddea15-8761-4cf3-b162-e2817c0f9db8.mp4
|
|
|
|
|
|
Yet another Windows XP in the browser, but with a File System and comes with it, Programs.
|
|
|
|
*Microsoft and Windows XP trademarks & logos definitely belong to Microsoft Corporation. All the programs' names and logos (Foxit, Word, WinRar, Internet Explorer, etc.) are of their rightful copyright holders. **win32.run** is purely for the purpose of nostalgia. I have no intent and no right to monetize **win32.run**, but you may occasionally see ads when playing third-party games.*
|
|
|
|
win32.run runs solely on the client-side (the user's browser). All files are processed right in the user's browser. There is no file uploading, no server-side processing (cause I'm broke, can't afford it). Each user has his own OS session (just like the good old Windows XP)
|
|
|
|
Files (and Folders) in win32.run are stored locally in IndexedDB. Apps (and 3rd-party apps) can interact with files through win32.run homemade file picker and saver dialog (with Windows XP appearance).
|
|
# Run, build & deploy
|
|
I deploy it on a $5 Vultr instance, so there's no special hardware and dependencies requirement here, except Node.js (and NPM).
|
|
|
|
The project is built with [Svelte](https://github.com/sveltejs/svelte), which may not be great at backward-compatibity at its current phase. You probably don't want to update Svelte and SvelteKit to newer versions to keep things working.
|
|
## Install dependencies
|
|
Clone or download from Github
|
|
```shell
|
|
git clone git@github.com:ducbao414/win32.run.git
|
|
cd win32.run
|
|
```
|
|
Then install dependencies
|
|
```shell
|
|
npm install
|
|
```
|
|
## Run
|
|
```shell
|
|
npm run dev
|
|
```
|
|
The dev server is at http://localhost:3000
|
|
## Build
|
|
```shell
|
|
npm run build
|
|
```
|
|
The build output location is win32.run/build
|
|
To preview the build
|
|
```shell
|
|
npm run preview
|
|
```
|
|
## Deploy
|
|
I shamelessly share my deployment process.
|
|
|
|
Follow [this guide](https://www.digitalocean.com/community/tutorials/how-to-set-up-a-node-js-application-for-production-on-ubuntu-20-04) to set up a Ubuntu server with NGINX. I chose Vultr cause theirs is cheaper than DigitalOcean ($5 vs $6).
|
|
|
|
Put the build folder, package.json, package-lock.json on to the server, ```cd``` then ```npm install```
|
|
|
|
Finally, ```pm2 start build/index.js``` to start win32 at localhost:3000
|
|
# Documentation
|
|
Please visit [win32 Docs](https://docs.win32.run)
|