Skip to content

Class Skin

Change the look and feel of ProzillaOS

Constructor

new Skin(options)

Parameters


options

  • Optional
  • Type: SkinOptions
ts
interface SkinOptions {
	appIcons?: Record<number, string>;
	appNames?: Record<number, string>;
	wallpapers: string[];
	defaultWallpaper: string;
	fileIcons: {
		generic: string;
		info?: string;
		text?: string;
		code?: string;
	};
	folderIcons: {
		generic: string;
		images?: string;
		text?: string;
		link?: string;
	};
	loadStyleSheet?: () => void;
}

Properties

appIcons

Replacements for app icons based on app id

  • Type: { [key: string]: string }

appNames

Replacements for app names based on app id

  • Type: { [key: string]: string }

wallpapers

Array of URLs of wallpaper images

  • Type: string[]

defaultWallpaper

URL of default wallpaper image

  • Type: string
  • Default: "https://os.prozilla.dev/assets/wallpapers/vibrant-wallpaper-blue-purple-red.png"Default wallpaper

fileIcons

URLs of icons for types of files

  • Type: FileIcons
ts
interface FileIcons {
	generic: string;
	info?: string;
	text?: string;
	code?: string;
}

Default

Default file icons

folderIcons

URLs of icons for types of folders

  • Type: FolderIcons
ts
interface FolderIcons {
	generic: string;
	images?: string;
	text?: string;
	link?: string;
}

Default

Default folder icons

loadStyleSheet

Function that dynamically imports style sheet

  • Type: () => void

  • Example

    ts
    function loadStyleSheet() {
    	import("../styles/skins/macOs.css");
    }

Instances

macOsSkin

A skin inspired by the macOS interface

minimalSkin

A minimalistic skin with monochrome icons

Built by Prozilla