No description
Find a file
2024-07-07 15:16:18 +02:00
.changeset Migrated to pnpm 2024-06-17 21:46:01 +02:00
.github Updated FUNDING.yml 2024-06-18 11:57:19 +02:00
.vscode Migrated to pnpm 2024-06-17 21:46:01 +02:00
packages Deleted packages/demo/public/config/tree.json 2024-07-07 15:16:18 +02:00
.gitignore Added new docs package 2024-07-07 15:15:46 +02:00
.npmrc Fixed node module resolution by enabling hoisting 2024-06-18 12:26:58 +02:00
eslint.config.js Added application roles 2024-06-20 21:13:16 +02:00
LICENSE.md Renamed LICENSE to LICENSE.md 2023-07-15 14:19:51 +02:00
package.json Added new docs package 2024-07-07 15:15:46 +02:00
pnpm-lock.yaml Added new docs package 2024-07-07 15:15:46 +02:00
pnpm-workspace.yaml Migrated to pnpm 2024-06-17 21:46:01 +02:00
README.md Fixed scripts to work with packages 2024-07-06 20:44:05 +02:00
tsconfig.json Refactor: moved site to packages/demo folder 2024-07-07 12:22:10 +02:00


ProzillaOS

License Stars Forks NPM Version

About

This monorepo contains the source code of os.prozilla.dev 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.

Warning

This repository is currently being transformed into a monorepo. Some things may be temporarily missing/broken. If you have any questions in the meantime, feel free to open an issue.

Packages

Each package follows a similar structure and has a src/main.ts entry file.

  • prozilla-os - A bundle containing all essential packages and standard applications of ProzillaOS

Essentials

Standard applications

Non-standard applications

Scripts

These are the scripts in logical order, that will be available when you have installed the dependencies. Note that certain scripts can be omitted by running another script. For more information about scripts #1, #2 and #3, check the officiel Vite documentation. ProzillaOS uses pnpm as its package manager.

Main scripts

These scripts are related to the website and its lifecycle.

  1. pnpm start

    Start Vite dev server at localhost:3000. Changes to module will dynamically be hot-reloaded, so normally there is no need for hard-refreshes. VSCode is configured to run this script whenever the project is opened.

  2. pnpm run build

    Compile project using TypeScript and bundle all files into the dist directory, or the directory specified in config file. This directory can be uploaded to a web server.

  3. pnpm run preview

    Start web server with preview of build at localhost:8080. Can be useful for testing build before deploying.

  4. pnpm run stage

    Execute stage.ts, which stages the build and prepares it for deployment. Script will generate a sitemap, robots.txt and all other necessary files.

  5. pnpm run deploy

    Run scripts #2 and #4, then execute deploy.ts, which uploads the staged build to GitHub Pages on branch called gh-pages. This should then trigger a GitHub Action that deploys the build to production.

Extra scripts

  • pnpm run fetch

    Fetch the repository tree using GitHub's API and store it as a JSON file that will be used to populate the virtual drive. More information can be found on the virtual drive page.

Scripts/commands for packages

These scripts are related to the packages in this project and their lifecycles.

  • 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.

Resources

These resources can help you get started with ProzillaOS.


Screenshot of ProzillaOS