Skip to content

Commit d09a2a9

Browse files
docs(integration): add ical (#404)
1 parent 23f0b1e commit d09a2a9

File tree

5 files changed

+57
-0
lines changed

5 files changed

+57
-0
lines changed

docs/integrations/ical/index.mdx

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
---
2+
title: 'iCal'
3+
description: "iCal is a standard for calendar data exchange, allowing users to share and manage calendar events across different platforms."
4+
hide_title: true
5+
---
6+
7+
import { IntegrationHeader } from '@site/src/components/integrations/header';
8+
import { IntegrationCapabilites } from '@site/src/components/integrations/widgets';
9+
import { AddingIntegration } from '@site/src/components/integrations/adding';
10+
import {IntegrationSecrets} from '@site/src/components/integrations/secrets';
11+
import { IconZoomQuestion, IconChartBar, IconSearch } from "@tabler/icons-react";
12+
import { icalIntegration } from '.';
13+
import { calendarWidget } from '@site/docs/widgets/calendar';
14+
15+
<IntegrationHeader
16+
integration={icalIntegration}
17+
categories={['Calendar']}
18+
/>
19+
20+
### Widgets & Capabilities
21+
<IntegrationCapabilites
22+
items={[{
23+
widget: calendarWidget
24+
}]}
25+
/>
26+
27+
### Adding the integration
28+
<AddingIntegration />
29+
30+
### Secrets
31+
<IntegrationSecrets secrets={[{
32+
credentials: ['url'],
33+
steps: []
34+
}]} />
35+
36+
## Using the iCal integration
37+
38+
The iCal integration allows you to add external calendars to Homarr. Any calendar that provides a public iCal URL can be integrated, such as Google Calendar, Apple Calendar, or Outlook.

docs/integrations/ical/index.ts

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
import { IntegrationDefinition } from '@site/src/types';
2+
3+
export const icalIntegration: IntegrationDefinition = {
4+
name: 'iCal',
5+
description:
6+
'iCal is a standard for calendar data exchange, allowing users to share and manage calendar events across different platforms.',
7+
iconUrl: 'https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/svg/ical.svg',
8+
path: '../../integrations/ical',
9+
};

docs/widgets/calendar/index.mdx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ import { nextcloudIntegration } from '@site/docs/integrations/nextcloud';
1717
import { radarrIntegration } from '@site/docs/integrations/radarr';
1818
import { readarrIntegration } from '@site/docs/integrations/readarr';
1919
import { sonarrIntegration } from '@site/docs/integrations/sonarr';
20+
import { icalIntegration } from '@site/docs/integrations/ical';
2021

2122

2223
<WidgetHeader
@@ -53,6 +54,8 @@ import withoutIntegrations from './img/without-integrations.png';
5354
integration: readarrIntegration,
5455
}, {
5556
integration: sonarrIntegration,
57+
}, {
58+
integration: icalIntegration
5659
}]} />
5760

5861
### Interactions

src/components/integrations/secrets.tsx

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import {
22
IconCode,
33
IconKey,
44
IconKeyOff,
5+
IconLink,
56
IconPassword,
67
IconPlug,
78
IconUser,
@@ -65,6 +66,11 @@ const secretKinds = {
6566
description: 'The private key for authentication',
6667
icon: IconKey,
6768
},
69+
url: {
70+
name: 'Url',
71+
description: 'The url of the service',
72+
icon: IconLink,
73+
},
6874
};
6975

7076
type SecretKind = keyof typeof secretKinds;

src/constants/supported-integrations.tsx

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,4 +22,5 @@ export const supportedIntegrations = [
2222
{ iconUrl: 'https://cdn.jsdelivr.net/gh/loganmarchione/homelab-svg-assets/assets/adguardhome.svg', name: 'AdguardHome' },
2323
{ iconUrl: 'https://cdn.jsdelivr.net/gh/walkxcode/dashboard-icons/png/tdarr.png', name: 'Tdarr' },
2424
{ iconUrl: 'https://cdn.jsdelivr.net/gh/walkxcode/dashboard-icons/svg/prowlarr.svg', name: 'Prowlarr' },
25+
{ iconUrl: 'https://cdn.jsdelivr.net/gh/walkxcode/dashboard-icons/svg/ical.svg', name: 'iCal' },
2526
];

0 commit comments

Comments
 (0)