74 lines
3.0 KiB
Markdown
74 lines
3.0 KiB
Markdown
# Pairgoth engine
|
|
|
|
## Sources structure
|
|
|
|
```
|
|
.
|
|
├── pairgoth.properties.example ............... Executable property file to instanciate
|
|
├── standalone.sh ............................. Executable run script, linux
|
|
├── standalone.bat............................. Executable run script, windows
|
|
├── server.sh.................................. Server debugging script, linux
|
|
├── client.sh.................................. Web client debugging script, linux
|
|
├── test.sh ................................... Executable test script, linux
|
|
├── application ............................... Executable final packaging
|
|
├── webserver ................................. Web container
|
|
├── docker .................................... Docker packaging
|
|
│ ├── pairgoth.properties.example ........... Docker property file to instanciate
|
|
│ └── run.sh ................................ Docker launch script
|
|
└── api-webapp ................................ Engine web application
|
|
└── src
|
|
├── main
|
|
│ ├── kotlin ........................ Engine kotlin sources (the real meat is here!)
|
|
│ └── webapp ........................ Engine API webapp root
|
|
│ └── WEB-INF ................... Engine API webapp configuration
|
|
└── test
|
|
└── kotlin ........................ Engine webapp API unit tests
|
|
└── view-webapp ............................... Web interface
|
|
```
|
|
|
|
## API Webapp sources structure
|
|
|
|
```
|
|
api-webapp/src/main/kotlin/org/jeudego/pairgoth
|
|
├── api .................................... API handlers
|
|
├── ext .................................... External: import/export features
|
|
├── model .................................. Domain logic model
|
|
├── pairing ................................ Pairing solvers
|
|
├── store .................................. Persistence handlers
|
|
├── util ................................... Various utilities
|
|
└── web .................................... Web interface
|
|
```
|
|
|
|
Tests are located in `webapp/src/test/kotlin`
|
|
|
|
## Building and running
|
|
|
|
### Executable
|
|
|
|
You need maven installed.
|
|
|
|
Copy and adapt `pairgoth.properties.example` towards `pairgoth.properties`, if needed. Otherwise pairgoth will use default properties (TODO - list them)
|
|
|
|
Just running `./standalone.sh` or `./standalone.bat` shoud build and run the engine and the view webapps.
|
|
|
|
### Docker
|
|
|
|
*docker container is not maintained for now - TODO*
|
|
|
|
Under windows, please use the WSL.
|
|
|
|
You need docker installed, and the current user being in the `docker` group.
|
|
|
|
Copy and adapt `docker/pairgoth.properties.example` towards `docker/pairgoth.properties`.
|
|
|
|
Just running `./run.sh` in the `docker` directory should build and run the engine.
|
|
|
|
## Debugging
|
|
|
|
The `./server.sh` will launch the server in debugging mode, with a remote debugger socket on port 5005.
|
|
|
|
The `./client.sh` will launch the web client in debugging mode, with a remote debugger socket on port 5006.
|
|
|
|
|
|
|