Skip to content
automatic acceptance & tabulation system for amateur radio contests
JavaScript HTML Scala Other
Branch: master
Clone or download

Latest commit

Fetching latest commit…
Cannot retrieve the latest commit at this time.


Type Name Latest commit message Commit time
Failed to load latest commit information.

ATS-4: Web System for Amateur-Radio Contests

image image image image image

ATS-4 is an Automatic Acceptance & Tabulation System for Amateur-Radio Contests. ATS-4 consists of two components, namely, the web system (ATS-4) and qxsl: Amateur-Radio Logging Library & LISP.


  • ATS-4 provides a web interface for contest-log acceptance.
  • ATS-4 scans the log and verifies its contents according to the contest rule described in LISP forms.


ATS-4 was originally developed for ALLJA1 contest. Feel free to visit ALLJA1 ATS-4, but never submit a dummy log.


Setup & Start

First, clone this repository:

$ git clone
$ cd ats4

Open the configuration file as follows:

$ alias emacs='vim'
$ vim conf/application.conf

You will find the mail settings as below:

# Typesafe Mailer Plugin

Modify the mail settings properly. In addition, disable the mock mode of the mailer plugin.

# If you want to send mail actually:

Do not forget to update the rule URL:

# Do not include the scheme as http://host/path

The time has come! Clear your mind and cast a spell!

$ sbt "start -Dhttp.port=8000"

Just wait and relax. After a period of time, you will find the following message:

(Starting server. Type Ctrl+D to exit logs, the server will remain in background)

Then, type Ctrl+D and exit. Browse the system on port 8000. If you would like to run it in the development mode:

$ sbt run

Good luck!


First, kill the process which is running the system:

$ kill `cat target/universal/stage/RUNNING_PID`

Then, delete the file.

$ rm target/universal/stage/RUNNING_PID

Demo Mode

By default, ATS-4 operates in demo mode, which is helpful for rehearsal submission. Do not forget to disable the mode and clear the database by the day of the contest:

$ sed -i -e 's/ats4.demo=true/ats4.demo=false/g' conf/application.conf

To clear the database, run the following command, and then restart the system.

$ ./

Reverse Proxy

We expect that ATS-4 operates as a backend server, which is hidden behind a frontend server such as Apache and Nginx. Make sure that unauthorized clients have no access to admin pages under /admin before you start the system.


Feel free to contact @nextzlog on Twitter.





  • This program is free software; you can redistribute it and / or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.

  • This program is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchant ability or fitness for a particular purpose. See the GNU General Public License for more details.

  • You should have received a copy of the GNU General Public License, along with this program. If not, see

You can’t perform that action at this time.