Skip to content

Commit 9bb1524

Browse files
authored
Merge pull request #120 from eoneill/eoneill-mod-registry
rename Themes -> Mods
2 parents ed1890a + e0ce697 commit 9bb1524

File tree

6 files changed

+67
-67
lines changed

6 files changed

+67
-67
lines changed

content/contribute/CONTRIBUTING.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
title: Contributing to Zen Browser
33
draft: false
4-
lastmod: 2024-08-26
4+
lastmod: 2025-02-07
55
---
66

77
Thank you for considering contributing to Zen Browser! We appreciate your time and effort in improving this project. The following is a set of guidelines for contributing to Zen Browser. These guidelines are intended to make it easier for you to get involved.
@@ -23,7 +23,7 @@ To help you get started with contributing, we have created separate guides for e
2323
- [[www | Getting Started with Zen's Homepage Development]]
2424
- [[docs | Getting Started with Documentation Contributions]]
2525
- [[translation | Getting Started with Translations]]
26-
26+
2727
Please follow the appropriate guide based on the repository you want to contribute to.
2828

2929
### Reporting Bugs
@@ -33,15 +33,15 @@ If you find a bug, please open an issue and describe the problem in detail. Incl
3333
>[!important]
3434
>Open the issue in it's corresponding GitHub repository:
3535
>- [Desktop Browser App](https://github.com/zen-browser/desktop/issues)
36-
>- [Zen's Custom Themes](https://github.com/zen-browser/theme-store)
36+
>- [Zen's Custom Mods](https://github.com/zen-browser/theme-store)
3737
>- [Zen's Homepage Website](https://github.com/zen-browser/www)
3838
>- [This documentation Website](https://github.com/zen-browser/docs)
3939
4040
### Suggesting Features
4141

4242
![[discuss.png]]
4343

44-
We welcome suggestions for new features or improvements to existing ones. To suggest a feature, please start a new Github discussion in the Ideas category.
44+
We welcome suggestions for new features or improvements to existing ones. To suggest a feature, please start a new Github discussion in the Ideas category.
4545
*Use the correct Github Repository based on the list above*
4646

4747
---

content/index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ Welcome to **Zen Browser's Documentation!** Here, you'll find everything you nee
99
* #### [[building|Building Zen Browser 📦]]
1010
* #### [[user-manual/index|User Manual 📖]]
1111
* #### [[guides/index|Guides 🛠️]]
12-
* #### [[themes-store/index|Theme Store 🎨]]
12+
* #### [[themes-store/index|Mods Registry 🎨]]
1313
* #### [[faq | Frequently Asked Questions ❓]]
1414
* #### [[benchmarks | Performance Benchmarks 📊]]
1515
* #### [[contribute/index | Contribution Guides 🌟]]

content/themes-store/index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
---
2-
title: Themes Store 🎨
2+
title: Mods Registry 🎨
33
---

content/themes-store/themes-marketplace-preferences.md

Lines changed: 33 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
11
---
2-
title: Themes Store Preferences ⚙️
3-
lastmod: 2024-09-16
2+
title: Mods Registry Preferences ⚙️
3+
lastmod: 2025-02-07
44
---
55

6-
The `preferences.json` file allows theme developers to define custom preferences that control the behavior and appearance of themes in the Zen Browser. Each preference is defined with a `property`, a `label`, a `type`, and optionally `options` (for dropdown preferences), `defaultValue`, `placeholder` (to configure preference placeholder) and `disabledOn` (to disable property on selected OS). The `preferences.json` file contains a list of these preference objects at its root.
6+
The `preferences.json` file allows mod developers to define custom preferences that control the behavior and appearance of mods in the Zen Browser. Each preference is defined with a `property`, a `label`, a `type`, and optionally `options` (for dropdown preferences), `defaultValue`, `placeholder` (to configure preference placeholder) and `disabledOn` (to disable property on selected OS). The `preferences.json` file contains a list of these preference objects at its root.
77

88
## Preferences fields
99

1010
### Field: `property` - Property name
1111

1212
The `property` field is a string that should follow Firefox's preference naming schema, similar to `about:config` entries. The `property` name can be any valid string that aligns with this schema.
1313

14-
For example: `theme.mytheme.background_color`
14+
For example: `mod.mymod.background_color`
1515

1616

1717
### Field: `label` - Label
@@ -35,7 +35,7 @@ The `checkbox` type allows a togglable input to enable or disable a property.
3535

3636
```json title="Checkbox Example"
3737
{
38-
"property": "theme.mytheme.enable_dark_mode",
38+
"property": "mod.mymod.enable_dark_mode",
3939
"label": "Enable dark mode",
4040
"type": "checkbox"
4141
}
@@ -47,7 +47,7 @@ The `dropdown` type allows to select a single choice on multiple options.
4747

4848
```json title="Dropdown Example"
4949
{
50-
"property": "theme.mytheme.background_color",
50+
"property": "mod.mymod.background_color",
5151
"label": "Background color",
5252
"type": "dropdown",
5353
"options": [
@@ -70,7 +70,7 @@ The `string` type is a text input that allows to insert valid css values without
7070

7171
```json title="String Example"
7272
{
73-
"property": "theme.mytheme.tab_padding",
73+
"property": "mod.mymod.tab_padding",
7474
"label": "Set tab padding",
7575
"type": "string"
7676
}
@@ -161,18 +161,18 @@ For example: `e.g: 10px`
161161
<details>
162162
<summary><font weight="bold" size=4.75><b>See Full Example</b></font></summary>
163163

164-
Below is a full example of what a `preferences.json` file might look like with multiple preference objects in its root. Each object represents a preference defined for a theme:
164+
Below is a full example of what a `preferences.json` file might look like with multiple preference objects in its root. Each object represents a preference defined for a mod:
165165

166166
```json
167167
[
168168
{
169-
"property": "theme.mytheme.enable_dark_mode",
169+
"property": "mod.mymod.enable_dark_mode",
170170
"label": "Enable dark mode",
171171
"type": "checkbox",
172172
"defaultValue": true
173173
},
174174
{
175-
"property": "theme.mytheme.background_color",
175+
"property": "mod.mymod.background_color",
176176
"label": "Background color",
177177
"type": "dropdown",
178178
"placeholder": "Select a color",
@@ -189,7 +189,7 @@ Below is a full example of what a `preferences.json` file might look like with m
189189
]
190190
},
191191
{
192-
"property": "theme.mytheme.show_bookmarks_bar",
192+
"property": "mod.mymod.show_bookmarks_bar",
193193
"label": "Show bookmarks bar",
194194
"type": "string",
195195
"disabledOn": ["macos"]
@@ -207,19 +207,19 @@ In this example:
207207

208208
---
209209

210-
## Using preferences in the theme's CSS
210+
## Using preferences in the mod's CSS
211211

212-
Once you have defined your preferences in the `preferences.json` file, you can use them in your theme’s CSS to modify the appearance or behavior based on the user’s selections.
212+
Once you have defined your preferences in the `preferences.json` file, you can use them in your mod’s CSS to modify the appearance or behavior based on the user’s selections.
213213

214214
### Checkbox Preferences
215215

216216
Checkbox preferences can be detected in your CSS using the `-moz-bool-pref` media query, which evaluates the boolean value (`true` or `false`) of a checkbox preference.
217217

218-
For example, if you have a preference to enable dark mode in your theme:
218+
For example, if you have a preference to enable dark mode in your mod:
219219

220220
```json
221221
{
222-
"property": "theme.mytheme.enable_dark_mode",
222+
"property": "mod.mymod.enable_dark_mode",
223223
"label": "Enable dark mode",
224224
"type": "checkbox"
225225
}
@@ -228,7 +228,7 @@ For example, if you have a preference to enable dark mode in your theme:
228228
You can use the following CSS to change the background color when the dark mode preference is enabled:
229229

230230
```css {1}
231-
@media (-moz-bool-pref: "theme.mytheme.enable_dark_mode") {
231+
@media (-moz-bool-pref: "mod.mymod.enable_dark_mode") {
232232
body {
233233
background-color: #000;
234234
color: #fff;
@@ -238,16 +238,16 @@ You can use the following CSS to change the background color when the dark mode
238238

239239
You can also have negative conditions
240240
```css {1}
241-
@media not (-moz-bool-pref: "theme.mytheme.enable_dark_mode")
241+
@media not (-moz-bool-pref: "mod.mymod.enable_dark_mode")
242242
```
243243

244244

245245
### Dropdown Preferences
246246

247247
> [!attention]
248-
> `property` fields defined in `preferences.json` using the `"dropdown"` type will have one key difference when used in your themes CSS: **dots (`.`) in the `property` name are replaced with hyphens (`-`)**.
248+
> `property` fields defined in `preferences.json` using the `"dropdown"` type will have one key difference when used in your mod’s CSS: **dots (`.`) in the `property` name are replaced with hyphens (`-`)**.
249249
>
250-
> E.g. `theme.mytheme.background_color` becomes `theme-mytheme-background_color` in the CSS file.
250+
> E.g. `mod.mymod.background_color` becomes `mod-mymod-background_color` in the CSS file.
251251
> This transformation ensures that the property can be used as an attribute selector or inside a media query.
252252

253253
For dropdown preferences, you can detect the selected value using the `:has(){:css}` CSS pseudo-class, which applies styles based on the selected attribute and value in the DOM.
@@ -256,7 +256,7 @@ For example, if you have a preference to select the background color from a drop
256256

257257
```json
258258
{
259-
"property": "theme.mytheme.background_color",
259+
"property": "mod.mymod.background_color",
260260
"label": "Background color",
261261
"type": "dropdown",
262262
"options": [
@@ -276,21 +276,21 @@ You can use the following CSS to change the background color based on the select
276276

277277
```css {2,8,14}
278278
/* Green background */
279-
body:has(#theme-mytheme[theme-mytheme-background_color="green"]) {
279+
body:has(#mod-mymod[mod-mymod-background_color="green"]) {
280280
background-color: #008000;
281281
color: #000;
282282
}
283283

284284
/* Blue background */
285-
body:has(#theme-mytheme[theme-mytheme-background_color="blue"]) {
285+
body:has(#mod-mymod[mod-mymod-background_color="blue"]) {
286286
background-color: #0000ff;
287287
color: #fff;
288288
}
289289
```
290290

291291
In this example:
292292
- The background color and text color change based on the value selected in the `background_color` dropdown.
293-
- The selector `body:has(#theme-mytheme[background_color="value"]){:css}` checks the `background_color` attribute and applies the relevant styles based on the selected option.
293+
- The selector `body:has(#mod-mymod[background_color="value"]){:css}` checks the `background_color` attribute and applies the relevant styles based on the selected option.
294294

295295
---
296296

@@ -302,12 +302,12 @@ Suppose your `preferences.json` file includes these two preferences:
302302
```json
303303
[
304304
{
305-
"property": "theme.mytheme.enable_dark_mode",
305+
"property": "mod.mymod.enable_dark_mode",
306306
"label": "Enable dark mode",
307307
"type": "checkbox"
308308
},
309309
{
310-
"property": "theme.mytheme.background_color",
310+
"property": "mod.mymod.background_color",
311311
"label": "Background color",
312312
"type": "dropdown",
313313
"options": [
@@ -328,20 +328,20 @@ You can combine the CSS like this:
328328

329329
```css
330330
/* Checkbox for dark mode */
331-
@media (-moz-bool-pref: "theme.mytheme.enable_dark_mode") {
331+
@media (-moz-bool-pref: "mod.mymod.enable_dark_mode") {
332332
body {
333333
background-color: #000;
334334
color: #fff;
335335
}
336336
}
337337

338338
/* Dropdown for background color selection */
339-
body:has(#theme-mytheme[theme-mytheme-background_color="green"]) {
339+
body:has(#mod-mymod[mod-mymod-background_color="green"]) {
340340
background-color: #008000;
341341
color: #000;
342342
}
343343

344-
body:has(#theme-mytheme[theme-mytheme-background_color="blue"]) {
344+
body:has(#mod-mymod[mod-mymod-background_color="blue"]) {
345345
background-color: #0000ff;
346346
color: #fff;
347347
}
@@ -358,16 +358,16 @@ This allows users to:
358358
String preferences can be detected in your CSS using the `var(--property)` operator. The preference property is saved at `:root` level.
359359

360360
> [!attention]
361-
> `property` fields defined in `preferences.json` using the `"string"` type will have one key difference when used in your themes CSS: **dots (`.`) in the `property` name are replaced with hyphens (`-`)**.
361+
> `property` fields defined in `preferences.json` using the `"string"` type will have one key difference when used in your mod’s CSS: **dots (`.`) in the `property` name are replaced with hyphens (`-`)**.
362362
>
363-
> E.g. `theme.mytheme.background_color` becomes `theme-mytheme-background_color` in the CSS file.
363+
> E.g. `mod.mymod.background_color` becomes `mod-mymod-background_color` in the CSS file.
364364
> This transformation ensures that the property can be used as an attribute selector or inside a media query.
365365
366-
For example, if you have a preference to enable dark mode in your theme:
366+
For example, if you have a preference to enable dark mode in your mod:
367367

368368
```json
369369
{
370-
"property": "theme.mytheme.background_color",
370+
"property": "mod.mymod.background_color",
371371
"label": "Background color",
372372
"type": "string"
373373
}
@@ -377,6 +377,6 @@ You can use the following CSS to change the background color when the dark mode
377377

378378
```css {2}
379379
.myClass {
380-
background-color: var(--theme-mytheme-background_color)
380+
background-color: var(--mod-mymod-background_color)
381381
}
382382
```
Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,33 @@
11
---
2-
title: Themes Store Submission Guidelines 📋
3-
lastmod: 2024-08-19
2+
title: Mods Registry Submission Guidelines 📋
3+
lastmod: 2025-02-07
44
---
55

6-
If you are a theme developer and would like to submit your theme, please follow these guidelines:
6+
If you are a [mod developer] and would like to submit your mod, please follow these guidelines:
77

8-
1. **Theme requirements**:
9-
- Your theme must be compatible with Zen Browser.
10-
- Your theme must be open-source.
11-
- Your theme must not contain any malicious code.
12-
- Your theme must not violate any copyright laws.
8+
1. **Mod requirements**:
9+
- Your mod must be compatible with Zen Browser.
10+
- Your mod must be open-source.
11+
- Your mod must not contain any malicious code.
12+
- Your mod must not violate any copyright laws.
1313

14-
2. **Theme Validation**:
15-
- Your theme's name must be unique and less than `25` characters.
16-
- Your theme's description must be less than `100` characters.
17-
- Your theme's screenshot must be a `PNG` with a size of `300x200` (it can be resized after upload).
18-
- Your theme must contain a valid `README` describing the theme and how to use it.
19-
- If your theme has any preferences values, they must be set in the `preferences` text area as a `JSON` object.
14+
2. **Mod Validation**:
15+
- Your mod's name must be unique and less than `25` characters.
16+
- Your mod's description must be less than `100` characters.
17+
- Your mod's screenshot must be a `PNG` with a size of `300x200` (it can be resized after upload).
18+
- Your mod must contain a valid `README` describing the mod and how to use it.
19+
- If your mod has any preferences values, they must be set in the `preferences` text area as a `JSON` object.
2020
- See how preferences work [here](themes-store/themes-marketplace-preferences.md).
2121

22-
3. **Theme Submission**:
23-
- To submit your theme, please create an issue [here](https://github.com/zen-browser/theme-store/issues/new?assignees=&labels=new-theme&projects=&template=create-theme.yml&title=%5Bcreate-theme%5D%3A+)
22+
3. **Mod Submission**:
23+
- To submit your mod, please create an issue [here](https://github.com/zen-browser/theme-store/issues/new?assignees=&labels=new-theme&projects=&template=create-theme.yml&title=%5Bcreate-theme%5D%3A+)
2424
- Fill out the template with the required information.
25-
- Once you have submitted your theme, it will be analyzed by a bot and a pull request will be created.
26-
- If your theme is approved, it will be added to the Themes Marketplace.
25+
- Once you have submitted your mod, it will be analyzed by a bot and a pull request will be created.
26+
- If your mod is approved, it will be added to the Mods Registry.
2727

28-
4. **Theme Update**:
29-
- If you would like to update your theme, please create an issue [here](https://github.com/zen-browser/theme-store/issues/new)
28+
4. **Mod Update**:
29+
- If you would like to update your mod, please create an issue [here](https://github.com/zen-browser/theme-store/issues/new)
3030
- Please explain the changes you have made.
3131

3232
> [!info]
33-
> Themes are automatically updated and generated by the bot. If your theme is not approved, you will receive a message with the reason why it was not approved.
33+
> Mods are automatically updated and generated by the bot. If your mod is not approved, you will receive a message with the reason why it was not approved.
Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
11
---
2-
title: Information about Themes Store ℹ️
3-
lastmod: 2024-09-19
2+
title: Information about Mods Registry ℹ️
3+
lastmod: 2025-02-07
44
---
55

6-
The Themes Store is a place where you can find and install themes for Zen Browser.
6+
The Mods Registry is a place where you can find and install mods for Zen Browser.
77

8-
## How to install a theme
8+
## How to install a mod
99

1010
1. Open Zen Browser.
11-
2. Click on the theme you would like to install on the [Themes Store](https://www.zen-browser.app/themes).
11+
2. Click on the mod you would like to install on the [Mods Registry](https://www.zen-browser.app/mods).
1212
3. Click on the "Install" button.
1313

14-
## For theme developers
14+
## For mod developers
1515

16-
If you are a theme developer and would like to submit your theme, please follow the instructions on the [Submission Guidelines](themes-store/themes-marketplace-submission-guidelines.md) page.
16+
If you are a mod developer and would like to submit your mod, please follow the instructions on the [Submission Guidelines](themes-store/themes-marketplace-submission-guidelines.md) page.

0 commit comments

Comments
 (0)