Skip to content

tombettany/mercury

Repository files navigation

Introduction

CodeFactor

Mercury provides a cross-platform base layer for configuring the system.

Etymology

"Why Mercury?" I hear you say. Primarily because Mercury was the Roman god of boundaries, communication and travel which aligns with this project's main goals:

  • Boundaries: Project Mercury will form the boundary between hardware and what a consumer wants to do, abstracting away platform-specifics.
  • Communication: Project Mercury provides a translation abstraction layer between the consumers and the base hardware, regardless of what that may be.
  • Travel: Project Mercury is designed to be cross-platform from the beginning, allowing the same apps to be delivered across multiple different platforms by providing the base abstraction upon which all functionality can be leveraged.

Additionally, Project Mercury was the first United States human spaceflight program and likewise this is our first foray into colonising other planets (well, hardware).

Finally, Mercury is an element known to send people mad when they inhale too much of the fumes: hopefully not a sign of things to come with this project.

Getting Started

The technologies which are used in this project are:

c++11
cmake
conan
cpplint
doxygen
googletest
lcov
make
qt
sphinx

Install the tools

OS X

pip3 install -r requirements-dev.txt
brew install cmake doxygen lcov qt

Linux

pip3 install -r requirements-dev.txt
apt-get install cmake doxygen lcov qt

Building and running

Build

make

CMake (3.10.0 minimum to allow us to use some of the newer goodies) is used to build both the project and the tests.

Test

make test

Tests are written with Google Test. Conan will handle installing all the dependencies here. Coverage reports are generated with lcov and a report can be found in coverage/index.html after running the tests.

Lint

make lint

C++ linting is performed by the CppLint tool. The configuration is in the CPPLINT.cfg file.

Automatic checking of the linting is performed by CodeFactor for your convenience.

Documentation

make docs

The base documentation files can be found in the docs/source directory.

C++ code is marked up with Doxygen.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published