From d276910f0dcb58819d19ffbfaaecfc90bd98d282 Mon Sep 17 00:00:00 2001 From: Erin Nova <55710109+23marabi@users.noreply.github.com> Date: Thu, 12 May 2022 14:24:45 +0000 Subject: [PATCH] Create design docs --- DESIGN.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 DESIGN.md diff --git a/DESIGN.md b/DESIGN.md new file mode 100644 index 0000000..ce0c748 --- /dev/null +++ b/DESIGN.md @@ -0,0 +1,13 @@ +# Design Docs + +## Frontend +Make sure to follow the [GNOME Human Interface Guidelines](https://developer.gnome.org/hig/). + +1. **Accessibility:** Software should be useable by everyone, this includes translations, screen reader support, streamlined UX, good contrast, and keyboard shortcuts, among other things. +2. **User Friendly:** Software should be simple for users to understand and navigate, even for non-technical users. It should never do anything without being explicitely specified by the user. + +## Backend +1. **Document:** Comment your code! Don't be overly descriptive with comments *everywhere*, but have verbose comments in necessary positions. Also, it would be nice to make blog posts or something about the process, any problems you encounter, etc. +2. **Format:** Use `cargo fmt` before you commit in order to keep a consistent code style. +3. **Organize:** Keep similar functions in different files, similar files in folders, etc. Separate functions to allow reuse. +4. **Simplify:** Keep it as simple and easy to understand as possible. Don't introduce new dependencies unless necessary, and try to pick more lightweight options. It should be able to run fine on even low end machines.