No description
| .changeset | ||
| .github | ||
| .vscode | ||
| packages | ||
| .gitignore | ||
| .npmrc | ||
| eslint.config.js | ||
| LICENSE.md | ||
| package.json | ||
| pnpm-lock.yaml | ||
| pnpm-workspace.yaml | ||
| README.md | ||
| tsconfig.json | ||
About
This monorepo contains the source code of [os.prozilla.dev][website] as well as multiple packages. You can find the main package at prozilla-os.
ProzillaOS is a web-based operating system inspired by Ubuntu Linux and Windows. It is made with React, Vite and TypeScript by Prozilla.
Packages
Libraries
These libraries are different modules of ProzillaOS that can be installed separately or via the bundle package prozilla-os. Each library has a src/main.ts entry file and is published to the npm registry.
prozilla-os: A bundle containing the core packages and all standard applications of ProzillaOS@prozilla-os/core: Core functionality, React components and hooks@prozilla-os/shared: Shared functions and utilities
Standard applications
@prozilla-os/file-explorer: File explorer app@prozilla-os/terminal: Terminal/shell app@prozilla-os/text-editor: Text editor app@prozilla-os/settings: Settings app@prozilla-os/media-viewer: Media viewer app@prozilla-os/browser: Browser app@prozilla-os/calculator: Calculator app
Non-standard applications
@prozilla-os/logic-sim: Logic simulator app
Sites
These packages contains the source code of parts of the ProzillaOS website. They are published to GitHub pages.
prozilla-os-demo: Demo siteprozilla-os-docs: Documentation site
Scripts
ProzillaOS uses the package manager pnpm to run scripts.
Shorthands
| Script | Description |
|---|---|
pnpm run start |
Run pnpm run site:start. VSCode is configured to run this script whenever the project is opened. |
pnpm run build |
Build every package in sequential order. |
pnpm run deploy |
Clear the dist directory, build and stage each package that comprises the website, then deploy to GitHub pages. This should then trigger a GitHub Action that deploys the build to production. |
Libraries
| Script | Description |
|---|---|
pnpm --filter <package_selector> build |
Build a sepecific subset of packages or a single package and output to respective dist directory/directories. For more information about selecting specific packages, read pnpm's documentation on filtering. |
pnpm run packages:build |
Build all packages using Vite in sequential order and output to respective dist directories. |
pnpm run packages:update |
Create a new changeset for packages and update their version accordingly. |
pnpm run packages:release |
Publish the latest versions of each package to the npm registry. |
Package: prozilla-os-demo
| Script | Linked package script |
|---|---|
pnpm run site:start |
pnpm run start |
pnpm run site:build |
pnpm run build |
pnpm run site:preview |
pnpm run preview |
pnpm run site:stage |
pnpm run stage |
pnpm run site:deploy |
pnpm run deploy |
pnpm run site:fetch |
pnpm run fetch |
Package: prozilla-os-docs
| Script | Linked package script |
|---|---|
pnpm run docs:start |
pnpm run start |
pnpm run docs:build |
pnpm run build |
pnpm run docs:preview |
pnpm run preview |
pnpm run docs:stage |
pnpm run stage |
Links
Resources
These resources can help you get started with ProzillaOS.
- prozilla-os/ProzillaOS-boilerplate: Boilerplate code for a React Vite app implementing ProzillaOS

