[HN Gopher] Show HN: Nettu Scheduler - A self-hosted calendar an...
___________________________________________________________________
Show HN: Nettu Scheduler - A self-hosted calendar and scheduler
server
Author : fmeringdal
Score : 110 points
Date : 2021-03-29 12:47 UTC (10 hours ago)
(HTM) web link (github.com)
(TXT) w3m dump (github.com)
| jarym wrote:
| This looks great - can I ask what the motivation was for creating
| and open sourcing it?
| fmeringdal wrote:
| Thanks! Essentially I had two separate booking projects that I
| was working, and instead of duplicating the scheduling and
| calendar logic in both of them, I decided to create a central
| server which would be able to do all the hard and repetetive
| tasks and also not make any assumptions about their data models
| / query patterns.
|
| Also it seems like booking applications have increased in
| numbers during covid and I think this server would be really
| useful for creating a booking app without having to either
| implement all scheduling algorithms yourself or using something
| like Calendly which sticks its logo everywhere in your app and
| makes assumptions about your data model.
| rodolphoarruda wrote:
| This is nice. It gave an insight about something similar that
| could be developed as an extension to WMSes (warehouse management
| systems) in use by Logistics Operators.
|
| The product would work as a openly accessible integration layer
| to the WMS -- which is usually hard to integrate to any system.
| Customers or partners to this warehouse could use the SDK to
| develop integrations on their side to favor inter company
| workflows or even brand new products that would rely on that
| warehouse somehow. Business model could be similar to Bitnami's
| plus customer support plans.
| fmeringdal wrote:
| That sounds like a great idea!
| de6u99er wrote:
| From my experience it is a common mistake to do overlap
| comparisons of intervals this way.
|
| https://github.com/fmeringdal/nettu-scheduler/blob/df737e128...
|
| IMO start time should be treated as inclusive, and end time as
| exclusive.
|
| E.g. an event from 1pm-2pm does not overlap with an event
| starting at 2pm because it's end-time is defined as exclusive.
|
| Therefore you need to replace one of you greater/lower-than's
| with a normal greater/lower comparison operator.
| fmeringdal wrote:
| Thanks for your feedback! I will look into it :)
| de6u99er wrote:
| No problem. Took me 2 min to find it. I actually searched for
| the term "overlap" to see if you're doing it correctly ;)
|
| At least you're using one if statement. Many do interval
| overlap comparisons with two if statements.
| fmeringdal wrote:
| Haha! I must admit that I also did two if statements the
| first time I implemented overlaps ;)
| encryptluks2 wrote:
| Does this support CalDav? I'd be more interested in a self-hosted
| calendar with CalDav integration. Then for
| appointments/scheduling, utilizing a separate calendar designated
| to a single or multiple other calendars that looks for free/busy
| information.
| fmeringdal wrote:
| It does not support CalDav right now. The reason being that I
| didnt need CalDav when i developed the project. That being
| said, a lot of people have asked for CalDav support after I
| launched so it is going to be a prioritized feature moving
| forward.
| klinskyc wrote:
| Very cool, and nice to see more options here (especially open
| source ones). I remember looking five years ago, and being very
| surprised that there was no Stripe-equivalent for adding
| scheduling to an application.
|
| Between this, https://www.timekit.io/, and
| https://www.spurwing.io/ (which is my project), hopefully people
| will stop re-inventing the scheduling wheel with each project.
| Arcanum-XIII wrote:
| I would love to be able to use off the shelf software, sadly I
| have to integrate with an internal prosumer software. It's ugly
| to say the least to get the data, there's no proper sync flow,
| it's heavily rate limited... And I have no control over it. I
| would love to move the scheduling outside this software, but
| sadly it handle other part of the logistic flow needed (book
| some items, get ready the work order...)
|
| So yeah. Booking is dead simple. If you don't have a complete
| logistic flow added on top of it.
| fmeringdal wrote:
| Your project looks awesome, thanks for sharing! And yeah,
| hopefully new booking apps will have a lot of better options
| now than implementing the scheduling stuff themselves.
| dukeofdoom wrote:
| Do you know of a service that would handle user payments of
| selling booking/tickets?
| fmeringdal wrote:
| You might try out calendly, I think they can handle payments
| arez wrote:
| I implemented a similar thing myself at my current job. How did
| you deal with events that happen once a week and someone creating
| an event in 2020 and one for 2024 every monday let's say. Do you
| project the recurring events into the future and see if they
| overlap?
| fmeringdal wrote:
| Cool! I would be happy to explain the internals of the
| projects. Do you mind reformulating your question? I am not
| sure I understood it correctly...
| ezcaldev wrote:
| OMG too funny just today posted on show a new my graphql calendar
| api. hated what I found when we needed to schedule in-app
| appointments. so I ended up creating my own
| http://www.ezcaldev.com
|
| looking forward to learn more about this one
| e12e wrote:
| Apparently your show hn was killed - not sure why?
|
| https://news.ycombinator.com/item?id=26627450
| fmeringdal wrote:
| Thats awesome! Is it open-source? Would love to see how it
| works internally and see how it differs from my implementation.
| dsalzman wrote:
| This is great. It almost handles a use case I've been looking for
| which is a slimmed down version of Calendly. Basically merge
| multiple personal/work calendars into a single free/busy calendar
| I can share with my wife/family.
| fmeringdal wrote:
| Hi, there is a get user freebusy endpoint in the api that
| allows querying free busy information on a given set of
| calendars owned by that user. Is that what your are looking
| for? If not, would you like to create an issue in the repo
| which describes your needs? :)
___________________________________________________________________
(page generated 2021-03-29 23:02 UTC)