Files
pairgoth/README.md
2023-06-13 15:26:08 +02:00

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.