OpenTabletDriver / OpenTabletDriver/opentabletdriver.github.io
Make a contribution guide
Open
Nobody has claimed this yet.
enhancement
meta
- Dominant language
- HTML
- Stars
- 36
- Forks
- 10
- Avg merge
- 12h 32m
- Merged PRs (30d)
- 9
Description
Should cover things like:
- Image optimization BEFORE commit
- https://imageoptim.com/versions.html or similar
- This is to avoid making a
git clonebe needlessly large. Committing one version and then later committing an optimized version still ends up with both versions in the git repo. Rewrite your commits to fix this (git rebase -i origin/mainand follow instructions)
- Image usage
<picture>preferring webp with png fallback?
- Suggest the contributor to read the Jekyll docs: https://jekyllrb.com/docs/ but also write the guide assuming contributors have not read this thoroughly, for now.
- Referencing other files (using
{% link %}etc)- It's a compile-time file check, basically
- Site structure
- What goes where and what's what
/assets/: generic site assets/_sections/: pages that get their title assigned to the website root, e.g./_sections/blarg.mdwithtitle: Testin front matter getshttp://site/Testas permalink, but try to keep file name (and casing) consistent with the title used./_wiki/: uses the path of the file as permalink and defaults to thewikipagelayout, e.g._wiki/Install/Linux.mdbecomeshttps://site/Install/Linux- Generic Jekyll files:
/_config.yml: main Jekyll config, see Configuration | Jekyll/index.md: frontpage content, see front matter for which layout is used/404.html: the 404 (page not found) page used/Gemfile(andGemfile.lock): ruby files used by rubygems andbundler, see Ruby(?) docs.
- Generic folders:
/_data/: data accessible via{{ site.data }}, see Data Files | Jekyll/_includes/: files used in{% include <file> %}statements, see Includes | Jekyll/_layouts/: files used for layouts, inheritance is heavily used here, see Layouts | Jekyll/_site/: Contains the processed/built site. Should never be in VCS/git.vendor: Your local ruby files. Should never be in VCS/git.
- What happens in different folders (
collectionsarray in/_config.ymltells us most of that) - Detail usage of
/_layouts- also mention that wiki collections (
/_wikifiles) always use thewikipagelayout, anything else uses thedefaultlayout, and inheritance is used (e.g. layoutwikipagedefiningdefaultas its layout, which replaces{{ content }}indefaultwithwikipagecontents) (link to Jekyll docs for layouts)
- also mention that wiki collections (
- What goes where and what's what
- Target browsers (Chrome and Firefox, both on Mobile and Desktop - if Chrome works most things should work)
- Usage of JavaScript
- Keep to a minimum, but if you have to use it, always consider noscript/no-JS users - at the very least, have a scriptless fallback.
Additions welcome
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing _config.yml, the _layouts, _sections, and _wiki directories, then consult the linked Jekyll documentation. The contribution guide should explain repository structure, image handling, file references, layouts, supported browsers, and JavaScript fallbacks as described in the issue.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- html, javascript, jekyll, ruby
- Domain
- documentation
- Issue type
- Documentation
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100