Skip to content
forked from mbta/concentrate

Concentrate: combine realtime transit files

License

Notifications You must be signed in to change notification settings

e-lo/concentrate

 
 

Repository files navigation

Concentrate

Elixir CI

Concentrate combines realtime transit information from multiple sources into single output files.

Configuration

Concentrate can either be configured via config/config.exs or a JSON environment variable as CONCENTRATE_JSON: more details are available in configuration.md.

Architecture

See architecture.md for the overall architecture of the system.

Development Setup

# after installing asdf from https://github.com/asdf-vm/asdf..
asdf install

# get Elixir dependencies
mix deps.get

# add pre-commit hook to verify formatting/tests/types
ln -s ../../hooks/pre-commit .git/hooks/pre-commit

# make sure everything passes! (slowest to fastest)
mix format --check-formatted
mix credo
mix test
mix dialyzer

Docker

Concentrate comes with a Dockerfile, allowing you to build an image that can be run anywhere Docker works. It's a multi-stage build, so it requires at least Docker 17.05.

# build
docker build -t concentrate:latest .

# run
docker run concentrate:latest

About

Concentrate: combine realtime transit files

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Elixir 51.3%
  • Erlang 47.5%
  • Other 1.2%