mirror of
https://github.com/HenkKalkwater/harbour-sailfin.git
synced 2025-09-04 09:42:45 +00:00
docs: Add Doxygen and project-related documentation
This commit is contained in:
parent
c5541b0b16
commit
720a1ed5ff
14 changed files with 3186 additions and 1 deletions
77
core/doc/contributing.md
Normal file
77
core/doc/contributing.md
Normal file
|
@ -0,0 +1,77 @@
|
|||
\page contributing Contributing
|
||||
\brief All resources for (potential) contributors
|
||||
|
||||
This page should contain all resources for people who'd like to contribute to the project.
|
||||
If that happens to be you, thank you for considering to contribute to this project!
|
||||
This page will describe how the process goes, what code style this project uses and more useful information.
|
||||
|
||||
# Development process
|
||||
Development happens at [GitHub](https://github.com/heartfin/harbour-sailfin).
|
||||
Currently, both the library Jellyfin-Qt and the [Sailfish OS](https://sailfishos.org) app named Sailfin are developed in the same repository.
|
||||
|
||||
## Create or find an issue to work on
|
||||
If you want to contribute code, please check if an issue exists.
|
||||
Otherwise, create an issue describing what feature you'd like to develop before creating a merge request.
|
||||
|
||||
## Start working on your code
|
||||
Clone the git repo and create a new branch.
|
||||
If you have commit access to the repository, please create a branch in the form of `<issue-number>-<issue-title>`.
|
||||
For example, `36-control-remote-jellyfin-sessions`.
|
||||
|
||||
Now you can start writing your code and create commits.
|
||||
Please create focussed commits, that is, do not commit anything not related to the issue you are working on.
|
||||
Also state what you're changing in the commit message and add an entry in the file `rpm/harbour-sailfin.changes`.
|
||||
|
||||
If this is your first time contributing to the project, don't be shy and feel free to add your name to the contributors list in `sailfish/qml/pages/AboutPage.qml`!
|
||||
|
||||
## Submit a merge request
|
||||
Now that you have finalised your commit, you can create a merge request on the repository.
|
||||
Make sure that you have followed the contribution guidelines on this page.
|
||||
Someone will review it and if all is good, they will merge it in.
|
||||
|
||||
Congratulations on your contribution!
|
||||
|
||||
# Code style guidelines
|
||||
The code should follow the [Sailfish OS Code Conventions](https://docs.sailfishos.org/Develop/Apps/Coding_Conventions/) with the following exceptions:
|
||||
|
||||
## Exceptions for C++
|
||||
- Put curly braces on the same line as the declaration, example:
|
||||
```cpp
|
||||
int foo() {
|
||||
// implementation
|
||||
}
|
||||
```
|
||||
instead of
|
||||
```cpp
|
||||
int foo()
|
||||
{
|
||||
// implementation
|
||||
}
|
||||
```
|
||||
Rationale: I hate pressing enter and am used to the former. Moreover, it is already all over the place. Bad rationale, I know.
|
||||
|
||||
- Close namespace brackets with a comment in the form `// NS Jellyfin`, example:
|
||||
```cpp
|
||||
namespace Jellyfin {
|
||||
namespace Nested {
|
||||
// Content
|
||||
} // NS Nested
|
||||
} // NS Jellyfin
|
||||
```
|
||||
Rationale: Easy to know what namespace the bracket closes, since namespaces tend to span over large portions of a file.
|
||||
|
||||
- Use include guards in the form of `NAMESPACE_CLASSNAME_H`. Example:
|
||||
```cpp
|
||||
#ifndef JELLYFIN_MODEL_USER_H
|
||||
#define JELLYFIN_MODEL_USER_H
|
||||
namespace Jellyfin {
|
||||
namespace Model {
|
||||
|
||||
class User {
|
||||
// Methods etc
|
||||
};
|
||||
|
||||
} // NS Model
|
||||
} // NS Jellyfin
|
||||
```
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue