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.4-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8ff22810e167404fd14ccbe979556c4a73602bd6b0f4e3a6c8b83936a3febd74 |
|
MD5 | 9c5b461971d860f04500977ef762a80e |
|
BLAKE2b-256 | 9d788beb9825bf3b6ffd572949c311fb0ea294f2867bbeecc9f7de50b0de79ef |