Datasette plugin for outputting iCalendar files
Project description
datasette-ics
Datasette plugin that adds support for generating iCalendar .ics files with the results of a SQL query.
Installation
Install this plugin in the same environment as Datasette to enable the .ics
output extension.
$ pip install datasette-ics
Usage
To create an iCalendar file you need to define a custom SQL query that returns a required set of columns:
event_name
- the short name for the eventevent_dtstart
- when the event starts
The following columns are optional:
event_dtend
- when the event endsevent_duration
- the duration of the event (use instead ofdtend
)event_description
- a longer description of the eventevent_uid
- a globally unique identifier for this eventevent_tzid
- the timezone for the event, e.g.America/Chicago
A query that returns these columns can then be returned as an ics feed by adding the .ics
extension.
Using a canned query
Datasette's canned query mechanism can be used to configure calendars. If a canned query definition has a title
that will be used as the title of the calendar.
Here's an example, defined using a metadata.yaml
file:
databases:
mydatabase:
queries:
calendar:
title: My Calendar
sql: |-
select
title as event_name,
start as event_dtstart,
description as event_description
from
events
order by
start
limit
100
This will result in a calendar feed at http://localhost:8001/mydatabase/calendar.ics
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Hashes for datasette_ics-0.5-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4b8b3852dcc8fd84bf0043cf31e7bdb32f96999ce5b52cdba119651257b57739 |
|
MD5 | 1836fd0394bfe034d8b7b8cb27ee7666 |
|
BLAKE2b-256 | ec0277b11a0ca1158fd64238cdbad4f58f4d8bbe9389b6d5fe54c39be0dfdcc6 |