https://github.com/matsubara0507/anaqram-server
Score Ranking Server for AnaQRam with Haskell Servant
https://github.com/matsubara0507/anaqram-server
elm haskell haskell-application haskell-servant
Last synced: 9 months ago
JSON representation
Score Ranking Server for AnaQRam with Haskell Servant
- Host: GitHub
- URL: https://github.com/matsubara0507/anaqram-server
- Owner: matsubara0507
- License: mit
- Created: 2017-10-15T08:22:51.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2019-10-13T15:32:18.000Z (over 6 years ago)
- Last Synced: 2025-07-14T18:44:11.159Z (12 months ago)
- Topics: elm, haskell, haskell-application, haskell-servant
- Language: Elm
- Size: 83 KB
- Stars: 2
- Watchers: 3
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# AnaQRam with backend
AnaQRam is simple puzzle web game with Haskell Servant.
## AnaQRam
anagram puzzle + QR code
- anagram text is blank (`?`) before start
- display character by decode QR code
- and then resolve anagram after display all characters
## Dependency
- [Elm](http://elm-lang.org): Frontend Programming Language, alt JS
- [SQLite](https://www.sqlite.org): Backend DB
### Haskell packages
- [Servent](https://hackage.haskell.org/package/servant): Web framework for Backend
- [Persistent](https://hackage.haskell.org/package/persistent): package for database
- [elmap.hs](https://github.com/matsubara0507/elmap.hs): Generate Elm source code automatically from Haskell types
and more, refer [package.yaml](https://github.com/matsubara0507/anaqram-server/blob/master/package.yaml).
## Build
use Docker
```
$ make image --tag=anaqram
```
## Usage
use Docker
```
$ docker run --rm anaqram server --help
server [options] [input-file]
-h --help Show this help text
--version Show version
-v --verbose Enable verbose mode: verbosity level "debug"
--migrate Migrate SQLite
```
first, migrate SQLite
```
$ docker run --rm \
-v path/to/.anaqram-server.yaml:/work/.anaqram-server.yaml \
-v path/to/anaqram.sqlite:/work/anaqram.sqlite \
anaqram server --migrate
```
run application
```
$ docker run --rm \
-p 8080:8080 \
-v path/to/.anaqram-server.yaml:/work/.anaqram-server.yaml \
-v path/to/anaqram.sqlite:/work/anaqram.sqlite \
anaqram server
```
access `localhost:8080`.