Drafting guidelines page

emgineering 2021-04-10 12:00:23 -06:00
parent 08469d22d5
commit e8c87de10b

@ -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