# Open Chess &nbsp; [![Pipeline](https://gitlab.com/manzerbredes/ochess/badges/master/pipeline.svg)](https://gitlab.com/manzerbredes/ochess/pipelines) [![Pipeline](https://img.shields.io/badge/cmake-v3.10-blue)](https://cmake.org/download/) [![Pipeline](https://img.shields.io/badge/wxWidgets-v3.0.4-blue)](https://www.wxwidgets.org/)

![Screenshot](tools/assets/icons/screenshot.jpg)

## Features
 - PGNs files (*.si4* files not yet but soon!)
 - Handle heavy game files
 - Live chess engine analysis with *UCI* compliant chess engines
 - Intuitive game annotations
 - Simple database management system 

## Installation
Requires *CMake* and *wxWidgets*:

    > git clone https://gitlab.com/manzerbredes/ochess
    > cd ./ochess
    > git submodule init
    > git submodule update
    > mkdir ./build && cd ./build
    > cmake ../ && make

## Ongoing development
 - Add support for *.si4* file format
 - Improving user experience
 - Analyze and generate game reports
 - Many more features...

## Satellites projects
OChess is based on several satellite projects that implement individual and independant features:
 - [chessarbiter](https://gitlab.com/manzerbredes/chessarbiter): A chess game rule and board manager
 - [pgnp](https://gitlab.com/manzerbredes/pgnp): An efficient PGN parser
 - [uciadapter](https://gitlab.com/manzerbredes/uciadapter): A cross platform utility to interact with *UCI* chess engines
 - [cgeditor](https://gitlab.com/manzerbredes/cgeditor): A 2D chess game moves presenter/editor