- Elm 99.9%
| dist | ||
| docs/assets/images/sponsors | ||
| LICENSES | ||
| src | ||
| CHANGELOG.md | ||
| elm-watch.json | ||
| elm-watch.json.license | ||
| elm.json | ||
| elm.json.license | ||
| README.md | ||
| shell.nix | ||
DMARCaroni
Email dates back over fifty years, but it is still one of the most widely used internet technologies. It is used for many official types of communication, but also for example for mission critical functions like resetting passwords, activating accounts and sending invoices.
Email is on the inside of our processes and our behavioural patterns. After a period where many organisations were outsourcing their critical email infrastructure as if it didn't matter, in recent times there is a renewed interest in running such core infrastructure in-house. This makes a lot of sense, because involving a third party email provider implicitly means sharing a flood of (often sensitive) information about ones customers, business partners, investors, staff (and their relatives), students, citizens etc.
From a security, commercial, societal and privacy perspective it isn't just the confidentiality of emails themselves we should be concerned about. On top of the traditional email stack meanwhile another layer of infrastucture has been put in place to combat spam, phishing and spoofing of email. This layer levers standards like SPF, DKIM and DMARC - standards set by the Internet Engineering Task Force.
What was lacking until now was reliable free and open source software to properly manage the resulting information flows. This is what DMARCaroni delivers: a set of tools for processing DMARC reports and turning the wealth of information into actionable overviews and reports. DMARCaroni is written in Haskell, Rust and Elm. This repository concerns the Elm client, there is also a engine component.
Build the DMARCaroni Elm Client
Compile from source files
Download the tarball or ZIP file containing this repository, or for more flexibility clone the repository containing all the source files.
$ git clone https://git.disroot.org/lnrs/dmarcaroni-client
Or if you have an account on this server:
$ git clone git@git.disroot.org:lnrs/dmarcaroni-client
Then install Elm for your platform, or (when using Nix) conveniently type:
$ nix-shell
Once Elm is installed we can compile to JavaScript:
$ elm make --output="dist/main.js" src/Main.elm
Or if you want to work yourself with the Elm code, run both elm-watch and elm reactor in two separate shells:
$ npx elm-watch hot
$ elm reactor --port=8002
Run DMARCaroni Elm Client
The client depends on data produced by the DMARCaroni Haskell Server. If you haven't done so already, configure and run the engine. Then open the index.html file in your browser to analyze your aggregated DMARC data.
Sponsors
The ongoing development of DMARCaroni is made possible with the support of its backers. If you'd like to help, please get in touch.
DMARCaroni would especially like to acknowledge the generous support from SIDN Fonds, ProcoliX and Vietsch Foundation.
|
|
|
|