Implement service index exclusion control

Reworked service configuration to allow individual services to be conditionally excluded from the main index, increasing the flexibility of the display. Configuration files have been restructured and moved into appropriate subdirectories to improve project organization.

- Added `exclude_from_index` flags to all services within `services.json` to facilitate granular control over their visibility on the index page.
- Modified the `index.html` template to respect the new `exclude_from_index` setting, thus excluding specified services from being listed on the index page.
- Migrated `Caddyfile` and `privatecoffee.ini` to `contrib` directory for better separation of project contributions and core configuration files.

This update enhances the site's privacy features and enables easier navigation by allowing selective service display.
This commit is contained in:
Kumi 2024-01-07 11:27:30 +01:00
parent 3d655f11fd
commit 5e0ecedb3f
Signed by: kumi
GPG key ID: ECBCC9082395383F
4 changed files with 33 additions and 1 deletions

View file

@ -12,6 +12,7 @@
"url": "https://element.private.coffee" "url": "https://element.private.coffee"
} }
], ],
"exclude_from_index": false,
"exclude_from_simple": true "exclude_from_simple": true
}, },
{ {
@ -26,6 +27,7 @@
"url": "https://cryptpad.private.coffee" "url": "https://cryptpad.private.coffee"
} }
], ],
"exclude_from_index": false,
"exclude_from_simple": false "exclude_from_simple": false
}, },
{ {
@ -40,6 +42,7 @@
"url": "https://invidious.private.coffee" "url": "https://invidious.private.coffee"
} }
], ],
"exclude_from_index": false,
"exclude_from_simple": false "exclude_from_simple": false
}, },
{ {
@ -58,6 +61,7 @@
"url": "https://skrt.social" "url": "https://skrt.social"
} }
], ],
"exclude_from_index": false,
"exclude_from_simple": false "exclude_from_simple": false
}, },
{ {
@ -72,6 +76,7 @@
"url": "https://gothub.private.coffee" "url": "https://gothub.private.coffee"
} }
], ],
"exclude_from_index": false,
"exclude_from_simple": false "exclude_from_simple": false
}, },
{ {
@ -86,7 +91,8 @@
"url": "https://redlib.private.coffee" "url": "https://redlib.private.coffee"
} }
], ],
"exclude_from_simple": true "exclude_from_index": false,
"exclude_from_simple": false
}, },
{ {
"name": "AllTube", "name": "AllTube",
@ -100,6 +106,7 @@
"url": "https://alltube.private.coffee" "url": "https://alltube.private.coffee"
} }
], ],
"exclude_from_index": false,
"exclude_from_simple": false "exclude_from_simple": false
}, },
{ {
@ -114,6 +121,7 @@
"url": "https://indestructables.private.coffee" "url": "https://indestructables.private.coffee"
} }
], ],
"exclude_from_index": false,
"exclude_from_simple": false "exclude_from_simple": false
}, },
{ {
@ -128,6 +136,7 @@
"url": "https://nocodb.private.coffee" "url": "https://nocodb.private.coffee"
} }
], ],
"exclude_from_index": false,
"exclude_from_simple": false "exclude_from_simple": false
}, },
{ {
@ -142,6 +151,7 @@
"url": "https://penpot.private.coffee" "url": "https://penpot.private.coffee"
} }
], ],
"exclude_from_index": false,
"exclude_from_simple": false "exclude_from_simple": false
}, },
{ {
@ -156,6 +166,7 @@
"url": "https://private.cf" "url": "https://private.cf"
} }
], ],
"exclude_from_index": false,
"exclude_from_simple": false "exclude_from_simple": false
}, },
{ {
@ -170,6 +181,7 @@
"url": "https://rallly.private.coffee" "url": "https://rallly.private.coffee"
} }
], ],
"exclude_from_index": false,
"exclude_from_simple": false "exclude_from_simple": false
}, },
{ {
@ -184,6 +196,7 @@
"url": "https://librey.private.coffee" "url": "https://librey.private.coffee"
} }
], ],
"exclude_from_index": false,
"exclude_from_simple": false "exclude_from_simple": false
}, },
{ {
@ -198,6 +211,7 @@
"url": "https://overleaf.private.coffee" "url": "https://overleaf.private.coffee"
} }
], ],
"exclude_from_index": false,
"exclude_from_simple": false "exclude_from_simple": false
}, },
{ {
@ -218,6 +232,22 @@
] ]
} }
], ],
"exclude_from_index": true,
"exclude_from_simple": true
},
{
"name": "Proxigram",
"url": "https://proxigram.private.coffee",
"short_description": "Proxigram is a privacy-friendly alternative front-end to Instagram.",
"long_description": "Proxigram is a privacy-friendly alternative front-end to Instagram. It allows you to browse Instagram without being tracked.",
"status": "NOK",
"links": [
{
"name": "Go to Proxigram",
"url": "https://proxigram.private.coffee"
}
],
"exclude_from_index": true,
"exclude_from_simple": true "exclude_from_simple": true
} }
] ]

View file

@ -13,6 +13,7 @@
<div class="row" id="services"> <div class="row" id="services">
{% for service in services.services %} {% for service in services.services %}
{% if not service.exclude_from_index %}
<div class="service col-sm-4"> <div class="service col-sm-4">
<h3>{{ service.name }}</h3> <h3>{{ service.name }}</h3>
<p> <p>
@ -55,6 +56,7 @@
</div> </div>
{% endfor %} {% endfor %}
</div> </div>
{% endif %}
{% endfor %} {% endfor %}
<div class="service col-sm-4"> <div class="service col-sm-4">