Skip to content

Commit 17cdf7a

Browse files
committed
docs: CONTRIBUTING.md part 1
1 parent 0cfb746 commit 17cdf7a

File tree

1 file changed

+250
-0
lines changed

1 file changed

+250
-0
lines changed

CONTRIBUTING.md

Lines changed: 250 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,250 @@
1+
# bijdragerichtlijnen
2+
3+
> _Voor het maken van een eigen CONTRIBUTING raadpleeg [ons artikel over CONTRIBUTING.md](https://developer.overheid.nl/kennisbank/algemeen/open-source/standaarden/contributing-md)_
4+
5+
## Introductie
6+
7+
Om te beginnen, hartelijk dank voor je interesse om bij te dragen aan een gezamenlijke Developer Portal voor de hele Nederlandse overheid! Door onze ervaringen te delen, helpen we anderen om beter onderbouwde keuzes te maken. Omdat wij willen voorkomen dat we standaarden of projecten uit specifieke organisaties een voorkeursbehandeling geven, ontvangen we graag thema's en documentatie van zoveel mogelijk organisaties binnen de overheid.
8+
9+
Software bouwen voor de overheid brengt specifieke uitdagingen met zich mee. Deze portal helpt je om te voldoen aan overheidspecifieke eisen, zoals securitystandaarden en toegankelijkheidsrichtlijnen. Daarnaast vind je hier informatie over beschikbare Open Source-projecten en hoe je deze kunt inzetten.
10+
11+
## Hoe je kunt bijdragen
12+
13+
Alle artikelen in onze kennisbank zijn geschreven in de `.md` of `.mdx` extensie en dus eenvoudig aan te passen.
14+
15+
- Door een onderwerp/ standaard aan te dragen waarover wij zouden moeten schrijven op onze kennisbank. Je doet dit door een [issue in te schieten](https://github.com/developer-overheid-nl/don-site/issues/new).
16+
- Door zelf een artikel bij te dragen. Je doet dit door een [fork te maken](https://github.com/developer-overheid-nl/don-site/fork) en deze vervolgens aan te bieden als [pull request](https://github.com/developer-overheid-nl/don-site/compare).
17+
- Door een API [toe te voegen](https://apis.developer.overheid.nl/apis/toevoegen) aan ons API register.
18+
- Door een git organisatieaccount [toe te voegen](https://oss.developer.overheid.nl/toevoegen/repository) aan ons OSS register.
19+
- Door vragen te stellen of je te mengen in discussies in ons [Slack kanaal](https://codefornl.slack.com/archives/CFV4B3XE2).
20+
- Bugs te melden. Je doet dit door een [issue in te schieten](https://github.com/developer-overheid-nl/don-site/issues/new).
21+
- Ideeën aan te dragen om ons design, UX of accessibility te verbeteren. Je doet dit door een [issue in te schieten](https://github.com/developer-overheid-nl/don-site/issues/new).
22+
23+
Door deze richtlijnen te volgen, communiceer je dat je de tijd respecteert van de ontwikkelaars die
24+
dit open source-project beheren en ontwikkelen. In ruil daarvoor moeten ze dat respect beantwoorden
25+
bij het aanpakken van uw melding, het beoordelen van wijzigingen en het helpen afronden van uw pull
26+
requests.
27+
28+
Houd een open geest! Het verbeteren van documentatie, melden van fouten, of bijdragen aandragen zijn
29+
voorbeelden van nuttige bijdragen. Veel informatie is mogelijk al ergens beschikbaar, waarschijnlijk
30+
in het Engels, en het verwijzen naar andere documentatie helpt ons allemaal. Helemaal als daar
31+
samenvattingen (of volledige) vertalingen van in het Nederlands toegevoegd worden (daar of in dit
32+
project)!
33+
34+
Mochten bijdragen niet voldoen aan deze richtlijnen dan houden wij ons de vrijheid om commentaren te
35+
negeren en bijdragen te sluiten. Daarbij zullen wij verwijzen naar deze richtlijnen / Contributing
36+
Guide.
37+
38+
> En als je het project leuk vindt, maar gewoon geen tijd hebt om bij te dragen, is dat prima. Er
39+
> zijn andere eenvoudige manieren om het project te steunen en je waardering te tonen, waar we ook
40+
> erg blij mee zijn:
41+
>
42+
> - Geef het project een ster
43+
> - Tweet erover
44+
> - Verwijs naar dit project in de readme van uw project
45+
> - Noem het project op lokale meetups en vertel het aan je vrienden/collega's
46+
47+
## Basis regels
48+
49+
### Gedragscode
50+
51+
Dit project en iedereen die eraan deelneemt, wordt bestuurd door de [OSPO-NL
52+
Gedragscode](CODE_OF_CONDUCT.md). Door deel te nemen, wordt van u verwacht dat u zich aan deze code
53+
houdt. Gelieve onaanvaardbaar gedrag te melden volgens de
54+
[Gedragscode#Handhaving](CODE_OF_CONDUCT.md#handhaving).
55+
56+
### Verwachtingen
57+
58+
Vrijwel alle content is beschreven in Markdown. Daarbij maken wij gebruik van MkDocs Material om
59+
alle documentatie te publiceren. Bij gebruik van plaatjes is het fijn als de bron daarvan ook
60+
onderdeel is van dit project ... en bij voorkeur in een open formaat. Dat betekent dat deze
61+
aangepast en bijgewerkt kunnen worden zonder kosten te maken voor tools. Nogmaals: bij voorkeur.
62+
63+
- Zorg dat bijdragen cross-platform uitwisselbaar zijn: Windows, Mac, Linux.
64+
- Zorg dat code en documentatie compleet is en voldoet aan de [styleguides](#styleguides).
65+
- Maak issues aan voor elke grote wijziging en verbetering die je graag wilt maken. Bespreek de
66+
dingen transparant en vraag community feedback.
67+
- Probeer bijdragen compact en klein te houden; dat draagt bij aan het behoud van overzicht en
68+
wijzigingen.
69+
- Wees open naar nieuwe mensen en moedig nieuwe bijdragen aan van alle achtergronden.
70+
- Issues behoren van een passend label te zijn voorzien:
71+
- `Bug` betekent een urgent probleem in de community of in de documentatie
72+
- `Enhancement` betekent een bijdrage voor uitbreiding
73+
- `Question` betekent een vraag
74+
75+
## Ik heb een vraag
76+
77+
> Als je een vraag wilt stellen, gaan we ervan uit dat je de beschikbare
78+
> [documentatie](https://ospo-nl.github.io/kennisbank/) hebt gelezen.
79+
80+
Voordat je een vraag stelt, kun je het beste zoeken naar bestaande
81+
[issues](https://github.com/ospo-nl/kennisbank/issues) die je kunnen helpen. Als u een geschikt
82+
probleem hebt gevonden en nog steeds verduidelijking nodig heeft, kunt u uw vraag in dit nummer
83+
schrijven. Het is ook raadzaam om eerst op internet naar antwoorden te zoeken.
84+
85+
Als je dan toch de behoefte voelt om een vraag te stellen en verduidelijking nodig hebt, raden we
86+
het volgende aan:
87+
88+
- Open een [issue](https://github.com/ospo-nl/kennisbank/issues/new).
89+
- Geef het issue een passend label (zie [verwachtingen](#verwachtingen)).
90+
- Geef zoveel mogelijk context over waar je tegenaan loopt.
91+
- Indien van toepassing: Lever technische afhankelijkheden die relevant lijken.
92+
93+
We zullen het probleem dan zo snel mogelijk in behandeling nemen.
94+
95+
## Ik wil bijdragen
96+
97+
> **Juridische mededeling**
98+
>
99+
> Wanneer u bijdraagt aan dit project, moet u ermee instemmen dat u 100% van de inhoud hebt
100+
> geschreven, dat u over de benodigde rechten op de inhoud beschikt en dat de inhoud die u bijdraagt
101+
> onder de projectlicentie mag worden geleverd.
102+
103+
### Issues melden
104+
105+
#### Voordat u een issue indient
106+
107+
Een goed issue zou er niet voor moeten zorgen dat anderen u moeten achtervolgen voor meer
108+
informatie. Daarom vragen we u om dit zorgvuldig te onderzoeken, informatie te verzamelen en het
109+
probleem in detail te beschrijven in uw melding.
110+
111+
- Zorg ervoor dat u de nieuwste versie gebruikt.
112+
- Lees de [documentatie](https://ospo-nl.github.io/kennisbank/) aandachtig door en ontdek of de
113+
functionaliteit al wordt gedekt, misschien door een individuele configuratie.
114+
- Voer een [zoekopdracht](https://github.com/ospo-nl/kennisbank/issues) uit om te zien of de
115+
verbetering al is voorgesteld. Als dit het geval is, voeg dan een opmerking toe aan de bestaande
116+
uitgave in plaats van een nieuwe te openen.
117+
118+
Voor dit moment is er alleen documentatie en zijn verdere voorbereidingen niet nodig. Mocht er ooit
119+
tools en software componenten opgeleverd worden, dan is het van belang om de details daarvan ook
120+
duidelijk te melden en te onderzoeken of het daadwerkelijk een probleem met die software is of dat
121+
het wellicht toch een fout in uw omgeving is.
122+
123+
#### Hoe dien ik een goed issue in?
124+
125+
> U mag beveiligingsgerelateerde problemen, kwetsbaarheden of issues, inclusief gevoelige
126+
> informatie, nooit melden aan de issue tracker of elders in het openbaar. In plaats daarvan moeten
127+
> gevoelige bugs per e-mail naar <TODO> worden gestuurd.
128+
129+
We gebruiken GitHub-problemen om issue en fouten op te sporen. Als u een probleem met het project
130+
tegenkomt:
131+
132+
- Open een [issue](https://github.com/ospo-nl/kennisbank/issues/new). (Omdat we op dit moment niet
133+
zeker weten of het een fout is of niet, vragen we je om nog niet over een fout te praten en het
134+
probleem niet te labelen.)
135+
- Leg zo duidelijk mogelijk uit wat u verwacht of wens en geef suggesties voor invulling daarvan.
136+
- Geef de informatie op die u in het vorige gedeelte hebt verzameld.
137+
138+
Zodra het is ingediend:
139+
140+
- Het projectteam zal het probleem dienovereenkomstig labelen.
141+
- Een teamlid zal proberen het issue te begrijpen en op te volgen.
142+
143+
#### Meer hulp
144+
145+
Hier zijn een paar vriendelijke (maar Engelse) handleidingen voor meer hulp en achtergronden: [First
146+
Timers Only](http://www.firsttimersonly.com/) en [Make A Pull Request](http://makeapullrequest.com/)
147+
148+
### Verbeteringen voorstellen
149+
150+
Deze sectie begeleidt u bij het indienen van een verbeteringssuggestie voor OSPO-NL, **inclusief
151+
volledig nieuwe functies en kleine verbeteringen aan bestaande functionaliteit**. Door deze
152+
richtlijnen te volgen, kunnen beheerders en de community uw suggestie begrijpen en gerelateerde
153+
suggesties vinden.
154+
155+
#### Voordat u een verbetering indient
156+
157+
- Zorg ervoor dat u de nieuwste versie gebruikt.
158+
- Lees de [documentatie](https://ospo-nl.github.io/kennisbank/) aandachtig door en ontdek of de
159+
functionaliteit al wordt gedekt, misschien door een individuele configuratie.
160+
- Voer een [zoekopdracht](https://github.com/ospo-nl/kennisbank/issues) uit om te zien of de
161+
verbetering al is voorgesteld. Als dit het geval is, voeg dan een opmerking toe aan de bestaande
162+
uitgave in plaats van een nieuwe te openen.
163+
- Ga na of uw idee past binnen de reikwijdte en doelstellingen van het project. Het is aan u om een
164+
sterk pleidooi te houden om de ontwikkelaars van het project te overtuigen van de voordelen van
165+
deze functie. Houd er rekening mee dat we functies willen die nuttig zijn voor de meerderheid van
166+
onze gebruikers en niet slechts voor een kleine subgroep. Als u zich slechts op een minderheid van
167+
gebruikers richt, overweeg dan om een bibliotheek met add-ons/plug-ins te schrijven.
168+
169+
#### Hoe dien ik een goede verbeteringssuggestie in?
170+
171+
Suggesties voor verbeteringen worden bijgehouden als [GitHub
172+
issues](https://github.com/ospo-nl/kennisbank/issues).
173+
174+
- Gebruik een **duidelijke en beschrijvende titel** voor het probleem om de suggestie te
175+
identificeren.
176+
- Geef een stapsgewijze beschrijving van de voorgestelde verbetering met zoveel mogelijk details.
177+
- Beschrijf het huidige gedrag en leg uit welk gedrag je in plaats daarvan verwachtte te zien en
178+
waarom. Op dit punt kunt u ook zien welke alternatieven niet voor u werken.
179+
- Misschien wilt u schermafbeeldingen en geanimeerde GIF's toevoegen die u helpen de stappen te
180+
demonstreren of aan te geven op welk onderdeel de suggestie betrekking heeft. U kunt deze tool
181+
gebruiken om GIF's op macOS en Windows op te nemen, en deze tool of deze tool op Linux.
182+
- Leg uit waarom deze verbetering nuttig zou zijn voor de meeste gebruikers van OSPO-NL. Misschien
183+
wil je ook wijzen op de andere projecten die het beter hebben opgelost en die als inspiratie
184+
kunnen dienen.
185+
186+
## Review proces
187+
188+
Om wijzigingen goed te kunnen beheren, volgen en uit te leggen, volgen we een eenvoudig proces van
189+
review en Pull Requests (PRs).
190+
191+
- Wijzigingen wordt nooit direct op de `main` branch gedaan, maar altijd in een 'feature' branch.
192+
- Maak een Pull Request aan zodra je klaar bent. Of maak gelijk een Draft Pull Request aan nadat u
193+
uw feature branch hebt aangemaakt. Zodra uw wijzigingen klaar zijn voor review, wijzigt u uw Draft
194+
PR naar 'Ready for Review'.
195+
- Een teamlid reviewt de wijzigingen in het Pull Request en geeft commentaar en/of goedkeuring
196+
(Approve).
197+
- Na goedkeuring kan het Pull Request gemerged worden. Hiervoor wordt standaard 'Squash & Merge'
198+
gebruikt. In geval dat de PR door een teamlid is ingediend, reviewt een ander teamlid de PR maar
199+
wordt de merge overgelaten aan de auteur van de PR.
200+
- Na de merge dienen bijbehorende issues bijgewerkt te worden zodat deze niet onnodig open blijven
201+
staan ofwel beantwoord worden.
202+
203+
## Styleguides
204+
205+
### Markdown
206+
207+
Alle documentatie moet 'machine-readable' zijn en tegelijk ook makkelijk leesbaar en onderhoudbaar
208+
voor mensen. Daarom maken we gebruik van **Markdown**. Zie ook [GitHub
209+
Markdown](https://docs.github.com/en/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax)
210+
en de algemene [Markdown handleiding](https://www.markdownguide.org/basic-syntax/) (EN) (of zelfs de
211+
originele [documentatie](https://daringfireball.net/projects/markdown/syntax)). De documentatie van
212+
het gebruikte [Material for MkDocs](https://squidfunk.github.io/mkdocs-material/reference/) thema
213+
benoemt de opmaak die extra wordt ondersteunt door het thema.
214+
215+
Alinea's worden op of binnen **100 karakters** afgekapt om versiebeheer per regel beheersbaar te
216+
maken. Dit kan automatisch worden afgedwongen in tooling, bijv. [Rewrap in
217+
VSCode](https://stkb.github.io/Rewrap/) (keyboard shortcut: `alt+Q`).
218+
219+
### Bestandsnamen
220+
221+
Alle bestandsnamen, zowel van bestanden (files) als van mappen (folders), komen terug in de URL van
222+
de gepubliceerde documentatie ... en spaties zijn niet zo standaard voor URLs. Daarom worden er GEEN
223+
spaties gebruikt in bestandsnamen. Deze worden vervangen door `_`, underscores. In het genereren van
224+
de documentatie worden deze netjes vervangen door spaties zodat de layout er wel mooi en netjes uit
225+
ziet! :muscle:
226+
227+
### Regeleinden
228+
Er zijn meerdere manieren om regeleinden (Engels: line endings) te codificeren in bestanden. Voor
229+
dit project horen die `LF` te zijn, zoals gebruikelijk voor de meeste projecten. Hiermee is
230+
gegarandeerd dat op Linux, Windows en Mac OSX bestanden op dezelfde wijze worden gepresenteerd en
231+
Pull Requests gemakkelijk zijn. Lokaal uitchecken met CRLF (in Windows) en commits met LF is
232+
uiteraard toegestaan .. als het resultaat maar met LF in GitHub terecht komt :smile:
233+
234+
Zie ook [Blog: Mind the End of Your
235+
Line](https://adaptivepatchwork.com/2012/03/01/mind-the-end-of-your-line/) en [GitHub Help on Line
236+
Endings](https://docs.github.com/en/get-started/getting-started-with-git/configuring-git-to-handle-line-endings).
237+
238+
## Community
239+
240+
De OSPO-NL Community is nog in oprichting. Voor dit moment zijn er nog geen officiële kanalen en
241+
samenwerkingsverbanden anders dan actief betrokken personen. Zie ook meer in de [over
242+
ons](https://ospo-nl.github.io/kennisbank/Over_ons).
243+
244+
## Attribution
245+
246+
Een eigen CONTRIBUTING maken is niet echt moeilijk ... en toch ook weer wel. Inspiratie voor deze
247+
variant komt van een
248+
[template](https://github.com/nayafia/contributing-template/blob/HEAD/CONTRIBUTING-template.md) en
249+
**contributing-gen**. [Genereer zelf](https://github.com/bttger/contributing-gen) (incl. CODE OF
250+
CONDUCT) !

0 commit comments

Comments
 (0)