Skip to content

Latest commit

 

History

History
46 lines (37 loc) · 3.05 KB

CONTRIBUTING.md

File metadata and controls

46 lines (37 loc) · 3.05 KB

How to contribute to OSPL


First of all, thanks for being interested in contributing !
Let's help us to make this photo library the best open source solution !

Main guidelines

  • You should not go too fast
    We prepared milestones with progressive goals, and we prefer that everybody focuses on the current milestone.
  • Please follow the NORM.md We are following a code norm that you must follow in order to get your contribution accepted.
    Our norm is not very restrictive and aims to have a code that is coherent and readable to other contributors.
  • Your commit messages should be clear.
    We ask you to make clear and exhaustive commit messages.
    You should choose a clear title and then have a line for each change you made. Each line should be prefixed with the type of change you made like this : [ADD], [FIX], ...
  • We use git flow. Take a look at this article about git-flow
  • For build instructions see BUILD.md
  • We have a documentation that explains most of the functions behaviors here

Subprojects

There are multiple modules in the subproject folder, for now, there is the thumbnailer module, and the interface between sqlite (stockage) module. Theses two meant to be upgradable without modifying the main code of the library. For example, the thumbnailer has a generic thumbnail creation function that determines the image format and create automaticly the thumbnail. So adding a supported format shouldn't affect libospl

DB structure

Images are worth a million words so here is a diagram for the .db file. You can also look here for a maintained version There is also a .sql file at the root directory database structure

Milestones

You can look at the current milestones here

Big ideas

  • For all awesome ideas look at IDEAS.md

External libraries

We plan to use following external libraries for making all this working:

  • cwalk for managing paths on windows and unix
  • sqlite for storing data
  • libexif for extracting exif informations
  • epeg for fast jpeg thumbnail creation (wich uses libjpeg and libexif)
  • pngscale for png thumbnail creation
  • libimobiledevice for importing photos from iDevices
  • libraw for reading raw photos from cameras