├── .circleci └── config.yml ├── .gitignore ├── CHANGELOG.md ├── LICENSE ├── README.md ├── Setup.hs ├── app └── Main.hs ├── config └── app.dhall ├── default.nix ├── docs.png ├── exchange-rates.cabal ├── hie.yaml ├── icon.png ├── rates.nix ├── release.nix ├── shell.nix ├── src ├── Cache │ └── Redis.hs ├── Concurrency │ └── Counter.hs ├── Config.hs ├── Context.hs ├── Data │ └── Interface.hs ├── Domain │ ├── Currency.hs │ └── Model.hs ├── Http │ ├── Client │ │ └── Forex.hs │ ├── Handler.hs │ ├── Responses.hs │ └── Server.hs ├── Logger.hs ├── Service │ └── CachedForex.hs ├── Time.hs └── Utils.hs └── test ├── Main.hs └── Rates ├── CachedForexRST.hs ├── CachedForexTest.hs └── UtilsTest.hs /.circleci/config.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/.circleci/config.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/.gitignore -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/README.md -------------------------------------------------------------------------------- /Setup.hs: -------------------------------------------------------------------------------- 1 | import Distribution.Simple 2 | main = defaultMain 3 | -------------------------------------------------------------------------------- /app/Main.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/app/Main.hs -------------------------------------------------------------------------------- /config/app.dhall: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/config/app.dhall -------------------------------------------------------------------------------- /default.nix: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/default.nix -------------------------------------------------------------------------------- /docs.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/docs.png -------------------------------------------------------------------------------- /exchange-rates.cabal: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/exchange-rates.cabal -------------------------------------------------------------------------------- /hie.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/hie.yaml -------------------------------------------------------------------------------- /icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/icon.png -------------------------------------------------------------------------------- /rates.nix: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/rates.nix -------------------------------------------------------------------------------- /release.nix: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/release.nix -------------------------------------------------------------------------------- /shell.nix: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/shell.nix -------------------------------------------------------------------------------- /src/Cache/Redis.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/src/Cache/Redis.hs -------------------------------------------------------------------------------- /src/Concurrency/Counter.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/src/Concurrency/Counter.hs -------------------------------------------------------------------------------- /src/Config.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/src/Config.hs -------------------------------------------------------------------------------- /src/Context.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/src/Context.hs -------------------------------------------------------------------------------- /src/Data/Interface.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/src/Data/Interface.hs -------------------------------------------------------------------------------- /src/Domain/Currency.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/src/Domain/Currency.hs -------------------------------------------------------------------------------- /src/Domain/Model.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/src/Domain/Model.hs -------------------------------------------------------------------------------- /src/Http/Client/Forex.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/src/Http/Client/Forex.hs -------------------------------------------------------------------------------- /src/Http/Handler.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/src/Http/Handler.hs -------------------------------------------------------------------------------- /src/Http/Responses.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/src/Http/Responses.hs -------------------------------------------------------------------------------- /src/Http/Server.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/src/Http/Server.hs -------------------------------------------------------------------------------- /src/Logger.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/src/Logger.hs -------------------------------------------------------------------------------- /src/Service/CachedForex.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/src/Service/CachedForex.hs -------------------------------------------------------------------------------- /src/Time.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/src/Time.hs -------------------------------------------------------------------------------- /src/Utils.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/src/Utils.hs -------------------------------------------------------------------------------- /test/Main.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/test/Main.hs -------------------------------------------------------------------------------- /test/Rates/CachedForexRST.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/test/Rates/CachedForexRST.hs -------------------------------------------------------------------------------- /test/Rates/CachedForexTest.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/test/Rates/CachedForexTest.hs -------------------------------------------------------------------------------- /test/Rates/UtilsTest.hs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gvolpe/exchange-rates/HEAD/test/Rates/UtilsTest.hs --------------------------------------------------------------------------------