Git Product home page Git Product logo

cpp-things's Introduction

Cpp-Things

linux make
C++ useful things
Random codes me and other contributors do, and may be used in other projects.

Contributing

Trhough the things there are some //TODO to do. (Or not) If something new wants to be added the next constrains must be taken into consideration.

Coding

* All functions are camelCased and self documented with an example of use.
* All classes/structs are PropertyCased and self documented with an example of use.
* All functions/classes should be under P23 namespace (PetaCreepers23Utils -> P23U too long -> P23)

File Naming

* If the file contains non templated code, it should be .hpp extension.
* If the file contains only templated code, it should be .h extension.
* No .cpp files allowed, I restrict this for easy include and compile.
* If the file contains utility about a thing, it should be name utilityThing.*
* If the file contains only one class for a task it should be named classTask.*
  • The testing file inside test should be named [Thing|Task]-test.cpp

Testing

* All functionality and templates should be tested.
* The testing should be on the tests folder, using google test as the testing suite.
* Unit testing all functionality is recommended. At least the example case of use should be done.
* See the naming for the test files in the naming section.

Continuous Integration

* CI Workflows are setup using GitHub Actions in .github/workflows.
  • For every new feature added, updated on the build system should be done to keep CI flowing.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.