t-cal
TCal
A calendar of planned service disruptions on MBTA rapid transit, provided as a web page and an iCal feed. See the live site at: https://tcal.digitalcora.net
Setup
- Install Crystal
shards install
asdf install
may also be used, but is not recommended, since this doesn't install any of the system-level packages Crystal depends on.
Development
- Run the server:
crystal src/main.cr
- Generate docs:
crystal docs
(then opendocs/index.html
) - Lint the code:
bin/ameba
Production
To build a standalone binary bin/server
:
shards build --production --release --static
The current production instance runs on Fly, using the fly.toml
included in the repo.
Configuration
The server supports these environment variables:
-
HOST
— The network address to listen on. Default value is127.0.0.1
, meaning the server will only be accessible from localhost. Use0.0.0.0
to listen on all addresses. -
PORT
— The TCP port to listen on. Default value is8080
. -
ORIGIN
— The canonical origin (scheme + host + optional port) of the site. When a request includes aHost
and it is not the canonical origin's host, it will be redirected to the same path at the canonical origin. Default value ishttp://localhost
plus the configuredPORT
. -
LOG_LEVEL
— The log level. Default value isinfo
. See theLog
documentation for valid log levels. -
SENTRY_DSN
— If set, unhandled exceptions and other useful data will be reported to Sentry. -
SENTRY_ENVIRONMENT
— The environment string used for Sentry reports, if enabled. Default value isdefault
.
t-cal
- 4
- 0
- 5
- 0
- 4
- 2 months ago
- January 11, 2020
MIT License
Thu, 21 Nov 2024 21:37:42 GMT