aboutsummaryrefslogtreecommitdiff
path: root/lib/Server.hs (unfollow)
Commit message (Collapse)AuthorFilesLines
2024-04-17general housekeepingstuebinm1-10/+5
jumps to GHC2021 as default language, adds in some fields, moves the old org mode glossary to markdown, etc.
2023-05-26change server timetables apistuebinm1-1/+2
2023-05-26expose sequence length of trip to onboard unitstuebinm1-0/+1
2023-05-20expose the gtfs.zip used in the APIstuebinm1-6/+9
2023-03-11simple on-board toolsstuebinm1-8/+19
these are just enough to send train positions to tracktrain with the current API, but are somewhat brittle (e.g. will fail if not restarted between trips, etc.)
2023-02-23don't hardcode cssstuebinm1-5/+6
2023-01-22oauth2 via uffdstuebinm1-7/+6
this is unfortunately uffd-specific, since oauth2 is apparently sort of a vague standard. But since it doesn't actually do much it should probably be possible to make it fully configurable & generic if needed.
2022-12-13simple realtime position mapstuebinm1-1/+9
(what was that about doing the realtime stuff somewhere else and /not/ in this monolithic server thingie? oh well …)
2022-12-12a subscribe websocket for real-time location infostuebinm1-7/+36
(for a leaflet map view or sth which isn't implemented yet)
2022-10-16simple prometheus metricsstuebinm1-5/+16
2022-09-14remove some extrapolation bugsstuebinm1-3/+3
2022-09-11on-board-unit: display estimated delay etc.stuebinm1-3/+5
2022-09-10gtfs realtime: add tripUpdate feedstuebinm1-3/+3
2022-09-10use websockets for the on-board-unitstuebinm1-32/+31
2022-08-31guess at future delays (horrible, incorrect, and unfinished)stuebinm1-2/+2
2022-08-28some config thingyesodstuebinm1-1/+4
works kinda well, but doesn't complain about unknown config values in json, which is kinda hmpf tbh
2022-08-28this does way too much tbh (also functioning delays)stuebinm1-5/+17
most of it deals with timezones, and all the weird implications that has
2022-08-27controlroom: lots of pretty little knobsstuebinm1-41/+37
(also some database schema changes, for good measure)
2022-08-14control room: translations & form inputstuebinm1-2/+2
still basic, but works pretty well overall
2022-08-14controlroom: replace servant/lucid with yesodstuebinm1-1/+4
aka use something meant for webapps to write the webapp
2022-07-11somewhat functioning control roomstuebinm1-1/+1
tbh i've kinda lost track at what has all been changed in this, but the control room form handling now works, and i can write announcements into the database. Now on to making it do useful things!
2022-07-07don't have the ControlRoom API in Swaggerstuebinm1-2/+2
just causes pain and isn't really useful for anything since it's a webform API meant to be used by the web frontend, not by other applications.
2022-07-03barebones webform API & frontendstuebinm1-0/+2
2022-07-03remove some unused importsstuebinm1-30/+11
2022-07-03add service monad (with built-in logging)stuebinm1-19/+20
2022-07-02websockets and better (empty) response messagesstuebinm1-48/+65
(tough mostly untested)
2022-07-02better module namesstuebinm1-1/+1
2022-07-02rudimentary admin api implementationstuebinm1-2/+17
2022-07-02gtfs realtime: add vehicle positionsstuebinm1-1/+2
(or at least something that looks like it might be correct — though it carries very little information, and lacks things like what the next stop along the route is)
2022-07-02more or less functional servicealerts for gtfs rtstuebinm1-62/+8
(kinda barebones, but the important things should be there)
2022-07-02gtfs realtime proof of conceptstuebinm1-1/+63
this adds a package for protobuf stuff, generated via hprotoc. Seems to work kinda fine? (the generated API is horrible though, will have to write some wrappers for that)
2022-06-27optional date parameter for the timetable endpointstuebinm1-4/+8
(mostly to make debugging easier, but also more generially useful i guess)
2022-06-16foreign keys are a thingstuebinm1-47/+19
(and they can be useful, too!) Also, documentation & deleting imports / extensions that aren't used.
2022-06-16actually use the databasestuebinm1-96/+103
(at least for a few simple things) Also, more modules!
2022-06-15add some persist stuffstuebinm1-22/+35
this doesn't yet actually use the database, but it's getting close to 3am and I should probably go to bed or something
2022-06-10generate OpenAPI docsstuebinm1-37/+69
lots of lenses in this stuff :(
2022-06-06restructure GTFS typesstuebinm1-8/+6
unfortunately doesn't quite get rid of all the type family still since it's just too useful … but does reduce it somewhat. Also, maps are much easier for looking things up than vectors!
2022-06-06better aeson genericsstuebinm1-2/+7
(template haskell doesn't work well with type families, unfortunately)
2022-06-05basic server setupstuebinm1-0/+96