Customization Guide

Customization Guide

Cornerstone Notify is fully extensible. You can create your own themes, layouts, animations, stacking modes, and notification types.

File Structure

web/
├── audio/                    # Notification sound files
│   └── README.txt            # Audio format guidelines
├── styles/
│   ├── base.css              # Core styles and stacking modes
│   ├── themes/               # Theme CSS files
│   │   ├── dark.css
│   │   ├── neon.css
│   │   └── ...
│   ├── layouts/              # Layout CSS files
│   │   ├── card.css
│   │   ├── compact.css
│   │   └── minimal.css
│   └── animations/           # Animation CSS files
│       ├── slide.css
│       ├── glitch.css
│       └── ...
├── notificationTypes.js      # Notification type definitions
├── app.js                    # Core JavaScript
└── index.html                # Main HTML file

Creating a Custom Theme

Step 1: Create a new CSS file in web/styles/themes/

Step 2: Add the CSS import to web/index.html

Step 3: Add to settings dropdown in web/index.html (around line 70)

Step 4: Add to web/test.html (both the settings panel dropdown and test panel dropdown)

Step 5: Update web/app.js - add to the theme class removal list (search for theme-dark):


Creating a Custom Layout

Layouts control the structure and arrangement of notification elements.

Step 1: Create a new CSS file in web/styles/layouts/

Step 2: Add CSS import to web/index.html

Step 3: Add to layout dropdowns in both HTML files

Step 4: Update web/app.js - add to the layout class removal list:


Creating a Custom Animation

Animations require both "show" (entry) and "hide" (exit) variants for left and right positions.

Step 1: Create a new CSS file in web/styles/animations/

Important: The class names must follow this pattern:

  • show[AnimationName]Right and hide[AnimationName]Right

  • show[AnimationName]Left and hide[AnimationName]Left

  • The animation name must be capitalized (e.g., Myanimation not myanimation)

Step 2: Add CSS import to web/index.html

Step 3: Add to animation dropdowns (use lowercase value)

Step 4: Update web/app.js - add to animation class removal list:


Creating a Custom Stacking Mode

Stacking modes are defined in web/styles/base.css.

Step 1: Add your stacking styles to web/styles/base.css

Step 2: Add to stacking dropdowns

Step 3: Update web/app.js - add to stacking class removal list:


Creating a Custom Notification Type

Notification types define the icon and color scheme for different notification categories.

Step 1: Edit web/notificationTypes.js

Step 2: Use your custom type


Integration Checklist

When adding any custom element, make sure to update all these locations:

Element
CSS File
index.html Import
index.html Dropdown
test.html Dropdown
app.js Class List

Theme

themes/

Yes

Yes

Yes (x2)

Yes

Layout

layouts/

Yes

Yes

Yes (x2)

Yes

Animation

animations/

Yes

Yes

Yes (x2)

Yes

Stacking

base.css

No

Yes

Yes (x2)

Yes

Type

notificationTypes.js

No

No

No

No


Last updated