Hi, I was searching for a library to create events, calendars, etc. as supported by the iCalendar standard, specially for serializing to text (for .ics file creation), however the only library that gets close to that is this one (not even published): GitHub - RealKinetic/elm-rrule: iCalendar (RFC 5545) recurring events in Elm, yet, it doesn’t even support much stuff.
I want to do this all in elm/the frontend. Is there any alternative that any of you might know of? (I guess I could try to do it on the js side, though I don’t have any experience between elm-js communication)
If I may be so presumptuous I would like to encourage you to take the time and try to implement your own package. This may take perhaps a week of your time but provide some of the following benefits:
You will learn much (more) about parsers
You will learn much (more) about package and API design
You will deepen your understanding of calendars and the associated problems with programming them.
You will gain experience reading technical specification documents and compare them to specific implementations.
You will add a nice open source package to your CV/portfolio and gain the reputational benefits due such work. Maybe you can even give a conference/meet-up talk about it.
All of these things make it likely a great investment for your current endeavour but will pay their dividends throughout your career.
Thank you for the encouragement. Since implementing it myself seems to be the only option, if/when I do it, I may post about it again here if someone else needs it.
I have an unpublished package for iCal. It doesn’t necessarily support every use case, but it has a good test suite and I used to use it to give a calendar feed of my live stream schedule for my elm-pages web site.
You’re welcome to fork it or use it for inspiration.
Well… I come back here (sadly?) with the news that I decided to go with Purescript, so no elm library… (the library was intended for a fairly small project that was easy enough to rewrite in Purescript)
Anyway, here’s the repo if there’s the chance of it being useful to anyone else.