mirror of
https://github.com/olivierkes/manuskript.git
synced 2024-06-02 11:04:33 +12:00
Drafting guidelines page
parent
08469d22d5
commit
e8c87de10b
38
Contributing-guidelines-for-developers.md
Normal file
38
Contributing-guidelines-for-developers.md
Normal file
|
@ -0,0 +1,38 @@
|
|||
## This page is a draft.
|
||||
|
||||
Please review these guidelines before submitting a PR, to make the maintainers' jobs easier:
|
||||
|
||||
***(!) From the wiki homepage; some of these may be outdated.***
|
||||
|
||||
* Manuskript is written in Python3 and PyQt5
|
||||
* All code changes and Pull Requests should be based on the **develop** branch.
|
||||
* The minimum target screen resolution is 1024x600 (was popular with small laptops / netbooks)
|
||||
* We strive to conform to Qt guidelines. E.g.: [User Interface Text Guidelines](https://doc-snapshots.qt.io/qtcreator-extending/qtcreator-ui-text.html) ***Link broken!***
|
||||
* Tip: Add `--console` as last option on command line to use [IPython Jupyter QT Console as a debugging aid](https://github.com/olivierkes/manuskript/pull/513).
|
||||
* _**DRAFT**_
|
||||
We _try_ to ensure that Manuskript will run on currently supported Operating Systems with [Qt integration](https://stackoverflow.com/questions/12805036/qicon-fromtheme-not-displaying-icon-in-pyqt). This includes several GNU/Linux distributions, in addition to recent versions of proprietary Windows and macOS X.
|
||||
OSes we often use in our testing include: [Debian](https://en.wikipedia.org/wiki/Debian), [Fedora](https://en.wikipedia.org/wiki/Fedora_%28operating_system%29), [Ubuntu](https://en.wikipedia.org/wiki/Ubuntu), and [Windows](https://en.wikipedia.org/wiki/Microsoft_Windows).
|
||||
No promise of support is provided. See also [GNU General Public License](https://www.gnu.org/licenses/gpl-3.0.en.html).
|
||||
* [[Roadmap]] contains some potential future plans.
|
||||
|
||||
___New___
|
||||
|
||||
### Code Style
|
||||
* The codebase mostly follows [PEP8](https://www.python.org/dev/peps/pep-0008/).
|
||||
|
||||
### Documentation
|
||||
* (In-code documentation)
|
||||
* If you add or change a feature, please update the end-user docs or request for someone in the community to do so.
|
||||
|
||||
### Logging
|
||||
Avoid using `print()` statements in the code, which will be seen by end users. All logging should be done through the python `logging` module as follows:
|
||||
```
|
||||
import logging
|
||||
LOGGER = logging.getLogger(__name__)
|
||||
|
||||
# Inside your code
|
||||
LOGGER.warning("This is my warning message.")
|
||||
```
|
||||
See [here](https://docs.python.org/3/library/logging.html) for more on the logging module and the different message levels.
|
||||
|
||||
### UI
|
Loading…
Reference in a new issue