generated from nhcarrigan/template
feat: rewrite all documentation (#4)
Closes #3 Reviewed-on: https://codeberg.org/nhcarrigan/docs/pulls/4 Co-authored-by: Naomi Carrigan <commits@nhcarrigan.com> Co-committed-by: Naomi Carrigan <commits@nhcarrigan.com>
This commit is contained in:
parent
a356ffb402
commit
77a888b6bd
@ -11,43 +11,29 @@
|
||||
- [Software License](/license)
|
||||
- [Code of Conduct](/coc)
|
||||
- [Contributing](/contributing)
|
||||
- [Contributor Covenant](/covenant)
|
||||
- [Privacy Policy](/privacy)
|
||||
- [Security Policy](/security)
|
||||
- [Terms of Service](/terms)
|
||||
- [DMCA Requests](/dmca)
|
||||
|
||||
---
|
||||
|
||||
- [Community Guidelines](/community/guide)
|
||||
- [Issue/PR Labels](/community/labels)
|
||||
- [Appeal a Mod Action](/community/appeal)
|
||||
- [Appeal a Sanction](/community/appeal)
|
||||
- [Security Hall of Fame](/community/hall-of-fame)
|
||||
|
||||
---
|
||||
|
||||
- [Art for Palestine Bot](/projects/art-for-palestine-bot/index)
|
||||
- [Privacy Policy](/projects/art-for-palestine-bot/privacy)
|
||||
- [Self Hosting](/projects/art-for-palestine-bot/self-hosting)
|
||||
- [Azuliah Bot](/projects/azuliah-bot/index)
|
||||
- [Privacy Policy](/projects/azuliah-bot/privacy)
|
||||
- [Self Hosting](/projects/azuliah-bot/self-hosting)
|
||||
- [Deepgram Bot](/projects/deepgram/index)
|
||||
- [Privacy Policy](/projects/deepgram/privacy)
|
||||
- [Self Hosting](/projects/deepgram/self-hosting)
|
||||
- [Usage](/projects/deepgram/usage)
|
||||
- [Discord Birthday Bot](/projects/discord-birthday-bot/index)
|
||||
- [Privacy Policy](/projects/discord-birthday-bot/privacy)
|
||||
- [Self Hosting](/projects/discord-birthday-bot/self-hosting)
|
||||
- [Discord Boost Monitor](/projects/discord-boost-monitor/index)
|
||||
- [Privacy Policy](/projects/discord-boost-monitor/privacy)
|
||||
- [Self Hosting](/projects/discord-boost-monitor/self-hosting)
|
||||
- [Discord Verification Bot](/projects/discord-verification-bot/index)
|
||||
- [Privacy Policy](/projects/discord-verification-bot/privacy)
|
||||
- [Usage](/projects/discord-verification-bot/usage)
|
||||
- [Security Bot](/projects/security-bot/index)
|
||||
- [Privacy Policy](/projects/security-bot/privacy)
|
||||
- [Usage](/projects/security-bot/usage)
|
||||
- [We Love Hacktoberfest](/projects/we-love-hacktoberfest/index)
|
||||
- [Contributing](/projects/we-love-hacktoberfest/contributing)
|
||||
- [Privacy Policy](/projects/we-love-hacktoberfest/privacy)
|
||||
- [Self Hosting](/projects/we-love-hacktoberfest/self-hosting)
|
||||
|
||||
---
|
||||
|
490
docs/coc.md
490
docs/coc.md
@ -1,114 +1,474 @@
|
||||
# Code of Conduct
|
||||
|
||||
> [!TIP]
|
||||
> We expect all interactions with our projects, community, and platforms to follow this Code of Conduct.
|
||||
**Effective 7 July 2024**
|
||||
|
||||
> [!NOTE]
|
||||
> "Our community" refers to our Discord server, GitHub accounts, and any other platform on which members can interact with each other. "Community leaders" refers to our staff team, including moderators, developers, support staff, and administrators.
|
||||
## 1. Definitions
|
||||
|
||||
> [!DANGER]
|
||||
> Due to the heavy nature of topics discussed in our community, and to ensure the comfort of all of our members, participants must be 18 years or older to interact with us.
|
||||
> Exceptions are made for the professional platforms listed on [our contact page](/contact)
|
||||
### 1.1. "Our Community"
|
||||
|
||||
We are dedicated to providing a safe and harassment-free experience for everyone. We do not tolerate harassment of participants in any form.
|
||||
Encompasses all platforms and spaces, both digital and physical, where members interact under our organization's auspices. This includes, but is not limited to:
|
||||
|
||||
Members must be at least 18 years of age to participate in our community.
|
||||
- Our official Discord server
|
||||
- Our code repositories and associated accounts
|
||||
- Our official social media accounts and pages
|
||||
- Any other online forums or platforms we officially endorse or manage
|
||||
- In-person events organized or sponsored by our organization
|
||||
|
||||
## Scope
|
||||
### 1.2. "Community Members"
|
||||
|
||||
This code of conduct applies to all of our community spaces, including public channels, private channels and direct messages, both online and off. This code of conduct also applies to non-community spaces when a community member is involved. If you are being harassed by a member of our community outside our spaces, we want to know about it. We will take all good-faith reports of harassment by our community members, especially community leaders, seriously. This includes harassment outside our spaces and harassment that took place at any point in time. Community leaders reserve the right to exclude people from our community based on their past behaviour, including behaviour outside our community spaces and behaviour towards people who are not in our community.
|
||||
Refers to all individuals who participate in Our Community, regardless of their role or level of engagement. This includes casual users, regular contributors, and community leaders.
|
||||
|
||||
## Rules
|
||||
### 1.3. "Community Leaders"
|
||||
|
||||
- No trolling or insulting/derogatory comments.
|
||||
- No harassment, whether public or private.
|
||||
- No questioning or challenging someone’s stated self-identity or chosen labels, even if they conflict with your views. For example, discussions about bi vs pan, trans vs trans\*, or whether grey/demisexual people are asexual, even if well-intentioned.
|
||||
- No incitement of violence towards any individual, including encouraging a person to commit suicide or to engage in self-harm.
|
||||
- No deliberate “outing” of any aspect of a person’s identity without their consent except as necessary to protect vulnerable people from intentional abuse. This includes physical or electronic addresses, legal names, etc.
|
||||
- No publication of non-harassing private communication, without explicit consent from all parties.
|
||||
- No advocating for members to be banned, except in direct messages, or private discussions with community leaders.
|
||||
- No unwelcome comments regarding a person’s lifestyle choices and practices, including those related to food, health, parenting, relationships, drugs, and employment.
|
||||
- No explicit sexual images or behaviour.
|
||||
- No offensive comments related to gender, gender identity and expression, sexual orientation, disability, mental illness, neuro(a)typicality, physical appearance, body size, age, race, national origin, ethnic origin, nationality, immigration status, language, religion or lack thereof, or other identity marker.
|
||||
- No use or abuse of “Reverse”-isms, including “reverse racism,” “reverse sexism,” and “cisphobia” against marginalized members. “Reverse”-isms and any concepts that uphold and bulwark white and privileged supremacies out of the context of challenging it will be shut down.
|
||||
- No debating the rights and lived experiences of marginalized people in the community.
|
||||
- No racist, sexist, cissexist, ableist or otherwise oppressive behaviour is allowed, casual or explicit. This includes any harmful language, behaviour, or action toward people of colour, trans folks, disabled and other marginalized identities in our community. These are violations of the Code of Conduct.
|
||||
- No use of slurs or hateful terminology.
|
||||
Refers to individuals with official responsibilities within Our Community, including but not limited to:
|
||||
|
||||
- Moderators
|
||||
- Developers
|
||||
- Support staff
|
||||
- Administrators
|
||||
- Project managers
|
||||
- Event organizers
|
||||
|
||||
### 1.4. "Code of Conduct" or "CoC"
|
||||
|
||||
Refers to this document in its entirety, including all sections, subsections, and any future amendments.
|
||||
|
||||
### 1.5. "Violating the Code of Conduct"
|
||||
|
||||
Means engaging in behavior that contradicts the guidelines, rules, and principles outlined in this document.
|
||||
|
||||
### 1.6. "Reporting"
|
||||
|
||||
Refers to the act of bringing a potential Code of Conduct violation to the attention of Community Leaders through officially designated channels.
|
||||
|
||||
### 1.7. "Sanctions"
|
||||
|
||||
Refers to the consequences imposed on community members who violate the Code of Conduct, as determined by Community Leaders.
|
||||
|
||||
### 1.8. "Platforms"
|
||||
|
||||
Refers to any digital or physical space where Our Community interacts, as listed in section 1.1.
|
||||
|
||||
## 2. Scope
|
||||
|
||||
### 2.1. Applicability
|
||||
|
||||
This Code of Conduct applies to all interactions within Our Community, including but not limited to:
|
||||
|
||||
- Public channels and forums
|
||||
- Private channels and direct messages
|
||||
- Online and offline community spaces
|
||||
- Community-organized events and meetups
|
||||
- Any form of communication using our official platforms or branding
|
||||
|
||||
### 2.2. Extended Scope
|
||||
|
||||
The Code of Conduct may also apply to interactions outside Our Community when:
|
||||
|
||||
- A Community Member is involved in an incident affecting another Community Member
|
||||
- The incident has a substantial impact on the well-being or participation of Community Members
|
||||
- The behavior significantly affects the reputation or integrity of Our Community
|
||||
|
||||
### 2.3. Temporal Scope
|
||||
|
||||
This Code of Conduct applies to:
|
||||
|
||||
- Current interactions within Our Community
|
||||
- Past behavior of Community Members, including actions prior to joining Our Community
|
||||
- Ongoing patterns of behavior that may have started before joining Our Community
|
||||
|
||||
### 2.4. Reporting
|
||||
|
||||
We encourage reporting of any violations of this Code of Conduct, including:
|
||||
|
||||
- Harassment by Community Members, especially Community Leaders
|
||||
- Incidents that occur outside Our Community spaces
|
||||
- Past incidents, regardless of when they took place
|
||||
|
||||
### 2.5. Commitment to Action
|
||||
|
||||
Community Leaders commit to:
|
||||
|
||||
- Take all good-faith reports seriously
|
||||
- Respect the privacy and security of reporters
|
||||
- Conduct fair and thorough investigations of reported incidents
|
||||
- Take appropriate action based on the findings of investigations
|
||||
|
||||
### 2.6. Exclusion Rights
|
||||
|
||||
Community Leaders reserve the right to exclude individuals from Our Community based on:
|
||||
|
||||
- Violations of this Code of Conduct
|
||||
- Past behavior, including actions outside Our Community spaces
|
||||
- Behavior towards individuals who are not members of Our Community
|
||||
- Any conduct deemed detrimental to the safety, well-being, or positive environment of Our Community
|
||||
|
||||
### 2.7. Scope of Authority
|
||||
|
||||
While this Code of Conduct primarily governs behavior within Our Community, we recognize that actions outside our spaces can significantly impact our environment. Therefore, Community Leaders may consider external behaviors when making decisions about community participation.
|
||||
|
||||
### 2.8. Amendments
|
||||
|
||||
The scope of this Code of Conduct may be amended as necessary to address emerging concerns or changing circumstances within Our Community. Any changes will be clearly communicated to all Community Members.
|
||||
|
||||
## 3. Rules and Prohibited Conduct
|
||||
|
||||
### 3.1. General Conduct
|
||||
|
||||
- No trolling, insulting, or derogatory comments.
|
||||
- No harassment, whether public or private (see section 3.2 for detailed definition).
|
||||
- No incitement of violence towards any individual, including encouraging suicide or self-harm.
|
||||
- No deliberate "outing" of any aspect of a person's identity without their consent, except to protect vulnerable individuals from intentional abuse.
|
||||
- No publication of non-harassing private communication without explicit consent from all parties involved.
|
||||
- No advocating for members to be banned, except in direct messages to or private discussions with community leaders.
|
||||
- No spam or excessive self-promotion.
|
||||
|
||||
### Harassment
|
||||
### 3.2. Harassment
|
||||
|
||||
Harassment includes:
|
||||
Harassment includes, but is not limited to:
|
||||
|
||||
- Deliberate misgendering or use of “dead” or rejected names
|
||||
- Physical contact and simulated physical contact (eg, textual descriptions like “hug” or “backrub”) without consent or after a request to stop
|
||||
- Threats of violence
|
||||
- Deliberate intimidation
|
||||
- Deliberate misgendering or use of rejected names
|
||||
- Unwanted physical contact or simulated physical contact without consent
|
||||
- Threats of violence or intimidation
|
||||
- Stalking or following
|
||||
- Unwanted photography or recording, including logging online activity for harassment purposes
|
||||
- Unwelcome sexual attention
|
||||
- Pattern of inappropriate social contact, such as requesting/assuming inappropriate levels of intimacy with others
|
||||
- Pattern of inappropriate social contact, such as requesting/assuming inappropriate levels of intimacy
|
||||
- Continued one-on-one communication after requests to cease
|
||||
- Targeted and deliberate aggression.
|
||||
- Targeted and deliberate aggression
|
||||
- Sustained disruption of discussion or community events
|
||||
|
||||
## No AI
|
||||
### 3.3. Respect for Identity and Diversity
|
||||
|
||||
We firmly believe in the rights of creators and the importance of their work. Because AI models are oft trained on data scraped from the internet, or acquired through shady and vague terms of service, content generated or modified by AI is not permitted within our community.
|
||||
- No questioning or challenging someone's stated self-identity or chosen labels.
|
||||
- No unwelcome comments regarding a person's lifestyle choices and practices, including those related to food, health, parenting, relationships, drugs, and employment.
|
||||
- No offensive comments related to gender, gender identity and expression, sexual orientation, disability, mental illness, neurodiversity, physical appearance, body size, age, race, national origin, ethnic origin, nationality, immigration status, language, religion or lack thereof, or other identity markers.
|
||||
- No use or promotion of "reverse"-isms, including "reverse racism," "reverse sexism," and "cisphobia" against marginalized members.
|
||||
- No debating the rights and lived experiences of marginalized people in the community.
|
||||
- No racist, sexist, cissexist, ableist, or otherwise oppressive behavior, whether casual or explicit.
|
||||
|
||||
Exceptions may be made in specific cases where you can evidence that the model was trained only on consensually given data. Such exceptions must be requested from Naomi **before** sharing the content within any of our community spaces.
|
||||
### 3.4. Content and Communication
|
||||
|
||||
## Reporting
|
||||
- No explicit sexual images or behavior.
|
||||
- No use of slurs or hateful terminology.
|
||||
- Content warnings should be used when discussing potentially triggering topics.
|
||||
|
||||
If you see a violation or have any other concerns, please contact our community leaders by typing `@Moderator` in our Discord server, or contact a leader directly via DM. If the violator is on our staff team, they will recuse themselves from handling your incident and will be investigated further by the rest of the team. We will respond as promptly as we can.
|
||||
### 3.5. Intellectual Property and Privacy
|
||||
|
||||
To protect our volunteers from abuse and burnout, we reserve the right to reject any report we believe to have been made in bad faith. Reports intended to silence legitimate criticism may be deleted without response.
|
||||
- Respect copyright and intellectual property rights.
|
||||
- Do not share personal information of others without their explicit consent.
|
||||
|
||||
We will respect confidentiality requests for the purpose of protecting victims of abuse. At our discretion, we may publicly name a person about whom we’ve received harassment complaints, or privately warn third parties about them, if we believe that doing so will increase the safety of our community members or the general public. We will not name harassment victims without their affirmative consent.
|
||||
### 3.6. Community Discussions and Debates
|
||||
|
||||
## Consequences
|
||||
- Engage in respectful and constructive dialogue.
|
||||
- Be open to learning from others' perspectives.
|
||||
- Avoid derailing discussions or intentionally inflaming tensions.
|
||||
|
||||
Participants asked to stop any harmful behaviour are expected to comply immediately.
|
||||
### 3.7. Reporting and Enforcement
|
||||
|
||||
If a participant engages in harmful behaviour, community leaders may take any action they deem appropriate, up to and including expulsion from all of our community spaces and identification of the participant as a harasser to other community members or the general public.
|
||||
- Report violations of this Code of Conduct to community leaders promptly.
|
||||
- Cooperate with community leaders during investigations of reported incidents.
|
||||
- Respect the privacy of individuals involved in reports and investigations.
|
||||
|
||||
All community leaders are obligated to respect the privacy and security of the reporter of any incident.
|
||||
### 3.8. Compliance with Platform-Specific Rules
|
||||
|
||||
## Enforcement
|
||||
- Adhere to the terms of service and community guidelines of any platforms used by Our Community.
|
||||
- Be aware that certain behaviors may violate platform rules even if not explicitly mentioned in this Code of Conduct.
|
||||
|
||||
Community leaders have the right and responsibility to remove, edit, or reject chat messages, comments, commits, code, issues, and other contributions that are not aligned with this Code of Conduct. By adopting this Code of Conduct, the community leaders commit themselves to fairly and consistently applying these principles to every aspect of managing this project. Community leaders who do not follow or enforce the Code of Conduct may be permanently removed from the project team.
|
||||
### 3.9. Amendments and Interpretations
|
||||
|
||||
Community leaders will follow these Community Impact Guidelines in determining the consequences for any action they deem in violation of this Code of Conduct:
|
||||
- These rules may be amended or expanded as necessary to address emerging issues.
|
||||
- Community leaders reserve the right to interpret these rules and make decisions in cases where the application of rules may be unclear.
|
||||
|
||||
### 1. Reminder
|
||||
## 4. Reporting and Response Procedures
|
||||
|
||||
**Example Behaviour**: Use of inappropriate language or other behaviour deemed unprofessional or unwelcome in the community.
|
||||
### 4.1. Reporting Methods
|
||||
|
||||
**Consequence**: A public, written reminder from community leaders, providing clarity around the nature of the violation and an explanation of why the behaviour was inappropriate. A public apology may be requested.
|
||||
- In Discord: Type @Moderator in any channel to alert community leaders.
|
||||
- Direct Message: Contact a community leader directly via private message.
|
||||
- Email: contact@nhcarrigan.com
|
||||
|
||||
### 2. Warning
|
||||
### 4.2. Information to Include in Reports
|
||||
|
||||
**Example Behaviour**: A violation through a single incident or series of actions.
|
||||
- Your contact information (unless reporting anonymously)
|
||||
- Names or descriptions of individuals involved
|
||||
- Description of the incident, including date, time, and location (online or physical)
|
||||
- Any relevant screenshots, chat logs, or other evidence
|
||||
- Any additional context you believe is important
|
||||
|
||||
**Consequence**: A warning with consequences for continued behaviour. Warnings are logged in our staff records for future review.
|
||||
### 4.3. Handling of Reports
|
||||
|
||||
### 3. Temporary Removal
|
||||
- We will respond to all reports as promptly as possible.
|
||||
- If a reported violator is on our staff team, they will be immediately recused from handling the incident.
|
||||
- All reports will be handled with discretion and confidentiality to the extent possible.
|
||||
|
||||
**Example Behaviour**: A serious violation of community standards, including sustained inappropriate behaviour.
|
||||
### 4.4. Confidentiality and Privacy
|
||||
|
||||
**Consequence**: A temporary removal (on Discord, a kick) from our communities. Members will be permitted to rejoin at their discretion, but are **highly** encouraged to re-read this document and solidify their understanding of our community expectations.
|
||||
- We will respect confidentiality requests, especially to protect victims of abuse.
|
||||
- Anonymous reporting options are available, though they may limit our ability to investigate.
|
||||
|
||||
### 4. Permanent Ban
|
||||
### 4.5. Public Statements and Warnings
|
||||
|
||||
**Example Behaviour**: Demonstrating a pattern of violation of community standards, including sustained inappropriate behaviour, harassment of an individual, or aggression toward or disparagement of classes of individuals.
|
||||
- At our discretion, we may publicly name a person about whom we've received harassment complaints.
|
||||
- We may privately warn third parties about individuals if we believe it will increase community safety.
|
||||
- We will not name harassment victims without their explicit, affirmative consent.
|
||||
|
||||
**Consequence**: A permanent ban from all of our community platforms.
|
||||
### 4.6. False Reports and Abuse of Process
|
||||
|
||||
## Moderation Logs
|
||||
- We reserve the right to reject reports we believe to have been made in bad faith.
|
||||
- Reports intended to silence legitimate criticism may be dismissed without response.
|
||||
- Deliberately false reporting is a violation of this Code of Conduct and may result in sanctions.
|
||||
|
||||
Our community platforms are meant to belong to all members of our community. Our moderation team are trusted with tools to help keep the community spaces safe, but they are still accountable to the community members.
|
||||
### 4.7. Protection of Reporters and Victims
|
||||
|
||||
As such, **all moderation actions** across **all platforms** are publicly logged in our `#moderation-log` channel in the [Discord community](https://chat.nhcarrigan.com).
|
||||
- We will take all reasonable steps to protect reporters and victims from retaliation.
|
||||
- Retaliation against reporters or victims is a serious violation of this Code of Conduct.
|
||||
|
||||
## Attribution
|
||||
### 4.8. Investigation Process
|
||||
|
||||
This Code of Conduct is adapted from the [Contributor Covenant](https://www.contributor-covenant.org/version/2/1/code_of_conduct.html), version 2.1 and the [LGBTQ in Tech Code of Conduct](https://lgbtq.technology/coc.html)
|
||||
- We will conduct a thorough and impartial investigation of all reports.
|
||||
- Investigations will be conducted as quickly as possible while ensuring thoroughness.
|
||||
- All parties involved will be given an opportunity to present their perspective.
|
||||
|
||||
### 4.9. Outcomes and Appeals
|
||||
|
||||
- After investigation, we will determine appropriate actions based on the evidence.
|
||||
- We will communicate outcomes to involved parties as appropriate, respecting privacy concerns.
|
||||
- An appeals process will be available for individuals who believe a decision was made in error.
|
||||
|
||||
### 4.10. Continuous Improvement
|
||||
|
||||
- We will regularly review our reporting and response procedures to ensure their effectiveness.
|
||||
- Feedback on these procedures is welcome and will be considered for future improvements.
|
||||
|
||||
### 4.11. Support for Community Leaders
|
||||
|
||||
- We recognize the potential for burnout among our volunteer moderators and leaders.
|
||||
- We will provide support and resources to our community leaders to help them manage their responsibilities effectively.
|
||||
|
||||
## 5. Sanctions and Enforcement
|
||||
|
||||
### 5.1. General Principles
|
||||
|
||||
- Participants must immediately comply when asked to stop any harmful behavior.
|
||||
- Community leaders may take any appropriate action in response to harmful behavior.
|
||||
- All sanctions will be applied fairly, consistently, and proportionally to the violation.
|
||||
|
||||
### 5.2. Authority of Community Leaders
|
||||
|
||||
- Community leaders have the right and responsibility to remove, edit, or reject contributions not aligned with this Code of Conduct.
|
||||
- Leaders commit to applying these principles fairly and consistently in all aspects of community management.
|
||||
- Leaders who fail to follow or enforce the Code of Conduct may be permanently removed from their position.
|
||||
|
||||
### 5.3. Privacy and Security
|
||||
|
||||
- All community leaders are obligated to respect the privacy and security of incident reporters.
|
||||
- Information about sanctions will be shared on a need-to-know basis.
|
||||
|
||||
### 5.4. Gradated Sanction System
|
||||
|
||||
Community leaders will follow these Community Impact Guidelines in determining consequences:
|
||||
|
||||
#### 5.4.1. Level 1: Reminder
|
||||
|
||||
- Example Behavior: Use of inappropriate language or other behavior deemed unprofessional or unwelcome.
|
||||
- Consequences:
|
||||
- A public, written reminder from community leaders
|
||||
- Clarification of the violation and why the behavior was inappropriate
|
||||
- A public apology may be requested
|
||||
|
||||
#### 5.4.2. Level 2: Warning
|
||||
|
||||
- Example Behavior: A violation through a single incident or series of actions.
|
||||
- Consequences:
|
||||
- A formal warning
|
||||
- Clear communication of consequences for continued behavior
|
||||
- Incident is logged for future reference
|
||||
|
||||
#### 5.4.3. Level 3: Temporary Removal
|
||||
|
||||
- Example Behavior: A serious violation of community standards or sustained inappropriate behavior.
|
||||
- Consequences:
|
||||
- Temporary removal from community platforms (e.g., Discord kick)
|
||||
- Clear conditions for return, including a cooling-off period
|
||||
- Requirement to re-read and acknowledge the Code of Conduct before rejoining
|
||||
|
||||
#### 5.4.4. Level 4: Permanent Ban
|
||||
|
||||
- Example Behavior: Pattern of violations, sustained inappropriate behavior, harassment, or aggression towards individuals or groups.
|
||||
- Consequences:
|
||||
- Permanent ban from all community platforms
|
||||
- Public statement may be made, if deemed necessary for community safety
|
||||
|
||||
### 5.5. Additional Sanction Considerations
|
||||
|
||||
- Repeated violations will generally result in escalating sanctions.
|
||||
- The severity of the violation may warrant skipping levels in the sanction system.
|
||||
- Community leaders may impose additional requirements, such as public apologies or community service, as conditions for continued participation.
|
||||
|
||||
### 5.6. Appeals Process
|
||||
|
||||
- Individuals may appeal sanctions by [completing the form](/community/appeal)
|
||||
- Appeals will be reviewed by leaders not involved in the original decision.
|
||||
- During the appeal, the original sanction remains in effect.
|
||||
|
||||
### 5.7. Documentation and Transparency
|
||||
|
||||
- All formal sanctions will be publicised for review and consistency.
|
||||
- Aggregate data on Code of Conduct violations and sanctions may be published periodically to ensure transparency.
|
||||
|
||||
### 5.8. Rehabilitation and Education
|
||||
|
||||
- Where appropriate, we will provide resources and support for individuals to learn from their mistakes and improve their behavior.
|
||||
- For less severe violations, completion of educational programs may be offered as an alternative or supplement to other sanctions.
|
||||
|
||||
### 5.9. Legal Implications
|
||||
|
||||
- In cases of illegal activity, appropriate legal authorities may be notified.
|
||||
- Our sanctions do not preclude or replace any legal action that may be warranted.
|
||||
|
||||
### 5.10. Regular Review
|
||||
|
||||
- This sanction system will be reviewed periodically to ensure its effectiveness and fairness.
|
||||
- Community feedback on the sanction system is welcome and will be considered in reviews.
|
||||
|
||||
## 6. Moderation Logs and Transparency
|
||||
|
||||
### 6.1. Purpose of Moderation Logs
|
||||
|
||||
- To ensure transparency in moderation sanctions
|
||||
- To maintain accountability of the moderation team to community members
|
||||
- To provide a clear record of enforcement of the Code of Conduct
|
||||
|
||||
### 6.2. Scope of Logged Actions
|
||||
|
||||
- All moderation sanctions across all community platforms will be logged
|
||||
- This includes, but is not limited to:
|
||||
- Warnings issued
|
||||
- Temporary removals or suspensions
|
||||
- Permanent bans
|
||||
- Appeals and their outcomes
|
||||
|
||||
### 6.3. Location of Moderation Logs
|
||||
|
||||
- All moderation sanctions will be publicly logged in the `#mod-logs` channel in our Discord community
|
||||
- The log will be accessible to all community members
|
||||
|
||||
### 6.4. Information Included in Logs
|
||||
|
||||
- Date and time of the action
|
||||
- Type of action taken
|
||||
- Reason for the action
|
||||
- Platform where the violation occurred
|
||||
- Identifier of the user who received the action
|
||||
- Identifier of the leader who performed the action
|
||||
- Any relevant evidence
|
||||
|
||||
### 6.5. Privacy Considerations
|
||||
|
||||
- In cases where privacy is crucial (e.g., harassment reports), certain details may be omitted or generalized
|
||||
|
||||
### 6.6. Accessibility of Logs
|
||||
|
||||
- The moderation log channel will be read-only for regular community members
|
||||
- Community members can request clarification on logged sanctions through appropriate channels
|
||||
|
||||
### 6.7. Retention of Logs
|
||||
|
||||
- Moderation logs will be retained for a period of no less than 1 year.
|
||||
- After this period, logs may be archived or summarized for long-term record-keeping
|
||||
|
||||
### 6.8. Audit and Review
|
||||
|
||||
- Moderation logs will be periodically reviewed by community leadership to ensure consistency and fairness in enforcement
|
||||
- Annual reports summarizing moderation actions may be published to the community
|
||||
|
||||
### 6.9. Dispute Resolution
|
||||
|
||||
- If a community member believes a moderation action was taken in error, they can refer to the logs and follow the appeals process outlined in the Sanctions section
|
||||
|
||||
### 6.10. Moderator Accountability
|
||||
|
||||
- Patterns of biased or inconsistent moderation will be addressed by community leadership
|
||||
- Moderators who consistently fail to log their actions may have their privileges revoked
|
||||
|
||||
### 6.11. Feedback and Improvement
|
||||
|
||||
- Community members are encouraged to provide feedback on the moderation log system
|
||||
- The logging process will be reviewed periodically and may be adjusted to better serve the community's needs
|
||||
|
||||
## 7. Advertising and Promotion
|
||||
|
||||
### 7.1. General Prohibition
|
||||
|
||||
- Advertising and self-promotion are generally not permitted within our community spaces.
|
||||
- This includes, but is not limited to, unsolicited promotion of products, services, websites, social media accounts, or other communities.
|
||||
|
||||
### 7.2. Exceptions
|
||||
|
||||
- Links or information expressly requested by our team for support or moderation purposes.
|
||||
- Sharing of resources directly relevant to ongoing discussions, when done in good faith and not for commercial gain.
|
||||
- Official announcements or promotions approved by community leadership.
|
||||
|
||||
### 7.3. Support and Moderation Contexts
|
||||
|
||||
- Community members may be asked to provide links or information to assist with support inquiries or moderation investigations.
|
||||
- In these cases, sharing such information is permitted and encouraged.
|
||||
|
||||
### 7.4. Relevance and Context
|
||||
|
||||
- Any shared links or information must be directly relevant to the current discussion or inquiry.
|
||||
- The relevance and appropriateness of shared content will be at the discretion of community leaders.
|
||||
|
||||
### 7.5. Disclosure of Affiliations
|
||||
|
||||
- If sharing information about a product or service with which you have a personal or professional affiliation, this affiliation must be clearly disclosed.
|
||||
|
||||
### 7.6. Consequences of Violation
|
||||
|
||||
- Violations of this policy will be treated as a breach of the Code of Conduct.
|
||||
- Consequences may range from content removal to temporary or permanent bans, depending on the severity and frequency of violations.
|
||||
|
||||
### 7.7. Appeals and Clarifications
|
||||
|
||||
- If you are unsure whether specific content would be considered advertising, consult with a community leader before posting.
|
||||
- If your content is removed under this policy, you may appeal the decision through the established channels outlined in the Sanctions section.
|
||||
|
||||
## 8. Languages
|
||||
|
||||
### 8.1. Official Language
|
||||
|
||||
- The official language of our community is English.
|
||||
- All community interactions, discussions, and contributions should be in English.
|
||||
|
||||
### 8.2. Scope of English-Only Policy
|
||||
|
||||
- This policy applies to all community spaces, including but not limited to:
|
||||
- Discord channels
|
||||
- GitHub discussions and issues
|
||||
- Documentation
|
||||
- Official communication channels
|
||||
|
||||
### 8.3. Multilingual Applications
|
||||
|
||||
- Even if our applications or services are offered in multiple languages, community discussions about them must be conducted in English.
|
||||
|
||||
### 8.4. Rationale
|
||||
|
||||
- To ensure clear communication among all community members.
|
||||
- To facilitate effective moderation and support.
|
||||
- To maintain consistency across all community platforms.
|
||||
|
||||
### 8.5. Exceptions
|
||||
|
||||
- Specific channels or sections designated for other languages, if explicitly created and approved by community leadership.
|
||||
- Brief translations to assist non-native English speakers, when immediately followed by an English translation.
|
||||
|
||||
### 8.6. Support for Non-Native Speakers
|
||||
|
||||
- We encourage patience and understanding towards non-native English speakers.
|
||||
- Community members are encouraged to help clarify or rephrase messages if there's a language barrier, while maintaining English as the primary language.
|
||||
|
||||
### 8.7. Translation Tools
|
||||
|
||||
- While automatic translation tools may be used personally, the original English content should be included in all community interactions.
|
||||
|
@ -1,19 +1,34 @@
|
||||
# Appealing A Moderator Decision
|
||||
# Appealing a Sanction
|
||||
|
||||
Our moderators do not take punitive action (such as kicks, bans, etc.) lightly. However, misunderstandings do happen and everyone makes mistakes.
|
||||
**Effective 7 July 2024**
|
||||
|
||||
If you feel that you were restricted from our community unfairly, you can reach out to Naomi to discuss the decision.
|
||||
Our moderators exercise careful discretion when implementing disciplinary measures (including but not limited to temporary suspensions, permanent bans, or other access restrictions). However, we acknowledge that misunderstandings or errors may occasionally occur.
|
||||
|
||||
## Preparing for Your Appeal
|
||||
If you believe you have been unjustly restricted from participating in our community, you may initiate our formal appeal process as outlined below.
|
||||
|
||||
Before reaching out to us, be prepared with some information.
|
||||
## 1. Preparing Your Appeal
|
||||
|
||||
- Have you read our rules and code of conduct?
|
||||
- Do you agree to follow them?
|
||||
- Why do you think a moderator took action against you?
|
||||
- Why do you think this action was unfair?
|
||||
- Why do you want to resume interaction with our community? What value do you feel you would add?
|
||||
Prior to submitting an appeal, please ensure you have the following information ready:
|
||||
|
||||
If you are not prepared for your appeal, we will be less likely to approve it.
|
||||
1. Confirmation that you have thoroughly reviewed and understood our Community Guidelines and Terms of Service.
|
||||
2. An explicit statement of your commitment to adhere to all applicable rules and policies.
|
||||
3. Your understanding of the specific sanction levied against you and the alleged violation(s) cited.
|
||||
4. A clear and concise explanation of why you believe the moderation decision was erroneous or disproportionate.
|
||||
5. A statement detailing your motivations for seeking reinstatement and the potential positive contributions you intend to make to our community.
|
||||
|
||||
[Appeal A Ban](https://airtable.com/appV1cYj57zUU1Af2/pagEeCCMdz5T6cHi9/form)
|
||||
Please note that incomplete or inadequately prepared appeals may be summarily dismissed.
|
||||
|
||||
## 2. Appeal Submission Process
|
||||
|
||||
To submit your appeal, please complete the form available at the following link:
|
||||
|
||||
[Submit a Sanction Appeal](https://airtable.com/app4JjHyeaBqt4vVH/pagOIWG3ZBEGRD8oW/form)
|
||||
|
||||
## 3. Important Disclaimers
|
||||
|
||||
- Submission of an appeal does not guarantee its approval.
|
||||
- The decision of the appeals review panel is final and binding.
|
||||
- We reserve the right to deny or revoke access to our services at any time, for any reason, at our sole discretion.
|
||||
- Repeated violations or abuse of the appeals process may result in permanent ineligibility for reinstatement.
|
||||
|
||||
By submitting an appeal, you acknowledge that you have read, understood, and agree to abide by the terms outlined in this document.
|
||||
|
@ -1,28 +1,131 @@
|
||||
# Community Guidelines
|
||||
|
||||
> [!DANGER]
|
||||
> Due to the heavy nature of topics discussed in our community, and to ensure the comfort of all of our members, participants must be 18 years or older to interact with us.
|
||||
> Exceptions are made for the professional platforms listed on [our contact page](/contact)
|
||||
**Effective 7 July 2024**
|
||||
|
||||
This page documents some helpful tips that will maximise the value you get from (and bring to) our community. The guidelines here are not strict rules or requirements, but are highly encouraged to keep our community safe and cosy for everyone.
|
||||
## 1. Introduction
|
||||
|
||||
## Do not Argue with Staff
|
||||
Welcome to our community. These guidelines are designed to foster a safe, respectful, and productive environment for all members. While not exhaustive or legally binding, adherence to these principles is strongly encouraged to maintain the integrity and value of our community.
|
||||
|
||||
Our staff team consists of members who have been trusted with tools to help keep the community safe. But they are still human! We all make mistakes.
|
||||
### 1.1. Purpose
|
||||
|
||||
If you feel a staff decision was made in error or bad faith, do not argue directly with the team. Instead, fill out our [appeal form](/community/appeal) and we will review your case. Only Naomi has access to this form, and submissions will only be shared in the minimum capacity necessary to investigate and resolve the issue. Your name will not be associated with any revealed submission information.
|
||||
The purpose of these Community Guidelines is to:
|
||||
|
||||
## Plural Systems
|
||||
1. Promote positive interactions and meaningful discussions
|
||||
1. Protect the well-being and rights of all community members
|
||||
1. Maintain a welcoming atmosphere for diverse perspectives and backgrounds
|
||||
|
||||
Plural systems are more than welcome in our community. Please do not pressure someone to reveal information about one of their alters, or attempt to discover who used Melody's plural proxying.
|
||||
### 1.2 Scope
|
||||
|
||||
Systems are welcome to disclose whatever information they want about their alters.
|
||||
These guidelines apply to all forms of interaction within our community, including but not limited to:
|
||||
|
||||
## Tone Tags
|
||||
- Forum discussions
|
||||
- Comment sections
|
||||
- Direct messaging
|
||||
- Live events or webinars
|
||||
- Social media interactions associated with our community
|
||||
|
||||
One of the biggest disadvantages of text-based communication is the loss of context that provides the tone of the message. To help with this, we use tone tags as needed when the tone of a message might be misinterpreted.
|
||||
### 1.3 Encouragement to Participate
|
||||
|
||||
We encourage you to use these tags as needed.
|
||||
We highly value your contributions and encourage you to:
|
||||
|
||||
1. Actively engage in discussions and share your knowledge
|
||||
2. Provide constructive feedback and support to fellow members
|
||||
3. Report any concerns or violations to the community moderators
|
||||
4. Suggest improvements to enhance the community experience
|
||||
|
||||
### 1.4 Code of Conduct
|
||||
|
||||
While many aspects of our Community Guidelines are recommendations, our Code of Conduct establishes non-negotiable standards that ALL community members MUST adhere to in ALL interactions within our community spaces.
|
||||
|
||||
Nothing in this guide may supercede or overwrite the Code of Conduct.
|
||||
|
||||
## 2. Interacting with Staff
|
||||
|
||||
### 2.1 Respect for Authority
|
||||
|
||||
Our staff team consists of trusted members empowered with tools to maintain community safety and harmony. While they strive for fairness and consistency, it's important to recognize their human nature and the potential for occasional errors.
|
||||
|
||||
### 2.2 Dispute Resolution Process
|
||||
|
||||
If you believe a staff decision was made in error or in bad faith, we encourage you to follow these steps:
|
||||
|
||||
1. Refrain from direct argumentation or confrontation with staff members.
|
||||
2. Document the incident, including relevant details and any supporting evidence.
|
||||
3. Submit an appeal through our official [appeal form](/community/appeal).
|
||||
|
||||
### 2.3 Appeal Process
|
||||
|
||||
- Appeals are reviewed by Naomi, who has exclusive access to the submission form.
|
||||
- All appeals will be treated confidentially and impartially.
|
||||
- Information from submissions will only be shared on a need-to-know basis to investigate and resolve the issue.
|
||||
- Your identity will be protected; any revealed submission information will not be associated with your name.
|
||||
|
||||
### 2.4 Staff Accountability
|
||||
|
||||
We are committed to maintaining high standards of conduct for our staff. Any substantiated claims of misconduct or abuse of power will be addressed promptly and appropriately.
|
||||
|
||||
### 2.5 Continuous Improvement
|
||||
|
||||
We value your feedback on our moderation processes. If you have suggestions for improving our systems or policies, please submit them through the appropriate channels.
|
||||
|
||||
## 3. Plural Systems
|
||||
|
||||
### 3.1 Understanding Plurality
|
||||
|
||||
Plural systems refer to individuals who experience the presence of two or more distinct identities or personality states, often called alters. Our community recognizes and respects the existence of plural systems.
|
||||
|
||||
### 3.2 Inclusivity and Respect
|
||||
|
||||
1. Plural systems are fully welcome and valued members of our community.
|
||||
2. We are committed to providing a safe and supportive environment for all system members.
|
||||
3. Discrimination or harassment based on plurality is strictly prohibited.
|
||||
|
||||
### 3.3 Privacy and Boundaries
|
||||
|
||||
1. Respect the privacy of plural systems and their individual alters.
|
||||
2. Do not pressure or attempt to coerce any system or alter to reveal information they are not comfortable sharing.
|
||||
3. Refrain from trying to identify which alter is fronting or using a platform's plural proxying service.
|
||||
|
||||
### 3.4 Self-Disclosure
|
||||
|
||||
1. Systems have the right to disclose information about their alters at their own discretion.
|
||||
2. Members are encouraged to respect the level of disclosure each system or alter chooses.
|
||||
3. Unsolicited advice or attempts to "help" without consent are not appropriate.
|
||||
|
||||
### 3.5 Communication Guidelines
|
||||
|
||||
1. Address alters by their preferred names and pronouns when known.
|
||||
2. If unsure about how to address a system or alter, it's acceptable to politely ask for clarification.
|
||||
3. Be mindful that switching between alters may result in a difference of communication styles or preferences.
|
||||
|
||||
### 3.6 Education and Awareness
|
||||
|
||||
1. We encourage community-wide education about plurality to foster understanding and inclusivity.
|
||||
2. Questions about plurality should be directed to appropriate educational resources rather than to individual systems, unless they have explicitly welcomed such inquiries.
|
||||
|
||||
## 4. Tone Tags
|
||||
|
||||
### 4.1 Purpose of Tone Tags
|
||||
|
||||
In text-based communication, the nuances of tone and intention can often be lost, leading to potential misunderstandings. To address this limitation, we encourage the use of tone tags. These tags provide additional context to messages, helping to clarify the intended tone and reduce misinterpretations.
|
||||
|
||||
### 4.2 When to Use Tone Tags
|
||||
|
||||
Consider using tone tags in the following situations:
|
||||
|
||||
- When your message could be interpreted in multiple ways
|
||||
- If you're using sarcasm, humor, or other tones that might not be immediately apparent
|
||||
- When discussing sensitive topics where clarity of intention is crucial
|
||||
- If you're communicating with someone who has expressed difficulty interpreting tone in text
|
||||
|
||||
### 4.3 How to Use Tone Tags
|
||||
|
||||
- Place the tone tag at the end of your message or the relevant section
|
||||
- Use forward slashes to enclose the tag, e.g., /j for joking
|
||||
- You can use multiple tags if needed, e.g., /s /lh for sarcastic and light-hearted
|
||||
- If you're unsure about a tag's meaning, refer to our community glossary or ask for clarification
|
||||
|
||||
### 4.4 Commonly Used Tone Tags
|
||||
|
||||
| Tag | Meaning |
|
||||
| ---------------------- | ------------------------------------ |
|
||||
@ -78,8 +181,270 @@ We encourage you to use these tags as needed.
|
||||
| `/t` | Teasing |
|
||||
| `/tc`, `/ti` or `/tic` | Typing a tic |
|
||||
|
||||
## Pronouns
|
||||
### 4.5 Respecting Tone Tags
|
||||
|
||||
You are encouraged to display your pronouns in your platform bio (or use the roles in our Discord community). Doing this not only helps others know how to refer to you, but also helps normalise the practice of sharing pronouns.
|
||||
- When someone uses a tone tag, interpret their message accordingly
|
||||
- If you're unsure about the meaning of a tag, ask politely for clarification
|
||||
- Do not mock or belittle others for using tone tags
|
||||
|
||||
By normalising that practice, we fight against the assumption that only trans folk share their pronouns, which makes our community safer for trans folk to do so without implicitly outing themselves.
|
||||
### 4.6 Accessibility Considerations
|
||||
|
||||
- Tone tags can be particularly helpful for neurodivergent individuals who may have difficulty interpreting tone in text
|
||||
- Screen readers can often interpret tone tags, making them a useful tool for visually impaired users
|
||||
|
||||
### 4.7 Limitations of Tone Tags
|
||||
|
||||
- While helpful, tone tags are not a perfect solution and may not convey all nuances of communication
|
||||
- They should be used as a supplement to clear writing, not a replacement for it
|
||||
|
||||
### 4.8 Community-Specific Tags
|
||||
|
||||
- Our community may develop additional tags specific to our discussions
|
||||
- New tags will be added to our glossary after community consensus
|
||||
|
||||
## 5. Pronouns
|
||||
|
||||
### 5.1 Importance of Pronouns
|
||||
|
||||
Pronouns are an essential aspect of personal identity and respectful communication. Our community values and respects each individual's right to self-identify and be addressed correctly.
|
||||
|
||||
### 5.2 Displaying Pronouns
|
||||
|
||||
We strongly encourage all community members to display their pronouns:
|
||||
|
||||
- In your platform bio
|
||||
- Using designated pronoun roles in our Discord community, or comparable feature on other platforms
|
||||
- As part of your username or display name, if desired
|
||||
|
||||
### 5.3 Benefits of Sharing Pronouns
|
||||
|
||||
1. Clarity: Helps others address you correctly
|
||||
2. Inclusivity: Creates a welcoming environment for all gender identities
|
||||
3. Normalization: Reduces stigma around pronoun sharing
|
||||
4. Education: Raises awareness about gender diversity
|
||||
|
||||
### 5.4 Normalizing Pronoun Sharing
|
||||
|
||||
By encouraging all members to share pronouns, regardless of gender identity or expression, we:
|
||||
|
||||
- Challenge the assumption that only transgender individuals share pronouns
|
||||
- Create a safer space for transgender and non-binary individuals to share their pronouns without implicitly outing themselves
|
||||
- Promote a culture of respect and understanding
|
||||
|
||||
### 5.5 Respecting Others' Pronouns
|
||||
|
||||
- Always use the pronouns a person has specified for themselves
|
||||
- If you're unsure about someone's pronouns, it's appropriate to politely ask
|
||||
- If you make a mistake, apologize briefly, correct yourself, and move on
|
||||
|
||||
### 5.6 Pronoun Options
|
||||
|
||||
While not exhaustive, common pronoun options include:
|
||||
|
||||
- She/her/hers
|
||||
- He/him/his
|
||||
- They/them/theirs
|
||||
- Neopronouns (e.g., xe/xem/xyr, ze/zir/zirs)
|
||||
- Any pronouns
|
||||
- No pronouns (use name only)
|
||||
|
||||
### 5.7 Changing Pronouns
|
||||
|
||||
- Members are welcome to update their pronouns at any time
|
||||
- Respect and use a person's current pronouns, even if you knew them by different pronouns previously
|
||||
|
||||
### 5.8 Pronoun Misuse
|
||||
|
||||
- Intentional misuse of pronouns (misgendering) is a form of harassment and violates our community guidelines
|
||||
- Repeated accidental misuse, despite correction, may be addressed by moderation
|
||||
|
||||
### 5.9 Privacy Considerations
|
||||
|
||||
- While we encourage pronoun sharing, it is ultimately a personal choice
|
||||
- Do not pressure others to share their pronouns if they are not comfortable doing so
|
||||
|
||||
## 6. Accessibility
|
||||
|
||||
Our community is committed to ensuring that all members, regardless of their needs, can fully participate and engage with our content. We encourage everyone to follow these accessibility guidelines to create a more inclusive environment.
|
||||
|
||||
### 6.1 Alt Text for Images
|
||||
|
||||
Alt text (alternative text) provides a textual description of images for those who use screen readers or cannot view images.
|
||||
|
||||
- Always include alt text when posting images.
|
||||
- Describe the key elements of the image concisely.
|
||||
- If the image contains text, include that text in the alt description.
|
||||
Example: Instead of alt="meme", use alt="A cat wearing sunglasses with the text 'Deal with it' below"
|
||||
|
||||
### 6.2 Creating Accessible Content
|
||||
|
||||
#### 6.2.1 Descriptive Link Text
|
||||
|
||||
- Use descriptive link text that indicates where the link leads.
|
||||
- Avoid using "click here" or "read more" as standalone link text.
|
||||
|
||||
Example: Instead of "Click here to read about our events", use "View our upcoming community events"
|
||||
|
||||
#### 6.2.2 Avoiding Flashing Content
|
||||
|
||||
- Do not post content that flashes more than three times per second.
|
||||
- If you must share such content, provide a clear warning beforehand.
|
||||
|
||||
#### 6.2.3 Structuring Content
|
||||
|
||||
- Use headings to organize content hierarchically (H1, H2, H3, etc.).
|
||||
- Break long paragraphs into shorter, more digestible sections.
|
||||
- Use bullet points or numbered lists for easy scanning.
|
||||
|
||||
#### 6.2.4 Multimedia Content
|
||||
|
||||
- Provide captions for videos.
|
||||
- Offer transcripts for audio content when possible.
|
||||
|
||||
### 6.3 Continuous Improvement
|
||||
|
||||
- We welcome feedback on how to improve our community's accessibility.
|
||||
- Report any accessibility issues to the moderation team.
|
||||
|
||||
## 7. Content and Trigger Warnings
|
||||
|
||||
Our community is committed to creating a safe and respectful environment for all members. Content and trigger warnings play a crucial role in this effort by allowing individuals to make informed decisions about engaging with potentially distressing content.
|
||||
|
||||
### 7.1 Purpose of Content/Trigger Warnings
|
||||
|
||||
- To give members advance notice of potentially sensitive or disturbing content
|
||||
- To allow individuals to prepare themselves emotionally or choose to avoid the content
|
||||
- To promote a culture of empathy and consideration within our community
|
||||
|
||||
### 7.2 When to Use Warnings
|
||||
|
||||
Use content or trigger warnings when posting about:
|
||||
|
||||
- Graphic violence or gore
|
||||
- Sexual content or explicit discussions of sexuality
|
||||
- Abuse (physical, emotional, sexual)
|
||||
- Self-harm or suicide
|
||||
- Eating disorders or body image issues
|
||||
- Substance abuse or addiction
|
||||
- Mental health issues
|
||||
- Phobias (e.g., spiders, heights, confined spaces)
|
||||
- Political extremism or hate speech
|
||||
- Natural disasters or traumatic events
|
||||
- Flashing images or loud noises (for photosensitive epilepsy)
|
||||
|
||||
Remember, this list is not exhaustive. If you're unsure whether content needs a warning, err on the side of caution and provide one.
|
||||
|
||||
### 7.3 How to Use Content/Trigger Warnings
|
||||
|
||||
- Place the warning at the beginning of your post or message
|
||||
- Use clear, specific language
|
||||
- If possible, use spoiler tags or a "read more" cut to hide the sensitive content
|
||||
|
||||
Example formats:
|
||||
|
||||
"CW: Discussion of eating disorders"
|
||||
"TW: Graphic description of violence"
|
||||
"Content Warning: This post contains references to suicide"
|
||||
|
||||
### 7.4 Respecting Warnings
|
||||
|
||||
- Do not mock or belittle others for using or needing content warnings
|
||||
- If someone asks for a warning on a specific topic, respect their request in future interactions
|
||||
|
||||
### 7.5 False Alarms and Overuse
|
||||
|
||||
While we encourage the use of content warnings, try to avoid overuse for mundane topics. This helps maintain their effectiveness for truly sensitive content.
|
||||
|
||||
### 7.6 Moderator Intervention
|
||||
|
||||
Moderators may add content warnings to posts if they deem it necessary. Repeated failure to use appropriate warnings may result in moderation action.
|
||||
|
||||
## 8. Conflict Resolution
|
||||
|
||||
Disagreements and conflicts can arise in any community. Our goal is to foster an environment where conflicts can be resolved respectfully and constructively. This section outlines the steps for resolving conflicts and when to involve moderators.
|
||||
|
||||
### 8.1 General Principles
|
||||
|
||||
- Treat all parties with respect, even in disagreement
|
||||
- Assume good faith unless proven otherwise
|
||||
- Focus on the issue, not personal attacks
|
||||
- Be open to different perspectives and willing to compromise
|
||||
|
||||
### 8.2 Steps for Resolving Conflicts
|
||||
|
||||
#### 8.2.1 Direct Communication
|
||||
|
||||
- If you have an issue with another member, try to address it directly with them first.
|
||||
- Use private messages to avoid public confrontations.
|
||||
- Clearly and calmly explain your concerns, using "I" statements.
|
||||
- Listen to their perspective without interrupting.
|
||||
- Look for common ground and potential solutions.
|
||||
|
||||
#### 8.2.2 Cool-Down Period
|
||||
|
||||
If emotions are running high:
|
||||
|
||||
- Take a break from the discussion.
|
||||
- Reflect on the issue and your role in the conflict.
|
||||
- Return to the conversation when you can discuss it calmly.
|
||||
|
||||
#### 8.2.3 Seeking Mediation
|
||||
|
||||
If direct communication doesn't resolve the issue:
|
||||
|
||||
- Ask a neutral third party from the community to mediate.
|
||||
- Both parties should agree on the mediator.
|
||||
- The mediator should facilitate discussion, not take sides.
|
||||
|
||||
### 8.3 When to Involve Moderators
|
||||
|
||||
Involve moderators if:
|
||||
|
||||
- The conflict violates our Code of Conduct
|
||||
- You feel unsafe or harassed
|
||||
- The conflict is disrupting the broader community
|
||||
- Previous attempts at resolution have failed
|
||||
- You're unsure how to handle the situation
|
||||
|
||||
### 8.4 How to Involve Moderators
|
||||
|
||||
- Use the designated reporting system on the platform.
|
||||
- Provide a clear, factual account of the issue.
|
||||
- Include relevant screenshots or links if applicable.
|
||||
- Explain steps you've already taken to resolve the conflict.
|
||||
|
||||
### 8.5 Moderator Actions
|
||||
|
||||
Moderators may:
|
||||
|
||||
- Facilitate discussion between parties
|
||||
- Issue warnings or reminders about community guidelines
|
||||
- Temporarily mute or suspend accounts
|
||||
- Remove inflammatory content
|
||||
- In severe cases, ban members who consistently create conflicts
|
||||
|
||||
### 8.6 Appealing Moderator Decisions
|
||||
|
||||
If you disagree with a moderator's decision:
|
||||
|
||||
- Wait 24 hours to ensure you can discuss it calmly
|
||||
- Contact the moderation team through the appropriate channels
|
||||
- Clearly explain why you think the decision should be reconsidered
|
||||
- Be prepared to provide additional context or evidence
|
||||
|
||||
### 8.7 Conflict Prevention
|
||||
|
||||
To minimize conflicts:
|
||||
|
||||
- Re-read your posts before sending to ensure they're not unintentionally inflammatory
|
||||
- Use tone indicators when your intent might be unclear
|
||||
- Ask for clarification before assuming negative intent
|
||||
- Be willing to apologize and correct mistakes
|
||||
|
||||
### 8.8 Learning from Conflicts
|
||||
|
||||
After a conflict is resolved:
|
||||
|
||||
- Reflect on what led to the disagreement
|
||||
- Consider how it could have been prevented or handled better
|
||||
- Apply these lessons in future interactions
|
||||
|
12
docs/community/hall-of-fame.md
Normal file
12
docs/community/hall-of-fame.md
Normal file
@ -0,0 +1,12 @@
|
||||
# Hall of Fame
|
||||
|
||||
**Effective 7 July 2024**
|
||||
|
||||
|
||||
## 1. Purpose
|
||||
This document recognises the folks who have reported security vulnerabilities in our Applications pursuant to our [security policy](/security).
|
||||
|
||||
## 2. Recognitions
|
||||
|
||||
We extend our thanks to the following people for their efforts in keeping our users secure:
|
||||
|
@ -1,92 +0,0 @@
|
||||
# Labels
|
||||
|
||||
We use very specific labels to help categorise our issues. This page explains what each label means.
|
||||
|
||||
## Contribution Labels
|
||||
|
||||
These are the most important. These labels indicate who is encouraged to make a pull request to resolve the issue.
|
||||
|
||||
| Label | Explanation |
|
||||
| ------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `good first issue` | An issue with this label is intended for contributors who are brand new to the project. These issues should not require prior knowledge of the codebase, and the conversation on the issue will include a detailed description of how to implement a resolution. |
|
||||
| `help wanted` | These issues are open for contribution from anyone who is interested. The conversation may not include a detailed description, as these issues typically assume you have prior experience with the codebase. |
|
||||
| `🔒 staff only` | These issues require specific access to the production infrastructure to test properly. These are restricted to project maintainers/staff for that reason. |
|
||||
|
||||
## Aspect Labels
|
||||
|
||||
These labels indicate the scope of the work required to resolve the issue.
|
||||
|
||||
| Label | Explanation |
|
||||
| --------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `💻 aspect: code` | This is the most common. These issues require work on the project's code-base. |
|
||||
| `🤖 aspect: dx` | These issues typically require changes to the project's tooling, such as automated tests, development dependencies, etc. |
|
||||
| `🕹 aspect: interface` | These issues might require code changes, but these are specifically things that require changing the end-user's experience. This might be something like CSS changes, or replacing an image. |
|
||||
| `📄 aspect: text` | These issues are related to a project's documentation. These don't require code changes, but might require markdown experience as most of our documentation is written in markdown. |
|
||||
|
||||
## Goal Labels
|
||||
|
||||
These labels indicate the goal of the issue. Our projects tend to follow a specific modular approach, and these labels help indicate the type of changes you might be making.
|
||||
|
||||
| Label | Explanation |
|
||||
| ---------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `⭐ goal: addition` | These issues add a new feature to the project. Typically, this means you're adding a new code file from scratch, following the project's style. |
|
||||
| `🛠 goal: fix` | These issues fix a bug in the project. Typically, this means you're editing existing code within existing files. |
|
||||
| `✨ goal: improvement` | These issues expand upon an existing feature. Typically, this means you're adding code to an existing file, but not necessarily adding new files. |
|
||||
|
||||
## Priority Labels
|
||||
|
||||
The priority labels indicate the importance we've assigned to a specific issue. The higher the priority, the more of a focus it is for our team.
|
||||
|
||||
| Label | Explanation |
|
||||
| ----------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `🟥 priority: critical` | These issues are typically show-stoppers. This label is reserved for issues which need immediate attention because the project is **unusable** until they are resolved. |
|
||||
| `🟧 priority: high` | This label applies to issues that aren't preventing the project from being _functional_, but are preventing further development until they're resolved. |
|
||||
| `🟨 priority: medium` | Medium priority issues are things that we want resolved as soon as possible, but they aren't preventing other development from occurring. |
|
||||
| `🟩 priority: low` | This is probably the most common label. This is for issues that we'd like resolved, but aren't considered as things we want done ASAP. |
|
||||
| `🟪 priority: none` | This label indicates an issue that would be nice to have resolved, but isn't essential enough to dedicate maintainer time to fixing. |
|
||||
|
||||
## Status Labels
|
||||
|
||||
Status labels allow you to see where a ticket is at in the lifecycle of the project.
|
||||
|
||||
| Label | Explanation |
|
||||
| --------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `🚦 status: awaiting triage` | This is the most common status label. This label is automatically applied to new issues, and indicates that the maintainer team has not reviewed and responded to the issue. You are still welcome to share your thoughts, but these issues have not received any maintainer attention. |
|
||||
| `🚧 status: blocked` | This label is applied to issues that might have a planned resolution, but that resolution depends on a separate issue being resolved. These aren't ready for work **yet**, but will be soon. |
|
||||
| `⛔️ status: discarded` | This label applies to an issue that we don't intend to resolve. Typically, this is on feature requests that aren't in line with the project's goals. |
|
||||
| `🙅 status: discontinued` | We rarely use this label, but this applies to feature request issues on projects that are solely in maintenance mode - that is, projects we aren't adding new features to but are still supporting and providing bug fixes for. |
|
||||
| `🏷 status: label work required` | This applies to an issue that might have some discussion on it, but hasn't been appropriately labelled and categorised. |
|
||||
| `🏁 status: ready for dev` | These issues are ready for contribution. If a contributor is assigned, they have indicated interest in working on the issue and we encourage you to collaborate. This pairs with the Contribution Labels listed above. |
|
||||
| `🧹 status: ticket work required` | This label indicates that the issue does not have enough information for proper triage. Typically, this pairs with the Conversation Labels listed below. |
|
||||
|
||||
## Conversation Labels
|
||||
|
||||
These labels indicate that the issue has received initial maintainer attention, but is waiting on more information from the author or the maintainer team.
|
||||
|
||||
| Label | Explanation |
|
||||
| --------------------- | ---------------------------------------------------------------------------------------------------- |
|
||||
| `💬 talk: discussion` | This issue is being actively discussed, but has not been accepted as something we intend to resolve. |
|
||||
| `❓ talk: question` | These issues are waiting on additional information from the author in order to triage properly. |
|
||||
|
||||
## Special Labels
|
||||
|
||||
These labels are specifically used for unique events.
|
||||
|
||||
| Label | Explanation |
|
||||
| ------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| `Hacktoberfest` | This issue is indicated as a valid contribution opportunity for Hacktoberfest. |
|
||||
| `hacktoberfest-accepted` | This is used to label pull requests which are valid Hacktoberfest contributions, but might not be merged in time for the event. |
|
||||
| `invalid` | This label is specifically used on pull requests which were made with the goal of spamming Hacktoberfest contributions, and were not made in good faith. |
|
||||
|
||||
## Pull Request Labels
|
||||
|
||||
We have automation that applies specific labels to our pull requests.
|
||||
|
||||
| Label | Explanation |
|
||||
| --------------------------- | ---------------------------------------------------------------------------------------------------------- |
|
||||
| `✅ pull: accepted` | This pull request has been merged into the code base. |
|
||||
| `⚠️ pull: merge conflict` | This pull request has conflicts with the target branch. Those need to be resolved before we can review it. |
|
||||
| `🔍 pull: ready for review` | This pull request is not in draft mode and is waiting for maintainer review. |
|
||||
| `❌ pull: rejected` | This pull request was not accepted by maintainers and was closed. |
|
||||
| `⏫ pull: requires update` | This pull request has had changes requested by the maintainer team. |
|
||||
| `⚒️ pull: work in progress` | This pull request is in draft mode and is not ready for review. |
|
@ -1,58 +0,0 @@
|
||||
# Melody Iuvo
|
||||
|
||||
You may see Melody in our Discord, or responding to issues on GitHub. Melody is a bot, and she serves as our community assistant.
|
||||
|
||||
## GitHub
|
||||
|
||||
On GitHub, Melody handles the automatic invitation flow for new organisation members.
|
||||
|
||||
She also welcomes new contributors, and thanks contributors when a PR is merged.
|
||||
|
||||
## Discord
|
||||
|
||||
Melody is much more full featured on Discord. She has a number of commands that you can use to interact with the community.
|
||||
|
||||
### Assets
|
||||
|
||||
All of Naomi's assets can be accessed through Melody. These assets are provided as reference (for things like fan art or commissions).
|
||||
|
||||
> [!WARNING]
|
||||
> Assets may not be repurposed or redistributed without prior permission from Naomi.
|
||||
|
||||
These commands are under `/assets`.
|
||||
|
||||
### Currency System
|
||||
|
||||
Melody manages our community's currency system. This system grants you NaomiCoin for sending messages and interacting with your fellow members. You can use these NaomiCoin to purchase special items, such as a custom colour role or the ability to set Naomi's avatar. You can also gamble for more coin through the slots!
|
||||
|
||||
These commands are under `/currency`.
|
||||
|
||||
### Frequently Asked Questions
|
||||
|
||||
For help with navigating our community, we created a FAQ system with common questions we see. Questions are mainly examples of "Where do I do X?" or "How do I do Y?".
|
||||
|
||||
Questions may be added and edited through [GitHub](https://github.com/naomis-novas/melody-iuvo/blob/main/src/config/Faq.ts).
|
||||
|
||||
These commands are under `/faq`.
|
||||
|
||||
### Fun Commands
|
||||
|
||||
There are a couple of commands related to Naomi, which are added just for fun. You can ask Naomi anonymous questions, or generate a quote image with her avatar.
|
||||
|
||||
These commands are under `/naomi`.
|
||||
|
||||
There is also a `/tarot` command, which allows you to get a daily tarot card reading, and a `/yokai` command, which allows you to get information about a random yokai.
|
||||
|
||||
### Plural Systems
|
||||
|
||||
Melody allows you to proxy your messages much like PluralKit or Tupperbox. You can set up identities for your alters, configure a prefix, and choose an avatar. You can also set up auto-proxying.
|
||||
|
||||
These commands are under `/plural`.
|
||||
|
||||
### Streams
|
||||
|
||||
Naomi streams on [Twitch](https://twitch.tv/naomilgbt), and Melody has a couple of commands to support this. The `/game` command allows you to fetch a random game from Naomi's library, and the `/queue` command allows you to see Naomi's planned list of games to play on stream.
|
||||
|
||||
### Ticket System
|
||||
|
||||
Melody also handles the private support ticket system. If you need to create a private discussion with our team, use the Open a Ticket button found in the `#our-work` channel.
|
452
docs/contact.md
452
docs/contact.md
@ -1,39 +1,447 @@
|
||||
# Contact Us
|
||||
# Contact Policy
|
||||
|
||||
**Effective 7 July 2024**
|
||||
|
||||
## 1. Support and Communication Channels
|
||||
|
||||
### 1.1 Public Support Channels
|
||||
|
||||
We offer FREE support through several PUBLIC channels, including:
|
||||
|
||||
- Community Forums
|
||||
- Public GitHub Issues
|
||||
- Open Discord Servers
|
||||
- Social Media Platforms
|
||||
|
||||
These channels are ideal for:
|
||||
|
||||
- General inquiries about our projects
|
||||
- Bug reports and feature requests
|
||||
- Community discussions and knowledge sharing
|
||||
- Open-source collaboration opportunities
|
||||
|
||||
### 1.2 Private Support Options
|
||||
|
||||
While we encourage the use of public channels, we understand that some situations may require private communication. Please note:
|
||||
|
||||
- Private support is a premium service and may be subject to fees.
|
||||
- We reserve the right to invoice you for private support services.
|
||||
- Billing is based on the anticipated workload for your query.
|
||||
- Responses to private queries will be provided only after invoice payment is confirmed.
|
||||
|
||||
To request private support, please contact us through `support@nhcarrigan.com`.
|
||||
|
||||
### 1.3 Engagement Opportunities
|
||||
|
||||
Our platforms offer various ways to engage with our projects and community:
|
||||
|
||||
- Request support for technical issues
|
||||
- Express interest in contributing to our open-source projects
|
||||
- Seek mentorship in software development
|
||||
- Participate in casual discussions with our team and community members
|
||||
|
||||
### 1.4 Platform Directory
|
||||
|
||||
Below, you'll find a comprehensive list of our official communication platforms. Each platform serves specific purposes and caters to different types of interactions. Please choose the most appropriate channel for your needs to ensure the fastest and most effective response.
|
||||
|
||||
## 2. Account Verification
|
||||
|
||||
### 2.1 List of Verified Accounts
|
||||
|
||||
We maintain a comprehensive list of all our verified accounts across different platforms. This list is regularly updated to reflect any changes or additions to our official online presence.
|
||||
|
||||
- View our verified accounts: https://cdn.nhcarrigan.com/socials.txt
|
||||
|
||||
### 2.2 GPG Key for Verification
|
||||
|
||||
To ensure the integrity of our verified accounts list, we use GPG (GNU Privacy Guard) encryption. You can download our public GPG key to verify the authenticity of the list.
|
||||
|
||||
- Download our GPG key: https://cdn.nhcarrigan.com/key.pgp
|
||||
|
||||
### 2.3 Verification Process
|
||||
|
||||
Follow these steps to verify the integrity of our verified accounts list:
|
||||
|
||||
- Download both the verified accounts list and our GPG key from the links provided above.
|
||||
- Open a terminal or command prompt on your system.
|
||||
- Navigate to the directory where you saved the files.
|
||||
- Run the following command:
|
||||
|
||||
```
|
||||
gpg -f /path/to/key --verify /path/to/socials
|
||||
```
|
||||
|
||||
Replace `/path/to/key` with the path to the downloaded GPG key file, and `/path/to/socials` with the path to the downloaded verified accounts list.
|
||||
|
||||
If the verification is successful, you'll see a message confirming the signature is valid.
|
||||
|
||||
### 2.4 Importance of Verification
|
||||
|
||||
Verifying our accounts helps you:
|
||||
|
||||
- Avoid impersonation attempts
|
||||
- Ensure you're interacting with official channels
|
||||
- Protect yourself from potential scams or misinformation
|
||||
|
||||
### 2.5 Reporting Suspicious Accounts
|
||||
|
||||
If you encounter an account claiming to represent us but not listed in our verified accounts:
|
||||
|
||||
- Do not engage with or share sensitive information with the account
|
||||
- Report the suspicious account to us immediately through one of our verified channels
|
||||
- If possible, report the account to the platform it's on for impersonation
|
||||
|
||||
### 2.6 Staying Updated
|
||||
|
||||
We recommend checking our verified accounts list periodically, as we may add new official accounts or remove outdated ones. Always use the verification process to ensure you have the most current and authentic list.
|
||||
|
||||
## 3. Real-Time Communication Platforms
|
||||
|
||||
### 3.1 Discord Server
|
||||
|
||||
Our Discord server is the primary and most active platform for real-time communication.
|
||||
|
||||
- Join Link: https://chat.naomi.lgbt
|
||||
- Features:
|
||||
- Fastest response times
|
||||
- Multiple topic-specific channels
|
||||
- Voice chat capabilities
|
||||
- Integration with our projects and bots
|
||||
- Best for: Quick support, community discussions, and live collaboration
|
||||
|
||||
### 3.2 Matrix Space
|
||||
|
||||
For those who prefer an open-source alternative to Discord, we maintain a Matrix space.
|
||||
|
||||
- Join Link: https://matrix.to/#/#naomis:matrix.org
|
||||
- Features:
|
||||
- Decentralized and open-source
|
||||
- End-to-end encryption for private messages
|
||||
- Cross-platform compatibility
|
||||
- Best for: Privacy-conscious users and those who prefer open protocols
|
||||
|
||||
### 3.3 IRC Channels
|
||||
|
||||
For users who prefer traditional IRC, we maintain channels on LiberaChat.
|
||||
|
||||
- Network: LiberaChat
|
||||
- Channels:
|
||||
- #nhcarrigan - Main support and discussion channel
|
||||
- #nhcarrigan-chat - Casual conversation and community chat
|
||||
- Connection Guide: LiberaChat Connection Guide
|
||||
- Features:
|
||||
- Lightweight and accessible from various clients
|
||||
- Suitable for users with limited bandwidth
|
||||
- Familiar interface for long-time internet users
|
||||
- Best for: Users comfortable with traditional IRC interfaces and those seeking a minimal, text-based chat experience
|
||||
|
||||
### 3.4 Platform Choice Guidelines
|
||||
|
||||
- Discord: Recommended for most users, especially those seeking quick responses or community interaction.
|
||||
- Matrix: Ideal for users prioritizing privacy and open-source solutions.
|
||||
- IRC: Best for those who prefer a classic, lightweight chat experience or are using older hardware.
|
||||
|
||||
### 3.5 Etiquette and Best Practices
|
||||
|
||||
- Please be respectful and follow the community guidelines on all platforms.
|
||||
- Use appropriate channels or rooms for your queries to ensure the fastest response.
|
||||
- Before asking a question, check if it has been answered in pinned messages or FAQs.
|
||||
- When seeking help, provide as much relevant information as possible.
|
||||
|
||||
## 4. Announcements and Updates
|
||||
|
||||
### 4.1 Reddit Board
|
||||
|
||||
Our Reddit board serves as the primary hub for official announcements and updates.
|
||||
|
||||
- URL: https://www.reddit.com/r/nhcarrigan/
|
||||
- Nature: This board is read-only.
|
||||
- Content:
|
||||
- Project updates and new releases
|
||||
- Important community announcements
|
||||
- Event notifications
|
||||
- Major policy changes
|
||||
- Best for: Comprehensive, detailed announcements and long-form updates
|
||||
|
||||
### 4.2 Social Media Platforms
|
||||
|
||||
For more frequent and concise updates, we cross-post select announcements to our social media accounts.
|
||||
|
||||
#### 4.2.1 Twitter
|
||||
|
||||
- Account: @naomi_lgbt
|
||||
- Content:
|
||||
- Brief announcements and updates
|
||||
- Quick tips and insights
|
||||
- Community engagement
|
||||
|
||||
#### 4.2.2 Mastodon
|
||||
|
||||
- Account: @naomi_lgbt@mastodon.social
|
||||
- Content:
|
||||
- Similar to Twitter
|
||||
- Greater focus on personal activities
|
||||
|
||||
### 4.3 Interacting with Announcements
|
||||
|
||||
- Reddit: The board is read-only. For questions or discussions about announcements, please use our Discord server or other interactive platforms.
|
||||
- Twitter and Mastodon: You can reply to posts or @mention us with questions or comments. We encourage community engagement on these platforms.
|
||||
|
||||
### 4.4 Best Practices for Staying Informed
|
||||
|
||||
- Subscribe to Multiple Channels: Each platform may have slightly different content. Following multiple channels ensures you don't miss any important updates.
|
||||
- Enable Notifications: Consider enabling notifications for critical updates on your preferred platform.
|
||||
- Regular Check-ins: If you prefer not to use notifications, we recommend checking these channels regularly, especially before starting work on or with our projects.
|
||||
- Cross-Reference: Major announcements will typically be posted across all platforms. If you see something important on one channel, you can cross-reference it on others for any additional details.
|
||||
|
||||
### 4.5 Emergency or Critical Updates
|
||||
|
||||
For time-sensitive or critical announcements:
|
||||
|
||||
- We will use all available channels to ensure maximum reach.
|
||||
- Such announcements will be clearly marked as urgent or critical.
|
||||
- We may use additional notification methods (e.g., email for registered users) for extremely critical updates.
|
||||
|
||||
### 4.6 Historical Announcements
|
||||
|
||||
- All announcements on our Reddit board are archived and remain accessible for future reference.
|
||||
- While social media posts may have limited visibility over time, all major announcements will be permanently available on Reddit.
|
||||
|
||||
## 5. Professional Engagement and Portfolio
|
||||
|
||||
### 5.1 LinkedIn Profile
|
||||
|
||||
LinkedIn serves as our primary professional networking platform.
|
||||
|
||||
- Profile URL: https://linkedin.com/in/naomi-lgbt
|
||||
- Purpose:
|
||||
- Professional networking
|
||||
- Career history and accomplishments
|
||||
- Skills endorsements and recommendations
|
||||
- Best for:
|
||||
- Potential employers or clients
|
||||
- Professional collaborators
|
||||
- Industry peers
|
||||
|
||||
#### 5.1.1 Connecting on LinkedIn
|
||||
|
||||
When sending a connection request, please include a brief message explaining your interest. We typically respond to LinkedIn messages within 2-3 business days.
|
||||
|
||||
### 5.2 Peerlist Profile
|
||||
|
||||
As an alternative to LinkedIn, we maintain a presence on Peerlist, a platform focused on tech professionals.
|
||||
|
||||
- Profile URL: https://peerlist.io/naomi_lgbt
|
||||
- Purpose:
|
||||
- Showcase technical projects and contributions
|
||||
- Highlight specific skills and technologies
|
||||
- Connect with other tech professionals
|
||||
- Best for:
|
||||
- Tech-focused recruiters and companies
|
||||
- Fellow developers and engineers
|
||||
- Open-source collaborators
|
||||
|
||||
#### 5.2.1 Engaging on Peerlist
|
||||
|
||||
Feel free to explore our projects and contributions on Peerlist. You can leave comments or questions on specific items in our portfolio.
|
||||
|
||||
### 5.3 Professional Inquiries
|
||||
|
||||
When reaching out for professional reasons, please consider the following:
|
||||
|
||||
- Clear Purpose: State the reason for your contact (e.g., job opportunity, collaboration, consultation).
|
||||
- Relevant Background: Provide brief context about yourself or your company.
|
||||
- Specific Questions: If you have particular queries, include them in your initial message.
|
||||
|
||||
### 5.4 Services
|
||||
|
||||
For details about our services and past work, visit our portfolio: https://nhcarrigan.com
|
||||
|
||||
### 5.5 Speaking Engagements and Events
|
||||
|
||||
If you're interested in having us speak at your event or contribute to your publication:
|
||||
|
||||
- Check our LinkedIn or Peerlist profiles for recent talks or articles.
|
||||
- Reach out with specific details about your event or publication.
|
||||
- Provide information about the audience, topic, and any other relevant details.
|
||||
|
||||
### 5.6 Keeping Professional Connections Updated
|
||||
|
||||
We regularly update our professional profiles with new projects, skills, and achievements. Follow us on these platforms to stay informed about our professional journey and potential opportunities for collaboration.
|
||||
|
||||
## 6. One-on-One Sessions
|
||||
|
||||
We offer personalized, one-on-one sessions to cater to various needs, from casual conversations to in-depth consultations. Book your session through our Topmate profile.
|
||||
|
||||
### 6.1 Coffee Chat
|
||||
|
||||
A casual, informal conversation to connect and share ideas.
|
||||
|
||||
- Duration: 15 minutes
|
||||
- Purpose:
|
||||
- Get to know Naomi
|
||||
- Discuss general topics in tech
|
||||
- Share experiences and insights
|
||||
- Best for:
|
||||
- Students looking for career advice
|
||||
- Professionals seeking to expand their network
|
||||
- Anyone interested in a friendly chat about tech and open source
|
||||
|
||||
### 6.2 Consulting Session
|
||||
|
||||
A focused, one-on-one session to discuss potential new projects and align our services with your needs.
|
||||
|
||||
- Duration: 30 minutes
|
||||
- Purpose:
|
||||
- Explore your project requirements in detail
|
||||
- Discuss how our services can meet your needs
|
||||
- Provide estimated quotes for the proposed work
|
||||
- Best for:
|
||||
- Developers stuck on a particular problem
|
||||
- Project managers seeking technical guidance
|
||||
- Startups needing expert input on their tech stack
|
||||
|
||||
### 6.3 Mentorship Session
|
||||
|
||||
An in-depth, personalized session focused on long-term professional growth and skill development.
|
||||
|
||||
- Duration: 1 hour
|
||||
- Purpose:
|
||||
- Provide career guidance and development strategies
|
||||
- Offer personalized learning plans and resources
|
||||
- Review and provide feedback on code or projects
|
||||
- Best for:
|
||||
- Early-career developers seeking guidance
|
||||
- Professionals looking to transition into tech
|
||||
- Anyone seeking structured, long-term professional development
|
||||
|
||||
### 6.4 How to Book a Session:
|
||||
|
||||
- Visit one of:
|
||||
- Our topmate profile: https://topmate.io/nhcarrigan
|
||||
- Our fiverr profile: https://www.fiverr.com/nhcarrigan
|
||||
- Select the type of session you need (Coffee Chat, Consulting, or Mentorship)
|
||||
- Select an available time slot
|
||||
- Complete the booking process and payment
|
||||
|
||||
### 6.5 Preparing for Your Session:
|
||||
|
||||
- Coffee Chat: Come with topics you'd like to discuss or questions about the industry
|
||||
- Consulting: Prepare a clear description of your problem or project, and any relevant code or documentation
|
||||
- Mentorship: Outline your career goals and areas where you'd like to improve
|
||||
|
||||
### 6.6 Additional Information:
|
||||
|
||||
- All sessions are conducted virtually via a video call in our Discord server.
|
||||
- Payment is required at the time of booking
|
||||
- Rescheduling is possible with at least 24 hours notice
|
||||
|
||||
For any questions about these sessions or to discuss a different type of engagement, please reach out through our preferred contact methods listed in previous sections.
|
||||
|
||||
## 7. Email Communication
|
||||
|
||||
> [!WARNING]
|
||||
> We offer FREE support and communication through a number of PUBLIC channels. If you require private support, we reserve the right to invoice you for that service.
|
||||
>
|
||||
> Private support will be billed based on anticipated workload for your query. Queries will not be responded to until invoice is paid.
|
||||
> Email communication is considered a paid service and will be invoiced.
|
||||
|
||||
This page lists out the various platforms where you can request support with our projects, express interest in contributing, ask for mentorship, or just chat with us.
|
||||
We offer several email addresses for specific types of inquiries. Please use the appropriate email address to ensure your message reaches the right team and receives the most efficient response.
|
||||
|
||||
> [!NOTE]
|
||||
> You can see all of our [verified accounts](https://cdn.nhcarrigan.com/socials.txt), as well as [download the GPG key](https://cdn.nhcarrigan.com/key.pgp) used to maintain integrity of that list.
|
||||
>
|
||||
> After downloading both, you can run `gpg -f /path/to/key --verify /path/to/socials` to validate that the document has not been tampered with.
|
||||
### 7.1 General Inquiries
|
||||
|
||||
## Chat
|
||||
- Email: contact@nhcarrigan.com
|
||||
- Use for:
|
||||
- General questions about our services or projects
|
||||
- Partnership or collaboration proposals
|
||||
- Media or press inquiries
|
||||
- Any queries that don't fit other categories
|
||||
|
||||
Our Discord server is the fastest way to get in touch with us. You may join through this link: https://chat.naomi.lgbt
|
||||
### 7.2 Billing and Financial Matters
|
||||
|
||||
Want something similar to Discord but not? Hop into our matrix space! https://matrix.to/#/#naomis:matrix.org
|
||||
- Email: billing@nhcarrigan.com
|
||||
- Use for:
|
||||
- Questions about payments or invoices
|
||||
- Inquiries about outstanding balances
|
||||
- Refund requests
|
||||
- Updating billing information
|
||||
|
||||
If you're old school, we do have the <span id="irc">IRC</span> `#nhcarrigan` and `#nhcarrigan-chat` channels available on [LiberaChat](https://libera.chat/guides/connect).
|
||||
### 7.3 Technical Support
|
||||
|
||||
## Announcements
|
||||
- Email: support@nhcarrigan.com
|
||||
- Use for:
|
||||
- Assistance with using our software or services
|
||||
- Reporting bugs or technical issues
|
||||
- Documentation clarifications
|
||||
|
||||
Our Reddit board serves as a way to get announcements and stay up to date. https://www.reddit.com/r/nhcarrigan/ This board is **read-only**.
|
||||
### 7.4 Privacy Concerns
|
||||
|
||||
Announcements are sometimes cross-posted to [Twitter](https://twitter.com/naomi_lgbt) and [Mastodon](https://mastodon.social/naomi_lgbt). You can reply or @mention us if you have questions!
|
||||
- Email: privacy@nhcarrigan.com
|
||||
- Use for:
|
||||
- Questions about our privacy policy
|
||||
- Requests for data access or deletion
|
||||
- Reporting potential privacy breaches
|
||||
- Opting out of data collection (where applicable)
|
||||
|
||||
## Our Work
|
||||
### 7.5 Security Matters
|
||||
|
||||
Want to inquire about professional work? You're welcome to connect on LinkedIn! https://linkedin.com/in/naomi-lgbt
|
||||
- Email: security@nhcarrigan.com
|
||||
- Use for:
|
||||
- Reporting security vulnerabilities
|
||||
- Questions about our security practices
|
||||
- Concerns about potential security breaches
|
||||
|
||||
We also offer Peerlist as an alternative: https://peerlist.io/naomi_lgbt
|
||||
### 7.6 Legal Inquiries
|
||||
|
||||
## Commission
|
||||
- Email: legal@nhcarrigan.com
|
||||
- Use for:
|
||||
- Legal questions or concerns
|
||||
- Copyright or trademark issues
|
||||
- Requests for legal documentation
|
||||
- Formal notices or communications
|
||||
|
||||
Feel free to book a [one-on-one](https://topmate.io/nhcarrigan/913920) session if you need a dedicated conversation to discuss your needs.
|
||||
### 7.7 Feedback and Suggestions
|
||||
|
||||
You can also reach us on Fiverr: https://www.fiverr.com/nhcarrigan
|
||||
- Email: feedback@nhcarrigan.com
|
||||
- Use for:
|
||||
- Providing feedback on our work or projects
|
||||
- Suggesting improvements or new features
|
||||
- Sharing your experience with our services
|
||||
- Offering ideas for future developments
|
||||
|
||||
### 7.8 Email Communication Guidelines
|
||||
|
||||
- Subject Line: Please use a clear, concise subject line that summarizes your inquiry.
|
||||
- Content: Provide all relevant details in your initial email to expedite the response process.
|
||||
- Attachments: If sending attachments, please mention them in the email body and ensure they are in common file formats.
|
||||
- Response Time: We aim to respond to all emails within 2 business days. Complex inquiries may require additional time.
|
||||
- Follow-ups: If you haven't received a response after 3 business days, feel free to send a polite follow-up.
|
||||
|
||||
### 7.9 Email Privacy and Security
|
||||
|
||||
All email communications are treated as confidential.
|
||||
|
||||
We do not share your email address or the content of your messages with third parties unless:
|
||||
- Required by law; OR
|
||||
- As part of a public warning related to a violation of our Code of Conduct
|
||||
|
||||
### 7.10 Spam and Unsolicited Emails
|
||||
|
||||
We have a strict no-spam policy. If you receive any unsolicited emails claiming to be from us, please report them to security@nhcarrigan.com.
|
||||
|
||||
By using the appropriate email address for your inquiry, you help us provide you with the most efficient and accurate response possible. If you're unsure which email to use, feel free to send your inquiry to contact@nhcarrigan.com, and we'll direct it to the appropriate team.
|
||||
|
||||
### 7.11 Acceptable Use and Consequences
|
||||
|
||||
We are committed to maintaining a respectful and productive communication environment. To ensure this:
|
||||
|
||||
- All email communications should be professional and respectful.
|
||||
- Harassment, threats, or abusive language will not be tolerated.
|
||||
- Spam or excessive unsolicited emails are prohibited.
|
||||
- Attempting to use our email system for malicious purposes (e.g., phishing, spreading malware) is strictly forbidden.
|
||||
|
||||
> [!ATTENTION]
|
||||
> Abuse of our email system or violation of these guidelines will result in your email address being blocked from sending communications to any of our addresses. This block may be temporary or permanent, depending on the severity and frequency of the abuse.
|
||||
|
||||
If you believe your email has been blocked in error, please contact us through an alternative method listed in this document to request a review of the situation.
|
||||
|
||||
We reserve the right to report serious abuses to relevant authorities if necessary.
|
||||
|
||||
By communicating with us via email, you agree to adhere to these guidelines and understand the consequences of misuse.
|
||||
|
@ -1,136 +1,598 @@
|
||||
# Contributing
|
||||
|
||||
> [!TIP]
|
||||
> This document provides a high-level overview of contributing to our projects. Check with each project's documentation for more specific or supplemental instructions, if needed.
|
||||
**Effective 7 July 2024**
|
||||
|
||||
Please ensure all pull requests and contributions comply with the [Developer Certificate of Origin](https://developercertificate.org/).
|
||||
## 1. Scope and General Contribution Guidelines
|
||||
|
||||
> [!NOTE]
|
||||
> All contributions to our projects will be licensed under our [global license](/license.md)
|
||||
### 1.1 Overview
|
||||
|
||||
## Setting Up Your Code
|
||||
This document outlines the general guidelines for contributing to our projects. It serves as a high-level framework for all contributors, whether you're submitting code, documentation, or other forms of contribution.
|
||||
|
||||
First, fork the repository to your own account. Then use `git clone <url>` to bring your forked repository down to your local machine (remember to get the URL for _your_ repository, not the original). Optionally, use `git remote add upstream <url>` to add the original repository as the upstream (this is helpful for keeping your fork up-to-date).
|
||||
### 1.2 Project-Specific Instructions
|
||||
|
||||
## Claiming an Issue
|
||||
While these guidelines apply broadly, individual projects may have unique requirements or processes. Always refer to the specific project's documentation for:
|
||||
|
||||
All of our issues are open to contributors! If you see an open issue you would like to work on, please comment on the issue so we may assign it to you.
|
||||
- Supplemental instructions
|
||||
- Project-specific workflows
|
||||
- Coding standards
|
||||
- Testing requirements
|
||||
- Other relevant information
|
||||
|
||||
> [!NOTE]
|
||||
> Assigned issues that have not had any activity in a week will be unassigned.
|
||||
In case of any discrepancy between this document and project-specific guidelines, the project-specific instructions take precedence.
|
||||
|
||||
If an issue is already assigned, that means someone has expressed interest in working on it. We encourage you to reach out to them and collaborate on a PR together!
|
||||
### 1.3 Commit Signing Requirements
|
||||
|
||||
We use special labels to help categorise issues. Feel free to [browse our breakdown of the labels](/labels.md).
|
||||
All commits must be cryptographically signed using either GPG or SSH. This requirement serves to verify the authenticity and integrity of your contributions.
|
||||
|
||||
## Working on your issue
|
||||
- For GPG signing, ensure your GPG key is associated with your GitHub or Codeberg account.
|
||||
- For SSH signing, use a key linked to your GitHub or Codeberg account.
|
||||
|
||||
Before starting work, we highly recommend ensuring that your forked version is up to date. If you set the `upstream` as mentioned in [Setting Up Your Code](#setting-up-your-code), run these commands in your terminal (with the terminal pointed at the root directory of your local files):
|
||||
By signing your commit, you are certifying that:
|
||||
|
||||
- `git fetch upstream` - this gets the current state of the original repo, without pulling down the changes to your local machine.
|
||||
- `git reset --hard upstream/main` - this resets the state of your local files to match the current state of the original repo.
|
||||
- `git push -f` - this forces the changes to your forked repo (thus making it match the original)
|
||||
- The commit adheres to our [Contributor Covenant](/covenant.md)
|
||||
- You have the right to submit the contribution under our project license.
|
||||
- You understand and agree to our contribution terms.
|
||||
|
||||
> [!NOTE]
|
||||
> You will lose any changes you are currently working on. Do this with care.
|
||||
### 1.4 Contributor Covenant
|
||||
|
||||
Next, use `git checkout -b <branchname>` to create a new branch for your work. It's always a good idea to avoid committing changes directly to your `main` branch - this keeps it clean and avoids errors when updating (above).
|
||||
All contributors are expected to adhere to our Contributor Covenant. The full text of the Contributor Covenant can be found in [its own document](/covenant.md).
|
||||
|
||||
Branch names should follow a convention of `scope/description` where:
|
||||
### 1.5 Licensing of Contributions
|
||||
|
||||
- `scope` is the nature of the changes (eg. `feat` for a new feature, or `docs` for documentation update). This should match the scope of the related issue.
|
||||
- `description` is a brief description of your changes, such as `update-contribs` for updating the contributing guidelines.
|
||||
All contributions to our projects, including but not limited to code, documentation, artwork, and other materials, will be licensed under our global software license. By submitting a contribution, you are agreeing to license your work under the terms of this license.
|
||||
|
||||
Now you are free to work on your code! When you are satisfied with your changes, you can commit them with `git commit -s -m "message"`, where:
|
||||
- Our global software license: Naomi's Public License
|
||||
- Full text of the license: https://docs.nhcarrigan.com/#/license
|
||||
|
||||
- `-s` flag signs the commit, to verify the connection with your GitHub account.
|
||||
- `-m` flag sets up the commit message.
|
||||
- `message` is the commit message: a brief (50 character max) message describing what the commit changes.
|
||||
### 1.6 Intellectual Property
|
||||
|
||||
> [!TIP]
|
||||
> If you aren't sure which package manager to use, you can reach out to us in our [chat server](https://chat.nhcarrigan.com).
|
||||
By contributing to our projects, you affirm that:
|
||||
|
||||
### Installing Packages
|
||||
- You own the copyright to your contribution or have authorization from the copyright owner to submit it under our license.
|
||||
- Your contribution does not infringe on any third-party intellectual property rights.
|
||||
- You grant us a perpetual, worldwide, non-exclusive, royalty-free license to use, modify, and distribute your contribution.
|
||||
|
||||
Use `pnpm install` to install all current packages.
|
||||
### 1.7 Legal Compliance
|
||||
|
||||
### Adding Packages
|
||||
Ensure all contributions comply with relevant laws and regulations, including export controls and data protection laws.
|
||||
|
||||
`pnpm install` will allow you to add a new package.
|
||||
### 1.8 Acceptance of Contributions
|
||||
|
||||
When adding a new package, you should use the `--save-exact` flag to pin the package version. The CI will check for unpinned versions when you open a PR.
|
||||
While we appreciate all contributions, we reserve the right to reject any contribution that doesn't meet our standards or align with our project goals. The project maintainers have final say on the inclusion of any contribution.
|
||||
|
||||
If the package is only for development (working on the project), and not needed for production (running the project), you should _also_ use the `--save-dev` flag to add the package to the `devDependencies` section of the `package.json` file.
|
||||
## 2. Secrets Management
|
||||
|
||||
For example:
|
||||
### 2.1 Overview
|
||||
|
||||
```bash
|
||||
pnpm i --save-dev --save-exact @types/naomi # Adds a dev dependency
|
||||
pnpm i --save-exact naomi # Adds a production dependency
|
||||
Proper management of secrets is crucial for maintaining the security and integrity of our projects. We use 1Password as our centralized secrets management solution. This section outlines our policies and procedures for handling secrets.
|
||||
|
||||
### 2.2 General Policy
|
||||
|
||||
- Plain-text secrets should never be stored on personal machines, development environments, or our servers.
|
||||
- All secrets should be stored and managed through 1Password.
|
||||
|
||||
### 2.3 1Password Setup and Usage
|
||||
|
||||
To work with secrets locally, you must set up the 1Password CLI (Command Line Interface) and integrate it with your 1Password desktop application.
|
||||
|
||||
#### 2.3.1 Setup Instructions
|
||||
|
||||
- Install the 1Password desktop application if you haven't already.
|
||||
- Install the 1Password CLI. Instructions can be found at: https://developer.1password.com/docs/cli/get-started/
|
||||
- Authenticate the CLI with your 1Password account.
|
||||
- Configure your development environment to use the 1Password CLI for secret retrieval. https://developer.1password.com/docs/cli/secrets-environment-variables/
|
||||
|
||||
#### 2.3.2 Best Practices
|
||||
|
||||
- Use environment variables to store secrets retrieved from 1Password during runtime.
|
||||
- Never log or display secrets in any form.
|
||||
- Rotate secrets regularly.
|
||||
|
||||
### 2.4 Handling Secrets in Code
|
||||
|
||||
- Development environment variables should be set in `dev.env` - changes to this file should generally be excluded from your contributions.
|
||||
- Use 1Password references instead of actual secret values in configuration files.
|
||||
|
||||
## 3. Setting Up Your Development Environment
|
||||
|
||||
### 3.1 Forking the Repository
|
||||
|
||||
1. Navigate to the original repository on Codeberg.
|
||||
2. Click the "Fork" button in the upper right corner of the page.
|
||||
3. Select your account as the destination for the fork.
|
||||
4. Wait for Codeberg to create a copy of the repository in your account.
|
||||
|
||||
### 3.2 Cloning Your Fork
|
||||
|
||||
1. Go to your forked repository on Codeberg.
|
||||
2. Click the "Code" button and copy the URL (HTTPS or SSH, depending on your setup).
|
||||
3. Open your terminal or command prompt.
|
||||
4. Navigate to the directory where you want to store the project.
|
||||
5. Run the following command, replacing `<url>` with the URL you copied:
|
||||
|
||||
```
|
||||
git clone <url>
|
||||
```
|
||||
|
||||
6. Enter your GitHub credentials if prompted.
|
||||
|
||||
### 3.3 Setting Up the Upstream Remote
|
||||
|
||||
Adding the original repository as an upstream remote allows you to easily keep your fork up-to-date.
|
||||
|
||||
1. Change into the project directory:
|
||||
|
||||
```
|
||||
cd <project-name>
|
||||
```
|
||||
|
||||
2. Add the upstream remote:
|
||||
|
||||
```
|
||||
git remote add upstream <original-repository-url>
|
||||
```
|
||||
|
||||
Replace `<original-repository-url>` with the **git** URL of the original repository.
|
||||
|
||||
3. Verify the new remote:
|
||||
|
||||
```
|
||||
git remote -v
|
||||
```
|
||||
|
||||
You should see entries for both `origin` (your fork) and `upstream`.
|
||||
|
||||
### 3.4 Keeping Your Fork Up-to-Date
|
||||
|
||||
Regularly update your fork to incorporate changes from the upstream repository:
|
||||
|
||||
1. Fetch the branches and commits from the upstream repository:
|
||||
|
||||
```
|
||||
git fetch upstream
|
||||
```
|
||||
|
||||
2. Check out your fork's local main branch:
|
||||
|
||||
```
|
||||
git checkout main
|
||||
```
|
||||
|
||||
3. Merge changes from upstream/main into your local main branch:
|
||||
|
||||
```
|
||||
git merge upstream/main
|
||||
```
|
||||
|
||||
### 3.5 Troubleshooting
|
||||
|
||||
If you encounter any issues during setup:
|
||||
|
||||
1. Check the project's FAQ or troubleshooting guide (if available).
|
||||
2. Search for similar issues in the project's issue tracker.
|
||||
3. If the problem persists, open a new issue with detailed information about the problem and steps to reproduce it.
|
||||
|
||||
You can also reach out to us in our Discord server: https://chat.nhcarrigan.com
|
||||
|
||||
## 4. Claiming an Issue
|
||||
|
||||
### 4.1 Finding an Issue
|
||||
|
||||
1. Navigate to the project's issue tracker.
|
||||
2. Browse open issues or use filters to find tasks that interest you.
|
||||
3. Read the issue description thoroughly to understand the requirements and context.
|
||||
|
||||
### 4.2 Expressing Interest
|
||||
|
||||
1. If you find an issue you'd like to work on, comment on the issue expressing your interest.
|
||||
2. Example comment: "I'm interested in working on this issue. May I be assigned to it?"
|
||||
3. Wait for a project maintainer to respond and potentially assign the issue to you.
|
||||
|
||||
### 4.3 Issue Assignment
|
||||
|
||||
- Project maintainers will assign issues based on the order of interest and the contributor's experience level.
|
||||
- Once assigned, you'll see your username in the "Assignees" section of the issue.
|
||||
|
||||
### 4.4 Already Assigned Issues
|
||||
|
||||
If an issue is already assigned:
|
||||
|
||||
1. Check the assignee and the last activity date.
|
||||
2. If you're still interested in contributing, you can:
|
||||
a. Comment on the issue expressing your interest to collaborate.
|
||||
b. Reach out to the assigned person to offer assistance or discuss collaboration.
|
||||
|
||||
We encourage collaboration and pair programming on complex issues!
|
||||
|
||||
### 4.5 Working on the Issue
|
||||
|
||||
1. Once assigned, create a new branch in your fork for this specific issue.
|
||||
2. Use a descriptive branch name, e.g., `fix/issue-123-button-alignment`.
|
||||
3. Make your changes, committing regularly with clear, concise commit messages.
|
||||
4. Push your changes to your fork.
|
||||
5. Open a pull request when ready for review (see Pull Request Guidelines in section [X]).
|
||||
|
||||
### 4.6 Keeping the Community Updated
|
||||
|
||||
1. Provide regular updates on your progress in the issue comments.
|
||||
2. If you encounter obstacles, don't hesitate to ask for help in the issue thread.
|
||||
3. If you need to step away from an issue, please let us know so it can be reassigned if necessary.
|
||||
|
||||
### 4.7 Time Management
|
||||
|
||||
- Try to start working on the issue within a few days of assignment.
|
||||
- If you haven't made progress within a week, the issue may be unassigned to keep the project moving forward.
|
||||
- If you need more time, communicate this in the issue comments.
|
||||
|
||||
### 4.8 Multiple Issues
|
||||
|
||||
- We encourage focusing on one issue at a time to ensure quality and timely completion.
|
||||
- If you want to work on multiple issues, please complete one before requesting assignment to another.
|
||||
|
||||
### 4.9 Issue Labels
|
||||
|
||||
Pay attention to issue labels for additional context:
|
||||
|
||||
- `good first issue`: Suitable for newcomers to the project or open source.
|
||||
- `help wanted`: Issues where we're actively seeking community help.
|
||||
- `staff only`: Issue that will require staff attention.
|
||||
|
||||
### 4.10 Respectful Communication
|
||||
|
||||
- Always be courteous and professional in issue discussions.
|
||||
- Respect the decisions of project maintainers regarding issue assignments and priorities.
|
||||
- If you disagree with something, express your thoughts constructively and be open to feedback.
|
||||
|
||||
## 5. Working on Your Issue
|
||||
|
||||
### 5.1 Updating Your Fork
|
||||
|
||||
Before starting work, ensure your forked version is up to date with the original repository. If you've set up the `upstream` remote as mentioned in Section 3, follow these steps:
|
||||
|
||||
1. Open your terminal and navigate to your project's root directory.
|
||||
2. Run the following commands:
|
||||
|
||||
```bash
|
||||
git fetch upstream
|
||||
git merge upstream/main
|
||||
```
|
||||
|
||||
### 5.2 Creating a New Branch
|
||||
|
||||
Always create a new branch for your work:
|
||||
|
||||
1. Create and switch to a new branch:
|
||||
|
||||
```bash
|
||||
git checkout -b <branchname>
|
||||
```
|
||||
|
||||
2. Follow the branch naming convention: `type/description`
|
||||
|
||||
- `type`: Indicates the nature of the changes (e.g., `feat`, `fix`, `docs`, `refactor`)
|
||||
- `description`: A brief, hyphenated description of the changes
|
||||
|
||||
Examples:
|
||||
|
||||
- `feat/add-login-page`
|
||||
- `fix/resolve-memory-leak`
|
||||
- `docs/update-api-endpoints`
|
||||
|
||||
### 5.3 Making Changes
|
||||
|
||||
1. Make your code changes, following the project's coding standards and guidelines.
|
||||
2. Regularly commit your changes with clear, concise messages.
|
||||
3. Push your changes to your fork periodically:
|
||||
|
||||
```bash
|
||||
git push origin <branchname>
|
||||
```
|
||||
|
||||
### 5.4 Committing Changes
|
||||
|
||||
When you're ready to commit your changes:
|
||||
|
||||
1. Stage your changes:
|
||||
|
||||
```bash
|
||||
git add .
|
||||
```
|
||||
|
||||
Or stage specific files:
|
||||
|
||||
```bash
|
||||
git add <file1> <file2>
|
||||
```
|
||||
|
||||
2. Commit:
|
||||
|
||||
```bash
|
||||
git commit
|
||||
```
|
||||
|
||||
### 5.5 Commit Message Guidelines
|
||||
|
||||
- Follow Conventional Commit standards: `type(scope): description` such as `docs: update contributing guidelines`.
|
||||
- Use the present tense ("Add feature" not "Added feature")
|
||||
- Use the imperative mood ("Move cursor to..." not "Moves cursor to...")
|
||||
- Limit the first line to 50 characters or less
|
||||
- Additonal information can be included in the body
|
||||
- Do NOT reference issues/PRs in your commit
|
||||
|
||||
Example:
|
||||
|
||||
```
|
||||
feat: add user authentication system
|
||||
|
||||
Implement JWT-based authentication for API endpoints.
|
||||
```
|
||||
|
||||
### Oops! I used `npm` when I should have used `pnpm`
|
||||
### 5.7 Testing Your Changes
|
||||
|
||||
No worries! A quick note that if you ran `npm install` or `npm ci`, then `pnpm` will ignore the installed packages. You will need to run the following commands to get back in sync:
|
||||
- Run any existing tests to ensure your changes haven't broken anything:
|
||||
|
||||
```bash
|
||||
pnpm test # or the appropriate test command for your project
|
||||
```
|
||||
|
||||
- Add new tests for your changes if applicable.
|
||||
|
||||
### 5.8 Documentation
|
||||
|
||||
- Update relevant documentation to reflect your changes.
|
||||
- If you've added new features, include appropriate documentation.
|
||||
|
||||
### 5.9 Preparing for Pull Request
|
||||
|
||||
Before submitting a pull request:
|
||||
|
||||
1. Check that your code adheres to the project's style guidelines - the linters should pass.
|
||||
1. Ensure the build succeeds.
|
||||
1. Ensure all tests pass.
|
||||
1. Review your changes and commit history.
|
||||
|
||||
If you're unsure about any part of the process or need help, don't hesitate to ask in our [chat server](https://chat.nhcarrigan.com). Our community is here to support you!
|
||||
|
||||
## 6. Submitting a Pull Request
|
||||
|
||||
### 6.1 Pushing Your Changes
|
||||
|
||||
1. Push your changes to your forked repository:
|
||||
|
||||
```bash
|
||||
rm -rf package-lock.json node_modules
|
||||
pnpm install
|
||||
git push -u origin <branchname>
|
||||
```
|
||||
|
||||
## Testing Changes
|
||||
- `-u` sets the upstream, linking your local branch to the remote branch
|
||||
- `origin` specifies your forked repository as the destination
|
||||
- `<branchname>` is the name of your local branch
|
||||
|
||||
> [!NOTE]
|
||||
> Make sure to follow the steps above to check which package manager the project uses, and use the appropriate commands.
|
||||
2. Ensure the push is successful and your changes appear in your forked repository on Codeberg.
|
||||
|
||||
Many of our projects will have continuous integration (CI) checks that run on a pull request. To ensure your changes will pass, you can often test these locally.
|
||||
### 6.2 Creating the Pull Request
|
||||
|
||||
If the project has a `package.json` file, check for the following entries in the `scripts` property:
|
||||
1. Navigate to your forked repository on Codeberg.
|
||||
2. You should see a prompt to create a pull request for your recently pushed branch. If not, click on the "Pull requests" tab and then the "New pull request" button.
|
||||
3. Ensure the base repository is the original project repository and the base branch is `main`.
|
||||
4. Select your fork as the head repository and your recently pushed branch as the compare branch.
|
||||
|
||||
- `build` - Running `pnpm run build` will confirm that a project successfully compiles. This is common in our TypeScript projects.
|
||||
- `lint` - Running `pnpm run lint` will ensure that the code style is correct.
|
||||
- `start` - Running `pnpm start` will confirm that the project boots up successfully.
|
||||
- `test` - Running `pnpm test` will ensure that the unit and functional tests all pass.
|
||||
### 6.3 Filling Out the Pull Request
|
||||
|
||||
You can also check the `.github/workflows` directory for `.yml` files. These files will describe the actual CI checks that run on your pull request.
|
||||
1. Change the title of your pull request to be a conventional commit message summarising all changes in that PR
|
||||
2. Fill out the pull request description with as much information as possible. This typically includes:
|
||||
- A clear description of the changes
|
||||
- The issue number(s) your pull request addresses
|
||||
- Any additional context or explanations
|
||||
3. If your changes include visual elements, consider adding screenshots or GIFs to illustrate the modifications.
|
||||
|
||||
Ensuring these checks pass **before** submitting a pull request will streamline our review process.
|
||||
### 6.4 Pull Request Best Practices
|
||||
|
||||
## Submitting a Pull Request
|
||||
- Ensure your PR addresses only one issue or adds one feature. If you have made multiple unrelated changes, consider breaking them into separate pull requests.
|
||||
- Double-check that all tests pass and there are no conflicts with the base branch.
|
||||
- If your PR is a work in progress, mark it as a draft pull request.
|
||||
|
||||
Once you have all of your changes made and committed, you can push them to your forked repository! Use `git push -u origin <branchname>`, where:
|
||||
### 6.5 After Submitting
|
||||
|
||||
- `-u` tells `git` to set the upstream (see below)
|
||||
- `origin` tells `git` to push to your fork
|
||||
- `branchname` tells `git` to push to a branch - this MUST match the name of the branch you created locally.
|
||||
- Keep an eye on your pull request for any comments, requests for changes, or approval.
|
||||
- Be prepared to make additional commits to your branch if changes are requested.
|
||||
|
||||
> [!NOTE]
|
||||
> By setting the upstream, any subsequent `push` commands can be done with `git push`, and it will be pushed to the same branch.
|
||||
### 6.6 Updating Your Pull Request
|
||||
|
||||
Now you can open the pull request! You should see a quick option to do so appear at the top of your repository on GitHub. Click the "Pull Request" button to have GitHub automatically set up the pull request.
|
||||
If you need to make changes to your pull request:
|
||||
|
||||
First, change the title of the pull request to match your branch name (following the conventions above!). Then, follow the instructions in the preset Pull Request template (make sure to complete any steps listed!).
|
||||
1. Make the required changes in your local branch.
|
||||
2. Commit the changes.
|
||||
3. Push the new commits to your fork:
|
||||
|
||||
Congratulations! You've submitted your first pull request! We will review it as quickly as possible, so keep an eye out for approvals (or requested changes).
|
||||
```bash
|
||||
git push origin <branchname>
|
||||
```
|
||||
|
||||
## Pull Request Reviews
|
||||
4. The pull request will automatically update with your new commits.
|
||||
|
||||
All pull requests require a review before being merged. Most reviews will come from Naomi, but some projects may have additional staff who can submit reviews.
|
||||
### 6.7 Pull Request Etiquette
|
||||
|
||||
If your pull request is approved, it will be merged and deployed depending on the project's deployment schedule and pipeline.
|
||||
- Be patient. Maintainers are often managing multiple priorities.
|
||||
- Be open to feedback and willing to make changes.
|
||||
- Respond promptly to any questions or requests from reviewers.
|
||||
- If there's a delay in your ability to respond or make requested changes, leave a comment explaining the situation.
|
||||
|
||||
If your pull request requires additional changes or information, we ask that you apply the changes promptly. Contributions with outstanding change requests that receive no activity within a week will be closed as stale.
|
||||
### 6.8 Merging and Closing
|
||||
|
||||
## Other Contributions
|
||||
- Once your pull request is approved, a maintainer will merge it into the main project.
|
||||
- After merging, you can delete your branch from your fork if you won't be using it anymore.
|
||||
- Celebrate your contribution to the project!
|
||||
|
||||
If you aren't comfortable with the codebase, or would like to contribute in other ways, we have options for that!
|
||||
## 7. Pull Request Reviews
|
||||
|
||||
- Documentation Updates: You are always welcome to update our documentation (like this file!) if you see any typos or anything that can be clarified.
|
||||
- Feature Requests: If you have ideas for new features or improvements, feel free to open an issue!
|
||||
- Bug Reports: We rely on our users to help identify bugs - if you see something wrong, please let us know with an issue!
|
||||
### 7.1 Review Process Overview
|
||||
|
||||
## Holopin Badges
|
||||
- All pull requests require at least one approved review before merging.
|
||||
- Reviews are primarily conducted by Naomi, but some projects may have additional reviewers.
|
||||
- The review process helps maintain code quality, consistency, and project standards.
|
||||
|
||||
![Virtual badges featuring Naomi, Becca, and Rosalia](https://cdn.nhcarrigan.com/projects/holopin.png)
|
||||
### 7.2 What Reviewers Look For
|
||||
|
||||
Contributors are eligible to receive digital [Holopin](https://www.holopin.io/@naomis-novas) badges for their contributions to our projects. To claim your badge, fill out the template in our [Discord community](https://chat.nhcarrigan.com)!
|
||||
Reviewers typically assess the following aspects:
|
||||
|
||||
1. Code quality and style adherence
|
||||
2. Functionality and correctness of the implementation
|
||||
3. Test coverage and passing status
|
||||
4. Documentation updates (if applicable)
|
||||
5. Adherence to project-specific guidelines
|
||||
6. Potential impact on existing features or performance
|
||||
|
||||
### 7.3 Types of Review Outcomes
|
||||
|
||||
1. **Approved**: Your pull request is ready to be merged.
|
||||
2. **Changes Requested**: Modifications or additional information is needed before approval.
|
||||
3. **Commented**: The reviewer has provided feedback but hasn't explicitly approved or requested changes.
|
||||
|
||||
### 7.4 Responding to Review Feedback
|
||||
|
||||
If changes are requested:
|
||||
|
||||
1. Read all comments carefully to understand the requested modifications.
|
||||
2. Ask for clarification if any feedback is unclear.
|
||||
3. Make the necessary changes in your local branch.
|
||||
4. Commit and push the changes to update your pull request.
|
||||
5. Respond to each comment, explaining how you addressed the feedback or why you chose a different approach.
|
||||
|
||||
### 7.5 Best Practices for Handling Reviews
|
||||
|
||||
- Respond promptly to review comments (ideally within a few days).
|
||||
- Be open to constructive criticism and willing to make changes.
|
||||
- If you disagree with a suggestion, explain your reasoning politely and be open to discussion.
|
||||
- Use the review process as a learning opportunity to improve your coding skills.
|
||||
|
||||
### 7.6 Timelines and Expectations
|
||||
|
||||
- We strive to review pull requests as quickly as possible, typically within a week.
|
||||
- If your pull request requires changes, please address them promptly.
|
||||
- Pull requests with outstanding change requests and no activity for a week may be closed as stale.
|
||||
- If you need more time to address changes, communicate this in the pull request comments to prevent your contribution from being closed.
|
||||
|
||||
### 7.7 Multiple Iterations
|
||||
|
||||
- Complex changes may require multiple rounds of reviews and revisions.
|
||||
- Stay engaged throughout the process and be patient if additional iterations are needed.
|
||||
|
||||
### 7.8 Learning from the Review Process
|
||||
|
||||
- Take note of common feedback to improve future contributions.
|
||||
- Consider reviewing other pull requests to gain insights into the project's standards and practices.
|
||||
|
||||
### 7.9 After Approval
|
||||
|
||||
Once your pull request is approved:
|
||||
|
||||
1. It will be merged into the main branch by a project maintainer.
|
||||
2. Depending on the project's deployment pipeline, your changes may be deployed immediately or as part of the next release cycle.
|
||||
|
||||
Thank you for providing that section. I'll expand and improve it to make it more comprehensive and encourage a wider range of contributions. Here's an enhanced version:
|
||||
|
||||
## 8. Other Contributions
|
||||
|
||||
We value all types of contributions, not just code. There are many ways to contribute to our project, regardless of your technical experience or comfort level with the codebase. Here are several ways you can make a meaningful impact:
|
||||
|
||||
### 8.1 Documentation Updates
|
||||
|
||||
Clear and accurate documentation is crucial for any project. You can help by:
|
||||
|
||||
- Fixing typos, grammatical errors, or unclear phrasing
|
||||
- Adding examples or clarifying existing explanations
|
||||
- Creating new documentation for undocumented features
|
||||
- Improving README files, API documentation, or user guides
|
||||
|
||||
### 8.2 Feature Requests
|
||||
|
||||
Your ideas can help shape the future of the project. To suggest a new feature:
|
||||
|
||||
1. Check existing issues to ensure your idea hasn't been proposed
|
||||
1. Clearly describe the feature and its potential benefits
|
||||
1. If possible, outline how the feature might be implemented
|
||||
|
||||
> [!TIP]
|
||||
> Consider discussing your idea in our community chat before creating an issue to gather initial feedback.
|
||||
|
||||
### 8.3 Bug Reports
|
||||
|
||||
Identifying and reporting bugs is a valuable contribution. When reporting a bug:
|
||||
|
||||
1. Search existing issues to avoid duplicates
|
||||
1. Provide a clear, concise description of the problem
|
||||
1. Include steps to reproduce the bug
|
||||
1. Describe the expected behavior and what actually happened
|
||||
1. If possible, include screenshots, error messages, or code samples
|
||||
|
||||
### 8.4 User Support
|
||||
|
||||
Helping other users is a great way to contribute to the community:
|
||||
|
||||
- Answer questions in our Discord server or other community platforms
|
||||
- Share your knowledge and experiences with the project
|
||||
- Guide new users through common issues or setup processes
|
||||
- Create tutorials or blog posts about using the project
|
||||
|
||||
### 8.5 Design Contributions
|
||||
|
||||
If you have design skills, you can contribute by:
|
||||
|
||||
- Creating or improving project logos or icons
|
||||
- Designing user interface mockups for new features
|
||||
- Improving the overall user experience and accessibility
|
||||
- Creating infographics or visual aids for documentation
|
||||
|
||||
### 8.6 Testing and Quality Assurance
|
||||
|
||||
Help improve the project's stability by:
|
||||
|
||||
- Testing new features or bug fixes
|
||||
- Performing usability testing and providing feedback
|
||||
- Writing or improving automated tests
|
||||
- Identifying edge cases or potential security issues
|
||||
|
||||
### 8.7 Community Building
|
||||
|
||||
Foster a welcoming and inclusive community by:
|
||||
|
||||
- Welcoming new contributors and helping them get started
|
||||
- Organizing or participating in community events or meetups
|
||||
- Promoting the project on social media or relevant forums
|
||||
- Helping to moderate community discussions
|
||||
|
||||
### 8.8 Internationalization and Localization
|
||||
|
||||
Make the project accessible to a global audience:
|
||||
|
||||
- Translate user interfaces
|
||||
- Provide localized documentation
|
||||
- Ensure the project supports multiple languages and cultures
|
||||
|
||||
### 8.9 Code Reviews
|
||||
|
||||
Even if you're not comfortable making code changes, you can:
|
||||
|
||||
- Review pull requests for documentation or small changes
|
||||
- Provide feedback on proposed features or bug fixes
|
||||
- Help ensure code style and convention consistency
|
||||
|
||||
### 8.10 Fundraising and Sponsorship
|
||||
|
||||
If you have connections or experience in this area:
|
||||
|
||||
- Help identify potential sponsors or grants
|
||||
- Assist with writing grant applications
|
||||
- Organize fundraising events or campaigns
|
||||
|
||||
Or even make a donation yourself!
|
||||
|
||||
### 8.11 Mentoring
|
||||
|
||||
Share your knowledge and experience:
|
||||
|
||||
- Mentor new contributors
|
||||
- Create learning resources for the project
|
||||
- Participate in or organize coding workshops related to the project
|
||||
|
||||
Remember, all contributions, big or small, are valuable to the project. Don't hesitate to get involved in any way you feel comfortable. If you have any questions about how to contribute or need help getting started, please reach out to us in our Discord server or through the project's communication channels.
|
||||
|
42
docs/covenant.md
Normal file
42
docs/covenant.md
Normal file
@ -0,0 +1,42 @@
|
||||
# nhcarrigan Contributor Covenant
|
||||
|
||||
**Effective 7 July 2024**
|
||||
|
||||
Copyright (C) 2024 nhcarrigan and its contributors.
|
||||
|
||||
Everyone is permitted to copy and distribute verbatim copies of this
|
||||
license document, but changing it is not allowed.
|
||||
|
||||
## nhcarrigan Contributor Covenant 1.0
|
||||
|
||||
By making a contribution to this project I certify that:
|
||||
|
||||
<ol type="a">
|
||||
<li>
|
||||
I have read, understood, and agree to abide by the project's Code of Conduct in its entirety.
|
||||
</li>
|
||||
<li>
|
||||
My contribution and participation align with the principles outlined in the Code of Conduct, including respect for all community members regardless of their identity or background.
|
||||
</li>
|
||||
<li>
|
||||
I have the right to submit any code, documentation, or other content under the project's designated license.
|
||||
</li>
|
||||
<li>
|
||||
If my contribution is based on previous work covered under an open source license, I have the right to submit that work with modifications under the project's license.
|
||||
</li>
|
||||
<li>
|
||||
Any contribution provided to me by another person for submission to this project has been done so with certification of points <code>a</code> through <code>d</code>, and I have not modified it.
|
||||
</li>
|
||||
<li>
|
||||
I understand that my contributions may be logged publicly, and that moderation actions taken in response to Code of Conduct violations may be recorded in the community's public moderation log.
|
||||
</li>
|
||||
<li>
|
||||
I understand and agree that this project and the contribution are public and that a record of the contribution (including all personal information I submit with it) is maintained indefinitely and may be redistributed consistent with this project or the open source license(s) involved.
|
||||
</li>
|
||||
<li>
|
||||
I acknowledge that community leaders have the right and responsibility to remove, edit, or reject my contributions if they do not align with this certificate or the project's Code of Conduct.
|
||||
</li>
|
||||
<li>
|
||||
I agree to release my contribution to nhcarrigan pursuant to the Terms of Service.
|
||||
</li>
|
||||
</ol>
|
121
docs/dmca.md
Normal file
121
docs/dmca.md
Normal file
@ -0,0 +1,121 @@
|
||||
# DMCA and Intellectual Property Compliance Policy
|
||||
|
||||
**Effective 7 July 2024**
|
||||
|
||||
## 1. General Principles
|
||||
|
||||
- Respect for intellectual property rights is fundamental to our community's ethos and operations.
|
||||
- All community members, including users, contributors, and administrators, are expected to comply with applicable copyright laws, trademark regulations, and licensing terms.
|
||||
- This policy aims to protect the rights of content creators while fostering an environment of innovation and knowledge sharing.
|
||||
- Ignorance of the law or this policy is not considered a valid excuse for non-compliance.
|
||||
|
||||
## 2. Sharing Copyrighted Material
|
||||
|
||||
- Do not share copyrighted material without explicit permission from the copyright holder or a valid license.
|
||||
- When sharing is permitted, always include proper attribution and adhere to any specified terms of use.
|
||||
- Linking to legitimately published content is generally acceptable, but copying and pasting substantial portions is discouraged unless explicitly allowed by the copyright holder.
|
||||
- Be aware that even user-generated content on social media platforms may be copyrighted.
|
||||
- When in doubt about the copyright status of material, err on the side of caution and seek permission or clarification.
|
||||
|
||||
## 3. Fair Use and Educational Purposes
|
||||
|
||||
- Limited use of copyrighted material for commentary, criticism, news reporting, teaching, scholarship, or research may be permissible under fair use doctrines.
|
||||
- When relying on fair use, clearly indicate the source and purpose of the use.
|
||||
- Fair use is determined on a case-by-case basis, considering factors such as:
|
||||
- The purpose and character of the use (commercial vs. non-profit educational)
|
||||
- The nature of the copyrighted work
|
||||
- The amount and substantiality of the portion used
|
||||
- The effect of the use upon the potential market for the copyrighted work
|
||||
- Educational use does not automatically qualify as fair use; consider all factors carefully.
|
||||
|
||||
## 4. Proper Attribution
|
||||
|
||||
- When using or referencing others' work, always provide clear and comprehensive attribution.
|
||||
- Attribution should include:
|
||||
- The name of the creator or author
|
||||
- The title of the work
|
||||
- The source (e.g., website URL, book title, journal name)
|
||||
- The date of publication or creation (if available)
|
||||
- Any applicable license terms
|
||||
- For digital content, consider using hyperlinks to the original source when possible.
|
||||
- Follow citation guidelines appropriate to your field or the context of use (e.g., APA, MLA, Chicago).
|
||||
|
||||
## 5. Original Content Creation and Sharing
|
||||
|
||||
- Community members are encouraged to create and share original content.
|
||||
- By sharing original content in our community spaces, you grant the community a non-exclusive, worldwide, royalty-free right to use, reproduce, modify, adapt, publish, translate, distribute, and display the content within the community.
|
||||
- You retain copyright of your original work unless explicitly stated otherwise.
|
||||
- Consider adding a clear copyright notice to your original works.
|
||||
- Be mindful of using third-party content (e.g., images, music) in your original creations, ensuring you have the right to incorporate such elements.
|
||||
|
||||
## 6. Open Source and Creative Commons
|
||||
|
||||
- We encourage the use of open source licenses and Creative Commons for shared content where appropriate.
|
||||
- When using open source or Creative Commons licensed material, adhere strictly to the terms of the license.
|
||||
- Familiarize yourself with different types of open source and Creative Commons licenses and their requirements (e.g., attribution, share-alike, non-commercial use).
|
||||
- Provide clear license information when sharing your own content under open source or Creative Commons terms.
|
||||
|
||||
## 7. Code Snippets and Examples
|
||||
|
||||
- Short code snippets shared for educational or troubleshooting purposes are generally acceptable under fair use.
|
||||
- For larger code samples, include license information and attribution if taken from other sources.
|
||||
- When sharing your own code, consider using an appropriate open source license.
|
||||
- Be aware that copying entire programs or substantial portions of code may infringe copyright, even if source attribution is provided.
|
||||
|
||||
## 8. Plagiarism
|
||||
|
||||
- Presenting others' work as your own is strictly prohibited and considered a serious offense.
|
||||
- This includes code, text, images, ideas, and any other form of content.
|
||||
- Plagiarism can have serious consequences, including loss of community privileges, academic penalties, or legal action.
|
||||
- Always cite your sources and use quotation marks for direct quotes.
|
||||
|
||||
## 9. Trademark Usage
|
||||
|
||||
- Respect trademark rights when referencing products, services, or organizations.
|
||||
- Use trademark symbols (™, ®) appropriately when referring to trademarked names.
|
||||
- Avoid using trademarks in a way that suggests endorsement or affiliation without permission.
|
||||
|
||||
## 10. Digital Millennium Copyright Act (DMCA) Compliance
|
||||
|
||||
- We comply with the DMCA and maintain a policy for addressing claims of copyright infringement.
|
||||
- If you believe your copyrighted work has been improperly used within our community, submit a DMCA takedown notice to DMCA@nhcarrigan.com.
|
||||
- DMCA takedown notices must include:
|
||||
- Identification of the copyrighted work claimed to have been infringed
|
||||
- Identification of the allegedly infringing material
|
||||
- Contact information for the complainant
|
||||
- A statement of good faith belief that the use is not authorized
|
||||
- A statement, under penalty of perjury, that the information in the notice is accurate and that the complainant is authorized to act on behalf of the copyright owner
|
||||
- We will promptly investigate all legitimate DMCA takedown notices and take appropriate action, which may include content removal or account suspension.
|
||||
|
||||
## 11. Counter-Notifications
|
||||
|
||||
- If you believe your content was wrongly removed due to a DMCA takedown notice, you may submit a counter-notification.
|
||||
- Counter-notifications must include:
|
||||
- Identification of the removed material and its location before removal
|
||||
- A statement under penalty of perjury that you have a good faith belief the material was removed by mistake or misidentification
|
||||
- Your name, address, and telephone number
|
||||
- A statement that you consent to the jurisdiction of the federal district court for the judicial district in which you reside
|
||||
|
||||
## 12. Repeat Infringer Policy
|
||||
|
||||
- We maintain a repeat infringer policy to ensure ongoing DMCA compliance.
|
||||
- Users who repeatedly infringe copyrights may have their accounts terminated.
|
||||
- We keep records of DMCA notices and counter-notifications to identify repeat infringers.
|
||||
|
||||
## 13. Education and Awareness
|
||||
|
||||
- We are committed to educating our community about intellectual property rights and responsibilities.
|
||||
- Regular updates and resources on copyright law and best practices will be provided.
|
||||
- Members are encouraged to seek clarification on any aspect of this policy they find unclear.
|
||||
|
||||
## 14. Policy Updates
|
||||
|
||||
- This policy may be updated periodically to reflect changes in law, technology, or community needs.
|
||||
- Continued use of our community platforms constitutes acceptance of the current policy.
|
||||
|
||||
## 15. Disclaimer
|
||||
|
||||
- This policy is not exhaustive and does not constitute legal advice.
|
||||
- Users are encouraged to seek independent legal counsel for specific intellectual property matters.
|
||||
|
||||
By participating in our community, you agree to abide by this DMCA and Intellectual Property Compliance Policy. Failure to comply may result in content removal, account suspension, or other appropriate actions as determined by community administrators.
|
@ -1,7 +1,55 @@
|
||||
# Support Our Work 💜
|
||||
|
||||
We offer quite a few free-to-use projects, and guidance when we're available in various programming communities.
|
||||
**Effective 7 July 2024**
|
||||
|
||||
If you find our work valuable, please consider making a monthly donation on one of our platforms so we can continue to do what we do.
|
||||
We are passionate about creating and maintaining free-to-use projects and providing guidance in various programming communities. Your support helps us continue this mission and expand our efforts.
|
||||
|
||||
| [Discord](https://chat.naomi.lgbt) | [Ko-Fi](https://ko-fi.com/nhcarrigan) | [Patreon](https://www.patreon.com/nhcarrigan) | [GitHub Sponsors](https://github.com/sponsors/naomi-lgbt) |
|
||||
## 1. Why Support Us?
|
||||
|
||||
- **Free Resources**: We offer numerous projects that are free for everyone to use and learn from.
|
||||
- **Community Guidance**: We actively participate in programming communities, offering help and mentorship.
|
||||
- **Open Source Contributions**: Your support enables us to dedicate more time to open source development.
|
||||
- **Continuous Improvement**: Donations help us improve existing projects and create new ones.
|
||||
|
||||
## 2. How Your Support Helps
|
||||
|
||||
- Covers hosting and infrastructure costs
|
||||
- Allows us to dedicate more time to project development and community support
|
||||
- Enables us to invest in better tools and resources
|
||||
- Supports our ongoing education and skill development
|
||||
|
||||
## 3. Ways to Support
|
||||
|
||||
We offer several platforms for monthly donations, allowing you to choose the one that works best for you:
|
||||
|
||||
### 3.1 Discord
|
||||
- Join our community and support us directly
|
||||
- Link: [https://chat.naomi.lgbt](https://chat.naomi.lgbt)
|
||||
- Benefits: Exclusive roles, behind-the-scenes updates
|
||||
|
||||
### 3.2 Ko-Fi
|
||||
- Perfect for one-time or recurring donations
|
||||
- Link: [https://ko-fi.com/nhcarrigan](https://ko-fi.com/nhcarrigan)
|
||||
- Benefits: Public shout-outs, exclusive posts
|
||||
|
||||
### 3.3 Patreon
|
||||
- For those who prefer tier-based support
|
||||
- Link: [https://www.patreon.com/nhcarrigan](https://www.patreon.com/nhcarrigan)
|
||||
- Benefits: Varied rewards based on tier level
|
||||
|
||||
### 3.4 GitHub Sponsors
|
||||
- Support us directly on the platform where we contribute
|
||||
- Link: [https://github.com/sponsors/naomi-lgbt](https://github.com/sponsors/naomi-lgbt)
|
||||
- Benefits: Recognition in GitHub profile, exclusive repository access
|
||||
|
||||
## 4. Other Ways to Help
|
||||
|
||||
- **Spread the Word**: Share our projects and resources with others who might benefit.
|
||||
- **Contribute**: If you have skills to offer, consider contributing to our open source projects.
|
||||
- **Provide Feedback**: Your input helps us improve and refine our work.
|
||||
|
||||
## 5. Thank You!
|
||||
|
||||
Every contribution, no matter the size, makes a significant impact. We deeply appreciate your support and are committed to using it to benefit the wider programming community.
|
||||
|
||||
For any questions about donations or to discuss other support options, please contact us at donors@nhcarrigan.com.
|
||||
|
63
docs/hire.md
63
docs/hire.md
@ -1,11 +1,64 @@
|
||||
# Hire Us
|
||||
|
||||
Do you need someone to build a Discord bot for you? Or a website? How about managing your online community?
|
||||
**Effective 7 July 2024**
|
||||
|
||||
We'd love to meet you and explore opportunities to work together to achieve your goals.
|
||||
We're excited about the opportunity to collaborate with you and contribute to the success of your goals. Our team brings a wealth of experience and a passion for delivering high-quality solutions tailored to your specific needs.
|
||||
|
||||
If you have a quick product idea you've already specced out, or just need some eyes on your community plan, we offer some [basic gigs on Fiverr](https://www.fiverr.com/nhcarrigan).
|
||||
## 1. Our Services
|
||||
|
||||
For something more long-term, complex, or in-depth, we encourage you to [book a 30-minute consultation](https://topmate.io/nhcarrigan/913920).
|
||||
- **Discord Bot Development**: Custom bots to enhance your server's functionality
|
||||
- **Web Development**: From simple websites to complex web applications
|
||||
- **Community Management**: Strategies to grow and maintain thriving online communities
|
||||
- **Technical Consulting**: Expert advice on your tech-related projects and decisions
|
||||
|
||||
Or, if you want private 1-on-1 mentoring, we offer a full [mentorship package](https://topmate.io/nhcarrigan/913932)
|
||||
## 2. Engagement Options
|
||||
|
||||
We offer flexible ways to work together, catering to projects of all sizes and complexities:
|
||||
|
||||
### 2.1. Quick Sync (15 minutes)
|
||||
|
||||
For those with a well-defined product idea or seeking a quick review of their community plan, book a [quick sync](https://topmate.io/nhcarrigan/913917).
|
||||
|
||||
- Ideal for: Initial project discussions, quick advice, or community plan reviews
|
||||
- Duration: 15 minutes
|
||||
- Outcome: Rapid insights and direction for your project
|
||||
|
||||
### 2.2. In-Depth Consultation (30 minutes)
|
||||
|
||||
For more complex, long-term, or in-depth projects, we recommend booking an [in-depth consultation](https://topmate.io/nhcarrigan/913920).
|
||||
|
||||
- Ideal for: Detailed project planning, technical strategy discussions, or exploring long-term collaborations
|
||||
- Duration: 30 minutes
|
||||
- Outcome: Comprehensive project assessment and tailored recommendations
|
||||
|
||||
### 2.3. Private Mentorship Package
|
||||
|
||||
For those seeking personalized guidance and skill development, we offer a full [mentorship package](https://topmate.io/nhcarrigan/913932).
|
||||
|
||||
- Ideal for: Individuals looking to enhance their skills in development, community management, or related areas
|
||||
- Duration: Multiple sessions as per the package
|
||||
- Outcome: Personalized learning path, hands-on projects, and ongoing support
|
||||
|
||||
### 2.4. Fiverr Booking Option
|
||||
|
||||
For those who prefer to book through Fiverr, we offer the same consultation services through our [Fiverr package](https://www.fiverr.com/nhcarrigan/schedule-a-30-minute-one-on-one-with-you-to-discuss-your-consulting-needs).
|
||||
|
||||
- Platform: Fiverr
|
||||
- Services: Same as above, as tiers in a single gig
|
||||
- Benefit: Utilize Fiverr's platform features and protection
|
||||
|
||||
## 3. Why Choose Us?
|
||||
|
||||
- **Expertise**: Years of experience in development and community management
|
||||
- **Flexibility**: Multiple engagement options to suit your needs and preferences
|
||||
- **Personalized Approach**: Tailored solutions for your unique challenges
|
||||
- **Commitment to Quality**: Delivering high-value insights and solutions in every interaction
|
||||
|
||||
## 4. Ready to Get Started?
|
||||
|
||||
1. For a quick discussion: [Book a 15-minute sync](https://topmate.io/nhcarrigan/913917)
|
||||
2. For in-depth consultations: [Schedule a 30-minute slot](https://topmate.io/nhcarrigan/913920)
|
||||
3. For ongoing mentorship: [Explore our mentorship package](https://topmate.io/nhcarrigan/913932)
|
||||
4. To book via Fiverr: [Check out our Fiverr gig](https://www.fiverr.com/nhcarrigan/schedule-a-30-minute-one-on-one-with-you-to-discuss-your-consulting-needs)
|
||||
|
||||
Not sure which option is right for you? Feel free to contact with any questions. We're excited to explore how we can help bring your ideas to life and contribute to your success!
|
||||
|
@ -71,7 +71,7 @@
|
||||
loadSidebar: "_navbar.md",
|
||||
autoHeader: true,
|
||||
maxLevel: 2,
|
||||
subMaxLevel: 2,
|
||||
subMaxLevel: 3,
|
||||
homepage: "index.md",
|
||||
auto2top: true,
|
||||
// Plugins
|
||||
|
1281
docs/license.md
1281
docs/license.md
File diff suppressed because it is too large
Load Diff
283
docs/privacy.md
283
docs/privacy.md
@ -1,47 +1,290 @@
|
||||
# Privacy Policy
|
||||
|
||||
> [!TIP]
|
||||
> This privacy policy covers general data use and collection. Projects may have their own, more specific privacy policy, which applies **in addition** to this policy. Changes to this policy, as well as aforementioned project level policies, are retroactive. Use of our applications constitutes an acceptance of the most recent, current version of any applicable policies.
|
||||
**Effective 7 July 2024**
|
||||
|
||||
> [!DANGER]
|
||||
> In the spirit of open source, errors are logged publicly in our Discord community. These logs may include information relevant to the error in question.
|
||||
>
|
||||
> We encourage you to [join our Discord](https://chat.nhcarrigan.com) to see what is logged PRIOR to using our applications.
|
||||
## 1. Overview and Scope
|
||||
|
||||
The use of our applications may require collection of specific data.
|
||||
### 1.1. General Applicability
|
||||
|
||||
## Data Collection
|
||||
This privacy policy ("General Policy") governs the collection, use, storage, and protection of data across all our services, platforms, and applications (collectively referred to as "Services").
|
||||
|
||||
While we do our best to keep documentation up to date, it is entirely possible that an application collects data which are not documented. These terms provide general guidance on how to request or remove your data, or opt out of data collection.
|
||||
### 1.2. Project-Specific Policies
|
||||
|
||||
### Data Collected
|
||||
Individual projects or Services may be subject to additional, project-specific privacy policies ("Project Policies"). These Project Policies apply concurrently with the General Policy. In the event of any conflict between the General Policy and a Project Policy, the stricter privacy protections shall prevail.
|
||||
|
||||
At any time, you may request a confirmation of the type and nature of data a specific application collects through our [support server](https://chat.nhcarrigan.com).
|
||||
### 1.3. Policy Updates and Retroactivity
|
||||
|
||||
### Right to Request Data
|
||||
We reserve the right to modify, amend, or update this General Policy and any Project Policies at any time. All changes to these policies, including the General Policy and any Project Policies, are retroactive and apply to previously collected data as well as data collected after the changes take effect.
|
||||
|
||||
### 1.4. Notification of Changes
|
||||
|
||||
We will make reasonable efforts to notify users of significant changes to our privacy policies. However, it is the user's responsibility to regularly review the applicable privacy policies for any updates.
|
||||
|
||||
### 1.5. Acceptance of Terms
|
||||
|
||||
By accessing, using, or continuing to use our Services, you explicitly acknowledge and agree to be bound by the most current version of the General Policy and any applicable Project Policies. If you do not agree with the terms of these policies, you must immediately cease using our Services.
|
||||
|
||||
### 1.6. Effective Date
|
||||
|
||||
The effective date of the current version of this policy will be clearly stated at the beginning of the document. Each revision will be numbered or dated for easy reference.
|
||||
|
||||
## 2. Error Logging and Transparency
|
||||
|
||||
### 2.1. Public Error Logging
|
||||
|
||||
In alignment with our commitment to open source principles, we maintain a policy of transparency regarding application errors and issues. All errors encountered in our Services are logged publicly in our Discord community.
|
||||
|
||||
### 2.2. Content of Error Logs
|
||||
|
||||
Error logs may include, but are not limited to:
|
||||
|
||||
- Timestamp of the error
|
||||
- Error type and description
|
||||
- Relevant application or service name
|
||||
- Non-personally identifiable technical details necessary for troubleshooting
|
||||
- General user actions that led to the error (without specific user identification)
|
||||
|
||||
### 2.3. Potentially Included Information
|
||||
|
||||
While we strive to minimize inclusion of personal or sensitive information, error logs may sometimes contain:
|
||||
|
||||
- User IDs or usernames (in hashed or partially redacted form)
|
||||
- IP addresses (in hashed or partially redacted form)
|
||||
- Device information
|
||||
- Other technical data relevant to the error
|
||||
|
||||
### 2.4. Access to Error Logs
|
||||
|
||||
We strongly recommend that all users join our Discord community prior to using our applications. This allows you to:
|
||||
|
||||
- Review the types of information being logged
|
||||
- Understand the frequency and nature of errors
|
||||
- Participate in discussions about bugs and improvements
|
||||
|
||||
### 2.5. Discord Community Access
|
||||
|
||||
To join our Discord community and access the error logs, please use the following link: https://chat.nhcarrigan.com
|
||||
|
||||
### 2.6. Opt-Out and Data Removal
|
||||
|
||||
If you have concerns about information appearing in error logs:
|
||||
|
||||
- You may opt-out of using our Services
|
||||
- You can contact us to request removal of specific log entries, subject to our data retention policies
|
||||
|
||||
### 2.7. Continuous Improvement
|
||||
|
||||
Public error logging helps us maintain transparency, quickly identify and resolve issues, and continually improve our Services. We appreciate our users' understanding and participation in this process.
|
||||
|
||||
## 3. Data Collection, Documentation, and User Rights
|
||||
|
||||
### 3.1. Data Collection Practices
|
||||
|
||||
We strive to collect only the data necessary for the proper functioning and improvement of our Services. However, the scope of data collection may change as our Services evolve.
|
||||
|
||||
### 3.2. Documentation Efforts
|
||||
|
||||
We make every effort to maintain accurate and up-to-date documentation regarding our data collection practices. This includes:
|
||||
|
||||
- Regular reviews of our data collection processes
|
||||
- Timely updates to our privacy policy and related documentation
|
||||
- Clear communication about significant changes in data collection
|
||||
|
||||
### 3.3. Potential Undocumented Data Collection
|
||||
|
||||
Despite our best efforts, it is possible that at any given time, an application or Service may collect data that is not explicitly documented. This may occur due to:
|
||||
|
||||
- Recent updates or changes to our Services
|
||||
- Technical issues or bugs
|
||||
- Third-party integrations or dependencies
|
||||
|
||||
### 3.4. General Data Rights
|
||||
|
||||
Regardless of whether specific data collection is documented, users have the following rights:
|
||||
|
||||
#### 3.4.1. Right to Access:
|
||||
|
||||
At any time, you may request a complete copy of your data stored by one of our applications. Requests must be done via our [support server](https://chat.nhcarrigan.com) from the Discord account the data belongs to. This ensures that a user cannot impersonate you and request your data. We may request additional identifying information, depending on the structure of the data collected by the application.
|
||||
|
||||
### Right to Removal
|
||||
#### 3.4.2. Right to Rectification:
|
||||
|
||||
You may request corrections to any inaccurate data we hold about you.
|
||||
|
||||
#### 3.4.3. Right to Erasure:
|
||||
|
||||
At any time, you may request complete removal of your stored data. Requests must be done via our [support server](https://chat.nhcarrigan.com) from the Discord account the data belongs to. This ensures that a user cannot impersonate you and request your data. We may request additional identifying information, depending on the structure of the data collected by the application.
|
||||
|
||||
This will **not** opt you out of future data collection unless specifically requested. We reserve the right to refuse removal requests when the data are necessary for specific functionality of the app, in circumstances where removing your data would compromise the functionality for all users.
|
||||
|
||||
### Right to Opt Out
|
||||
#### 3.4.4. Right to Restrict Processing:
|
||||
|
||||
At any time, you may request to opt out of data collection for an application by requesting removal of your data and discontinuing interaction with the application. We may request additional identifying information, depending on the structure of the data collected by the application.
|
||||
|
||||
We reserve the right to refuse opt-out requests when the data are necessary for specific functionality of the app, in circumstances where opting-out would compromise the functionality for all users.
|
||||
|
||||
### Data Retention
|
||||
#### 3.4.5. Right to Data Portability:
|
||||
|
||||
Data are stored for the minimum necessary time to ensure the application is able to function.
|
||||
You may request a copy of your data in a structured, commonly used, and machine-readable format.
|
||||
|
||||
### Availability of Data
|
||||
### 3.5. Exercising Your Rights
|
||||
|
||||
Data are available to members of the development team, for the express purpose of debugging, improving, and contributing to the application.
|
||||
To exercise any of these rights or to inquire about data we may hold:
|
||||
|
||||
## Contact
|
||||
- Contact us through our discord server: https://chat.nhcarrigan.com
|
||||
- Be prepared to verify your identity to protect the security of your information
|
||||
|
||||
If you have questions about the privacy policy or how we use the data we collect, please reach out in our [support server](https://chat.nhcarrigan.com) or email `privacy@nhcarrigan.com`.
|
||||
### 3.6. Opting Out of Data Collection
|
||||
|
||||
- You may cease using our Services
|
||||
- For specific types of data collection, we may offer granular opt-out options
|
||||
- Note that opting out of essential data collection may limit or prevent your use of certain Services
|
||||
|
||||
### 3.7. Response Time and Process
|
||||
|
||||
We will make reasonable efforts to respond to all data-related requests within 30 days. Complex requests may require additional time, in which case we will notify you.
|
||||
|
||||
### 3.8. Limitations
|
||||
|
||||
While we strive to honor all legitimate requests, be aware that legal requirements may sometimes prevent us from fully complying with certain requests.
|
||||
|
||||
### 3.9. Ongoing Commitment
|
||||
|
||||
We are committed to transparency and user privacy. We continuously work to improve our data practices and documentation to ensure the highest standards of data protection and user trust.
|
||||
|
||||
## 4. Data Retention
|
||||
|
||||
### 4.1. Retention Principle
|
||||
|
||||
We adhere to the principle of data minimization, storing personal data for the shortest time necessary to fulfill the purposes for which it was collected and to ensure the proper functioning of our applications.
|
||||
|
||||
### 4.2. Retention Periods
|
||||
|
||||
Specific retention periods may vary depending on the type of data and the purpose for which it is processed. Generally:
|
||||
|
||||
- Active user data is retained for the duration of the user's account activity
|
||||
- Inactive user data may be retained for a period after the last user interaction, typically not exceeding 12 months
|
||||
- Aggregated and anonymized data may be retained indefinitely for analytical purposes
|
||||
|
||||
### 4.3. Automatic Deletion
|
||||
|
||||
Where technically feasible, we implement automated processes to delete or anonymize personal data that has exceeded its retention period.
|
||||
|
||||
### 4.4. Legal and Regulatory Compliance
|
||||
|
||||
Certain data may be retained for longer periods if required by applicable laws, regulations, or to comply with legal obligations.
|
||||
|
||||
### 4.5. Backup Retention
|
||||
|
||||
For data recovery purposes, backups may contain personal data for a period beyond the active retention period. These backups are secured and accessed only when necessary for system restoration.
|
||||
|
||||
### 4.6. User-Initiated Deletion
|
||||
|
||||
Users may request the deletion of their data at any time, subject to our legitimate business needs and legal obligations.
|
||||
|
||||
## 5. Availability of Data
|
||||
|
||||
### 5.1. Access Control
|
||||
|
||||
Access to user data is strictly controlled and limited to authorized members of the nhcarrigan team on a need-to-know basis.
|
||||
|
||||
### 5.2. Purpose Limitation
|
||||
|
||||
Data access by the nhcarrigan team is permitted only for the following purposes:
|
||||
|
||||
- Debugging application issues
|
||||
- Improving application functionality and user experience
|
||||
- Contributing to the development and maintenance of the application
|
||||
- Responding to user support requests
|
||||
- Ensuring compliance with legal and regulatory requirements
|
||||
|
||||
### 5.3. Data Security Measures
|
||||
|
||||
We implement robust security measures to protect data from unauthorized access, including but not limited to:
|
||||
|
||||
- Encryption of data in transit and at rest
|
||||
- Multi-factor authentication for developer accounts
|
||||
- Regular security audits and vulnerability assessments
|
||||
- Logging of data access and modifications
|
||||
|
||||
### 5.4. Developer Training and Accountability
|
||||
|
||||
All team members with data access are:
|
||||
|
||||
- Required to undergo privacy and security training
|
||||
- Bound by confidentiality agreements
|
||||
- Subject to disciplinary action for unauthorized data access or misuse
|
||||
|
||||
### 5.5. Third-Party Access
|
||||
|
||||
We do not sell user data. In cases where third-party service providers require access to perform specific functions:
|
||||
|
||||
- Access is limited to the minimum necessary data
|
||||
- Providers are bound by strict contractual obligations to protect user data
|
||||
- We regularly review and audit third-party practices
|
||||
|
||||
### 5.6. Transparency
|
||||
|
||||
We maintain logs of data access by our team and can provide this information upon justified request, subject to privacy and security considerations.
|
||||
|
||||
### 5.7. User Data Requests
|
||||
|
||||
Users may request information about how their data has been accessed or used by contacting our designated data protection contact.
|
||||
|
||||
### 5.8. Continuous Improvement
|
||||
|
||||
We regularly review and update our data handling practices to ensure the highest standards of data protection and to minimize unnecessary access to personal information.
|
||||
|
||||
## 6. Contact Information and Data Inquiries
|
||||
|
||||
We value transparency and are committed to addressing any questions or concerns you may have regarding our privacy practices. There are several ways to reach us:
|
||||
|
||||
### 6.1. Discord Support Server
|
||||
|
||||
For immediate assistance and community support, join our Discord server: https://chat.nhcarrigan.com
|
||||
|
||||
### 6.2. Email Contact
|
||||
|
||||
For privacy-specific inquiries or formal requests, please email: `privacy@nhcarrigan.com`
|
||||
|
||||
### 6.3. Response Time
|
||||
|
||||
We strive to respond to all inquiries within 5 business days. Complex issues may require additional time.
|
||||
|
||||
### 6.4. Types of Inquiries
|
||||
|
||||
We welcome contact regarding:
|
||||
|
||||
- Questions about this privacy policy
|
||||
- Inquiries about our data collection and use practices
|
||||
- Requests to exercise your data rights (access, rectification, erasure, etc.)
|
||||
- Reporting of potential data breaches or security concerns
|
||||
- Suggestions for improving our privacy practices
|
||||
|
||||
### 6.5. Information to Include
|
||||
|
||||
To help us address your inquiry efficiently, please include:
|
||||
|
||||
- Your full name
|
||||
- The email address associated with your account (if applicable)
|
||||
- A detailed description of your question or concern
|
||||
- Any relevant dates, times, or specific instances related to your inquiry
|
||||
|
||||
### 6.6. Verification Process
|
||||
|
||||
For security reasons, we may need to verify your identity before processing certain requests, especially those related to personal data.
|
||||
|
||||
### 6.7. Alternative Contact Methods
|
||||
|
||||
If you are unable to use Discord or email, please visit our website for additional contact options: https://nhcarrigan.com
|
||||
|
||||
### 6.8. Updates and Notifications
|
||||
|
||||
If you wish to receive updates about changes to our privacy policy or data practices, please join our Discord server: https://chat.nhcarrigan.com
|
||||
|
||||
### 6.9. Legal Inquiries
|
||||
|
||||
For legal or formal inquiries, please use the email provided above and clearly mark your message as a legal inquiry.
|
||||
|
||||
### 6.10. Accessibility
|
||||
|
||||
If you require this information in an alternative format for accessibility reasons, please let us know, and we will do our best to accommodate your needs.
|
||||
|
@ -1,39 +0,0 @@
|
||||
# Privacy Policy
|
||||
|
||||
> [!DANGER]
|
||||
> In the spirit of open source, errors are logged publicly in our Discord community. These logs may include information relevant to the error in question.
|
||||
>
|
||||
> We encourage you to [join our Discord](https://chat.nhcarrigan.com) to see what is logged PRIOR to using our applications.
|
||||
|
||||
The use of this application is subject to this Privacy Policy. By using this application, you agree to the collection and use of your personal data in accordance with this Privacy Policy.
|
||||
|
||||
## Data Collected
|
||||
|
||||
In order to operate, the application collects and stores the following data:
|
||||
|
||||
- Discord user ID: The application stores your discord user ID to track art rewards you have claimed as an artist.
|
||||
- Discord message ID: The application stores the message ID for art rewards which are claimed.
|
||||
|
||||
## Right to Request Data
|
||||
|
||||
At any time, you may request a complete copy of your data stored by the application. Requests must be done via our [support server](https://chat.nhcarrigan.com) from the Discord account the data belongs to. This ensures that a user cannot impersonate you and request your data.
|
||||
|
||||
## Right to Removal
|
||||
|
||||
At any time, you may request complete removal of your stored data. Requests must be done via our [support server](https://chat.nhcarrigan.com) from the Discord account the data belongs to. This ensures that a user cannot impersonate you and request your data. This will **not** opt you out of future data collection unless specifically requested.
|
||||
|
||||
## Right to Opt Out
|
||||
|
||||
At any time, you may request to opt out of data collection for this application. Requests must be done via our [support server](https://chat.nhcarrigan.com) from the Discord account the data belongs to. This ensures that a user cannot impersonate you and request your data. Note that opting out of data collection may prevent you from interacting with the application.
|
||||
|
||||
## Data Retention
|
||||
|
||||
Data are stored for the minimum necessary time to ensure the application is able to function.
|
||||
|
||||
## Availability of Data
|
||||
|
||||
Data are available to members of the development team, for the express purpose of debugging, improving, and contributing to the application.
|
||||
|
||||
## Questions
|
||||
|
||||
Questions and concerns regarding this privacy policy may be directed to `privacy@nhcarrigan.com`.
|
@ -1,5 +0,0 @@
|
||||
# Azuliah Bot
|
||||
|
||||
This is a bot that was specifically written for my VTuber sister Azuliah.
|
||||
|
||||
[View the Code](https://github.com/nhcarrigan/azuliah-bot) | [View the Live App](https://discord.gg/XNSy8PMvyy)
|
@ -1,10 +0,0 @@
|
||||
# Privacy
|
||||
|
||||
> [!DANGER]
|
||||
> In the spirit of open source, errors are logged publicly in our Discord community. These logs may include information relevant to the error in question.
|
||||
>
|
||||
> We encourage you to [join our Discord](https://chat.nhcarrigan.com) to see what is logged PRIOR to using our applications.
|
||||
|
||||
This application does not collect any data, and does not have an applicable privacy policy.
|
||||
|
||||
Use of the application is subject to [Discord's Privacy Policy](https://discord.com/privacy)
|
@ -1,3 +0,0 @@
|
||||
# Self Hosting
|
||||
|
||||
Instructions coming soon!
|
@ -1,10 +0,0 @@
|
||||
# Privacy
|
||||
|
||||
> [!DANGER]
|
||||
> In the spirit of open source, errors are logged publicly in our Discord community. These logs may include information relevant to the error in question.
|
||||
>
|
||||
> We encourage you to [join our Discord](https://chat.nhcarrigan.com) to see what is logged PRIOR to using our applications.
|
||||
|
||||
This application does not collect any data, and does not have an applicable privacy policy.
|
||||
|
||||
Use of the application is subject to [Discord's Privacy Policy](https://discord.com/privacy)
|
@ -1,5 +0,0 @@
|
||||
# Discord Birthday Bot
|
||||
|
||||
This is a bot created for the Caylus Crew Discord community, to track member birthdays and make a daily post.
|
||||
|
||||
[View the Code](https://github.com/nhcarrigan/ooigleBirthdayBot) | [View the Live App](https://discord.gg/fcDTTyMPtv)
|
@ -1,39 +0,0 @@
|
||||
# Privacy Policy
|
||||
|
||||
> [!DANGER]
|
||||
> In the spirit of open source, errors are logged publicly in our Discord community. These logs may include information relevant to the error in question.
|
||||
>
|
||||
> We encourage you to [join our Discord](https://chat.nhcarrigan.com) to see what is logged PRIOR to using our applications.
|
||||
|
||||
The use of this application is subject to this Privacy Policy. By using this application, you agree to the collection and use of your personal data in accordance with this Privacy Policy.
|
||||
|
||||
## Data Collected
|
||||
|
||||
In order to operate, the application collects and stores the following data:
|
||||
|
||||
- Discord user ID: The application stores your discord user ID to associate your database record with your Discord account.
|
||||
- Birthday: The application stores the birthday you provide to know when to post the daily message.
|
||||
|
||||
## Right to Request Data
|
||||
|
||||
At any time, you may request a complete copy of your data stored by the application. Requests must be done via our [support server](https://chat.nhcarrigan.com) from the Discord account the data belongs to. This ensures that a user cannot impersonate you and request your data.
|
||||
|
||||
## Right to Removal
|
||||
|
||||
At any time, you may request complete removal of your stored data. Requests must be done via our [support server](https://chat.nhcarrigan.com) from the Discord account the data belongs to. This ensures that a user cannot impersonate you and request your data. This will **not** opt you out of future data collection unless specifically requested.
|
||||
|
||||
## Right to Opt Out
|
||||
|
||||
At any time, you may request to opt out of data collection for this application by requesting removal of your data and discontinuing interaction with the application.
|
||||
|
||||
## Data Retention
|
||||
|
||||
Data are stored for the minimum necessary time to ensure the application is able to function.
|
||||
|
||||
## Availability of Data
|
||||
|
||||
Data are available to members of the development team, for the express purpose of debugging, improving, and contributing to the application.
|
||||
|
||||
## Questions
|
||||
|
||||
Questions and concerns regarding this privacy policy may be directed to `privacy@nhcarrigan.com`.
|
@ -1,3 +0,0 @@
|
||||
# Self Hosting
|
||||
|
||||
Instructions coming soon!
|
@ -1,5 +0,0 @@
|
||||
# Discord Boost Monitor
|
||||
|
||||
This is a bot that was specifically created for Caylus' Crew Discord server. The bot monitors for when a member loses the Server Booster role, and removes any special colour roles (associated with the Server Booster role) from them.
|
||||
|
||||
[View the Code](https://github.com/nhcarrigan/discord-boost-monitor) | [View the Live App](https://discord.gg/fcDTTyMPtv)
|
@ -1,10 +0,0 @@
|
||||
# Privacy
|
||||
|
||||
> [!DANGER]
|
||||
> In the spirit of open source, errors are logged publicly in our Discord community. These logs may include information relevant to the error in question.
|
||||
>
|
||||
> We encourage you to [join our Discord](https://chat.nhcarrigan.com) to see what is logged PRIOR to using our applications.
|
||||
|
||||
This application does not collect any data, and does not have an applicable privacy policy.
|
||||
|
||||
Use of the application is subject to [Discord's Privacy Policy](https://discord.com/privacy)
|
@ -1,25 +0,0 @@
|
||||
# Self Hosting
|
||||
|
||||
This application is designed to support a single Discord server. As such, there are some configurations you will need to adjust to make it work for your server. Assuming you have cloned the GitHub repository...
|
||||
|
||||
## Environment Variables
|
||||
|
||||
Copy the `sample.env` file to a file named `.env` and complete the following values:
|
||||
|
||||
- `DISCORD_TOKEN` - The token for your Discord Bot Application.
|
||||
- `SENTRY_DSN` - The DSN for your Sentry.io project.
|
||||
- `DEBUG_HOOK` - The Discord Webhook URL for your debug channel.
|
||||
|
||||
## Configuration
|
||||
|
||||
Within the `/src/config/roles.ts` file, you'll need to edit the following values.
|
||||
|
||||
The `boosterRole` value should be the **ID** of your server's `Server Booster` role.
|
||||
|
||||
The `colourRoles` value is an array of Discord role IDs. These are the roles the bot should look for and remove when someone loses the `boosterRole` role.
|
||||
|
||||
## Running the Application
|
||||
|
||||
Use `npm ci` to install the necessary dependencies, `npm run build` to compile the TypeScript, and `npm start` to launch the application.
|
||||
|
||||
Your bot will go online and be ready to monitor your Discord server. Note that you should only add your bot to a single server, or your IDs will not line up properly.
|
@ -1,39 +0,0 @@
|
||||
# Privacy Policy
|
||||
|
||||
> [!DANGER]
|
||||
> In the spirit of open source, errors are logged publicly in our Discord community. These logs may include information relevant to the error in question.
|
||||
>
|
||||
> We encourage you to [join our Discord](https://chat.nhcarrigan.com) to see what is logged PRIOR to using our applications.
|
||||
|
||||
The use of this application is subject to this Privacy Policy. By using this application, you agree to the collection and use of your personal data in accordance with this Privacy Policy.
|
||||
|
||||
## Data Collected
|
||||
|
||||
In order to operate, the application collects and stores the following data:
|
||||
|
||||
- Discord server ID: The application stores the Discord server ID to associate database records with specific Discord servers.
|
||||
- Verification Details: The application stores the configured verification question, answers, and role to assign.
|
||||
|
||||
## Right to Request Data
|
||||
|
||||
A server owner may request to view the data via our [support server](https://chat.nhcarrigan.com).
|
||||
|
||||
## Right to Removal
|
||||
|
||||
A server owner may request removal of data by kicking the bot from the server, or reaching out to our support team in [our support server](https://chat.nhcarrigan.com).
|
||||
|
||||
## Right to OptOut
|
||||
|
||||
As no user information is collected, individual users do not have an opt out process. Servers may opt out of data collection by removing the bot.
|
||||
|
||||
## Data Retention
|
||||
|
||||
Data are stored for the minimum necessary time to ensure the application is able to function.
|
||||
|
||||
## Availability of Data
|
||||
|
||||
Data are available to members of the development team, for the express purpose of debugging, improving, and contributing to the application.
|
||||
|
||||
## Questions
|
||||
|
||||
Questions and concerns regarding this privacy policy may be directed to `privacy@nhcarrigan.com`.
|
@ -1,5 +0,0 @@
|
||||
# Security Bot
|
||||
|
||||
This is a Discord bot that allows you to pause invites and DMs in your server.
|
||||
|
||||
[View the Code](https://github.com/nhcarrigan/security-bot) | [Invite the Bot](https://discord.com/api/oauth2/authorize?client_id=1167689144705765486&permissions=32&scope=bot+applications.commands)
|
@ -1,10 +0,0 @@
|
||||
# Privacy
|
||||
|
||||
> [!DANGER]
|
||||
> In the spirit of open source, errors are logged publicly in our Discord community. These logs may include information relevant to the error in question.
|
||||
>
|
||||
> We encourage you to [join our Discord](https://chat.nhcarrigan.com) to see what is logged PRIOR to using our applications.
|
||||
|
||||
This application does not collect any data, and does not have an applicable privacy policy.
|
||||
|
||||
Use of the application is subject to [Discord's Privacy Policy](https://discord.com/privacy)
|
@ -1,3 +0,0 @@
|
||||
# Usage
|
||||
|
||||
Instructions coming soon!
|
@ -1,40 +0,0 @@
|
||||
# Privacy Policy
|
||||
|
||||
> [!DANGER]
|
||||
> In the spirit of open source, errors are logged publicly in our Discord community. These logs may include information relevant to the error in question.
|
||||
>
|
||||
> We encourage you to [join our Discord](https://chat.nhcarrigan.com) to see what is logged PRIOR to using our applications.
|
||||
|
||||
The use of this application is subject to this Privacy Policy. By using this application, you agree to the collection and use of your personal data in accordance with this Privacy Policy.
|
||||
|
||||
## Data Collected
|
||||
|
||||
In order to operate, the application collects and stores the following data:
|
||||
|
||||
- Discord User ID: The bot tracks your Discord user ID to associate database records with your user account.
|
||||
- Repository Name and Owner: The bot tracks the owner/name of repositories that are sent in the project sharing channel.
|
||||
- Timestamp: The bot tracks the last time your account shared a specific repository to determine if it is within the configured cool down.
|
||||
|
||||
## Right to Request Data
|
||||
|
||||
At any time, you may request a complete copy of your data stored by the application. Requests must be done via our [support server](https://chat.nhcarrigan.com) from the Discord account the data belongs to. This ensures that a user cannot impersonate you and request your data.
|
||||
|
||||
## Right to Removal
|
||||
|
||||
Due to the nature of the data collected and the necessity of data for functionality, removal may not be requested for this application.
|
||||
|
||||
## Right to Opt Out
|
||||
|
||||
You may opt out of data collection by refraining from sharing repository links in the configured project sharing channel.
|
||||
|
||||
## Data Retention
|
||||
|
||||
Data are stored for the minimum necessary time to ensure the application is able to function.
|
||||
|
||||
## Availability of Data
|
||||
|
||||
Data are available to members of the development team, for the express purpose of debugging, improving, and contributing to the application.
|
||||
|
||||
## Questions
|
||||
|
||||
Questions and concerns regarding this privacy policy may be directed to `privacy@nhcarrigan.com`.
|
117
docs/security.md
117
docs/security.md
@ -1,8 +1,117 @@
|
||||
# Security Policy
|
||||
|
||||
If you discover a vulnerability within one of our applications, please do NOT create a GitHub issue or use any public platform to report it. Instead, either:
|
||||
**Effective 7 July 2024**
|
||||
|
||||
- Create a private ticket on our [support server](https://chat.nhcarrigan.com)
|
||||
- Notify us via email at `support@nhcarrigan.com`
|
||||
## 1. Introduction
|
||||
|
||||
We do not offer any rewards (commonly known as "bug bounties") for reporting security issues.
|
||||
This Security Policy outlines the procedures for reporting security vulnerabilities in our applications and the terms under which we handle such reports. By participating in our security reporting process, you agree to comply with this policy.
|
||||
|
||||
## 2. Scope
|
||||
|
||||
This policy applies to all applications, services, and systems maintained by our organization, including but not limited to:
|
||||
|
||||
- Our main websites and applications
|
||||
- All open-source projects hosted on our repositories
|
||||
- Any associated APIs or backend services
|
||||
|
||||
## 3. Reporting a Vulnerability
|
||||
|
||||
### 3.1 Reporting Channels
|
||||
|
||||
If you discover a security vulnerability within any of our applications or systems, please report it through one of the following secure channels:
|
||||
|
||||
1. Create a private ticket on our [support server](https://chat.nhcarrigan.com)
|
||||
2. Send an email to `security@nhcarrigan.com`
|
||||
|
||||
### 3.2 Public Disclosure Prohibition
|
||||
|
||||
Do NOT disclose the vulnerability publicly or through any public channels, including but not limited to:
|
||||
|
||||
- Public GitHub issues
|
||||
- Social media platforms
|
||||
- Public forums or chat rooms
|
||||
- Blog posts or articles
|
||||
|
||||
### 3.3 Required Information
|
||||
|
||||
When reporting a vulnerability, please provide:
|
||||
|
||||
- A detailed description of the vulnerability
|
||||
- Steps to reproduce the issue
|
||||
- Potential impact of the vulnerability
|
||||
- Any suggested mitigation or fix (if known)
|
||||
|
||||
## 4. Response Process
|
||||
|
||||
### 4.1 Acknowledgment
|
||||
|
||||
We will acknowledge receipt of your vulnerability report within 3 business days.
|
||||
|
||||
### 4.2 Assessment and Verification
|
||||
|
||||
Our security team will assess the reported vulnerability and may contact you for additional information if needed.
|
||||
|
||||
### 4.3 Resolution Timeline
|
||||
|
||||
We strive to resolve confirmed vulnerabilities within 90 days of the initial report, depending on the complexity and severity of the issue.
|
||||
|
||||
## 5. Disclosure Policy
|
||||
|
||||
### 5.1 Coordinated Disclosure
|
||||
|
||||
We practice coordinated disclosure. We will work with you to ensure that a fix is available before any public disclosure of the vulnerability.
|
||||
|
||||
### 5.2 Public Acknowledgment
|
||||
|
||||
With your permission, we may publicly acknowledge your contribution in discovering and reporting the vulnerability after it has been resolved.
|
||||
|
||||
## 6. Legal Safe Harbor
|
||||
|
||||
### 6.1 Authorization
|
||||
|
||||
We authorize security research and vulnerability disclosure activities, provided they are conducted in accordance with this policy and all applicable laws.
|
||||
|
||||
### 6.2 Scope of Protection
|
||||
|
||||
We will not initiate legal action for accidental, good faith violations of this policy. This safe harbor applies only to activities that:
|
||||
|
||||
- Comply with all aspects of this Security Policy
|
||||
- Do not compromise or attempt to compromise the privacy or safety of our users, employees, or systems
|
||||
- Do not violate any applicable laws
|
||||
|
||||
### 6.3 Limitations
|
||||
|
||||
This safe harbor does not apply to:
|
||||
|
||||
- Vulnerabilities or information obtained through means other than security research
|
||||
- Research conducted on third-party applications or services that integrate with our systems
|
||||
|
||||
## 7. Bug Bounty Program
|
||||
|
||||
We do not currently offer monetary rewards or "bug bounties" for reporting security vulnerabilities. Your contributions to our security are greatly appreciated, but are on a voluntary basis.
|
||||
|
||||
We will gladly thank you in our [Hall of Fame](/community/hall-of-fame)
|
||||
|
||||
## 8. Data Protection and Privacy
|
||||
|
||||
### 8.1 Handling of Submitted Information
|
||||
|
||||
Any information you provide in your vulnerability report will be handled in accordance with our Privacy Policy and applicable data protection laws.
|
||||
|
||||
### 8.2 Confidentiality
|
||||
|
||||
We will treat all vulnerability reports as confidential and will not share the information beyond what is necessary to address the reported issue.
|
||||
|
||||
## 9. Compliance with Laws and Regulations
|
||||
|
||||
All security research and vulnerability disclosure activities must comply with all applicable local, state, and federal laws, as well as any relevant international laws.
|
||||
|
||||
## 10. Policy Updates
|
||||
|
||||
We reserve the right to update or modify this Security Policy at any time. Any changes will be effective immediately upon posting the updated policy on our website or repository.
|
||||
|
||||
## 11. Contact Information
|
||||
|
||||
For any questions regarding this Security Policy, please contact us at `security@nhcarrigan.com`.
|
||||
|
||||
By reporting a security vulnerability to us, you acknowledge that you have read, understood, and agree to this Security Policy.
|
||||
|
@ -1,8 +1,24 @@
|
||||
# Join Our Staff Team
|
||||
|
||||
> [!NOTE]
|
||||
> All positions are a volunteer-only basis, unless a separate written arrangement has been made with you. Do not assume that becoming staff will get you paid.
|
||||
**Effective 7 July 2024**
|
||||
|
||||
We source team members by hand, based on activity, length of time in the community, and quality of interactions. If you are selected, Naomi will reach out to you with further instructions.
|
||||
## 1. Volunteer Positions
|
||||
|
||||
Members of the mentorship programme are treated like staff.
|
||||
Unless explicitly stated otherwise in a separate written agreement, all positions within our organization are on a voluntary basis. No compensation, monetary or otherwise, should be expected for these roles.
|
||||
|
||||
## 2. Selection Process
|
||||
|
||||
Our team member selection process is based on the following criteria:
|
||||
1. Active participation in the community
|
||||
2. Length of membership in the community
|
||||
3. Quality and nature of interactions with other community members
|
||||
|
||||
If you are selected as a potential team member, our representative, Naomi, will contact you directly with further information and instructions.
|
||||
|
||||
## 3. Legal Disclaimer
|
||||
|
||||
This document does not constitute an offer of employment or a binding contract. Our organization reserves the right to modify, suspend, or terminate any volunteer position or the mentorship programme at any time, without prior notice.
|
||||
|
||||
By engaging in any volunteer activities you acknowledge that you have read, understood, and agree to these terms.
|
||||
|
||||
For any questions or clarifications regarding these policies, please contact us on Discord.
|
||||
|
@ -1,127 +1,939 @@
|
||||
# Staff Handbook
|
||||
|
||||
We rely on our staff members in any position to help keep our community running smoothly.
|
||||
**Effective 7 July 2024**
|
||||
|
||||
These are some general requirements for our staff team. Check the links in the sidebar for information specific to your position.
|
||||
Welcome to our organization. This Staff Handbook serves as a comprehensive guide to our policies, procedures, and expectations. It is designed to help you understand your role in our community and how you can contribute to our collective success.
|
||||
|
||||
## Activity Requirements
|
||||
We rely on every staff member, regardless of position, to help keep our community running smoothly and efficiently. Your dedication, skills, and adherence to our standards are crucial in achieving our organizational goals.
|
||||
|
||||
We do not require specific levels of activity from our staff. We understand that you are volunteering your time to help our community, and it is highly appreciated.
|
||||
By familiarizing yourself with this handbook and adhering to its guidelines, you play a vital role in maintaining the integrity and effectiveness of our organization. Your commitment to these principles helps ensure a positive, productive, and harmonious work environment for all.
|
||||
|
||||
That being said, if you anticipate being inactive for more than a week, we do ask that you let us know in the Discord `#staff-chat` so we are aware that you will not be around to address issues. If you are inactive for more than a month with no communication, we will remove you from the staff team - however, you will always be welcome to return when your schedule allows!
|
||||
## 1. Activity Requirements
|
||||
|
||||
## Holopin Badge
|
||||
### 1.1 Flexible Engagement
|
||||
|
||||
Staff members are eligible for a special staff badge on [Holopin](https://holopin.io/@naomis-novas). If you would like this badge, reach out to Naomi on Discord to claim it!
|
||||
We recognize and deeply appreciate that our staff members are volunteers dedicating their time and effort to support our community. As such, we do not impose rigid activity quotas or specific engagement levels.
|
||||
|
||||
## Moderator Guidelines
|
||||
### 1.2 Communication of Extended Absences
|
||||
|
||||
Being a moderator does not mean that you are above our community, and we ask that you do not behave as such. It simply means that you are trusted with additional tools to help ensure our community is safe.
|
||||
While we maintain a flexible approach to activity, we kindly request that you inform us of any anticipated absences:
|
||||
|
||||
### General Expectations
|
||||
- For absences exceeding one week, please notify the team via the `#staff-chat` channel on Discord.
|
||||
- This communication helps us manage workload distribution and ensures continued smooth operation of our community.
|
||||
|
||||
Our moderators are meant to be the example of ideal community members. As such, you should be active within our community, adherent to our rules, and welcoming to our members.
|
||||
### 1.3 Extended Inactivity
|
||||
|
||||
However, you are also still a member of the community yourself. Not every interaction needs to be a moderation action. Socialise with your fellow community members and remember that we are here to have fun!
|
||||
In cases of prolonged inactivity:
|
||||
|
||||
We have many community platforms, some of which you may not be familiar with. That's okay! While you are trusted to maintain all of our platforms, you only need to moderate the ones you're comfortable with. If you have any questions, you can always reach out to your fellow moderators.
|
||||
- If you are inactive for more than one month without prior communication, we may remove you from the active staff team.
|
||||
- This policy helps maintain an engaged and responsive staff roster.
|
||||
- Please note that removal due to inactivity is not punitive and does not reflect negatively on your contributions.
|
||||
|
||||
### Discord
|
||||
### 1.4 Returning to the Team
|
||||
|
||||
Moderating Discord primarily involves ensuring our members are interacting with each other in accordance with our rules. If a member is not acting appropriately, you should take action relative to their infraction.
|
||||
We value your contributions and understand that life circumstances can change:
|
||||
|
||||
#### Warning a Member
|
||||
- If you've been removed due to inactivity, you are always welcome to rejoin the staff team when your schedule permits.
|
||||
- To rejoin, please contact an admin.
|
||||
|
||||
For actions that are mostly harmless, such as mild spam, or an insult that isn't discriminatory (i.e. "You're a jerk"), you can issue a warning. Use Becca to give a warning to the member so the action is appropriately logged.
|
||||
### 1.5 Balancing Commitments
|
||||
|
||||
We encourage you to balance your volunteer work with your personal life and other commitments:
|
||||
|
||||
- Your well-being is important to us. Never feel pressured to overextend yourself.
|
||||
- If you find your role becoming stressful or overly time-consuming, please discuss this with an admin.
|
||||
|
||||
### 1.6 Recognition of Contributions
|
||||
|
||||
While we don't set specific activity requirements, we do recognize and appreciate consistent engagement and contributions:
|
||||
|
||||
- Regular participation helps build a strong, cohesive community.
|
||||
- Outstanding contributions may be acknowledged through our staff recognition program.
|
||||
|
||||
## 2. Moderator Guidelines
|
||||
|
||||
### 2.1 Role Definition
|
||||
|
||||
As a moderator, you occupy a position of trust within our community. This role comes with additional responsibilities and tools to ensure the safety and well-being of our community members. However, it's crucial to understand that:
|
||||
|
||||
- Being a moderator does not elevate you above other community members.
|
||||
- Your role is one of service and support, not authority or superiority.
|
||||
|
||||
### 2.2 General Expectations
|
||||
|
||||
#### 2.2.1 Leading by Example
|
||||
|
||||
As moderators, you are expected to exemplify the ideal community member:
|
||||
|
||||
- Be active and engaged within the community.
|
||||
- Strictly adhere to all community rules and guidelines.
|
||||
- Demonstrate a welcoming and inclusive attitude towards all members, especially newcomers.
|
||||
|
||||
#### 2.2.2 Balancing Roles
|
||||
|
||||
Remember that you are both a moderator and a community member:
|
||||
|
||||
- Not every interaction requires a moderation action.
|
||||
- Engage in regular social interactions with fellow community members.
|
||||
- Maintain a balance between your moderator duties and personal enjoyment within the community.
|
||||
|
||||
#### 2.2.3 Platform Familiarity
|
||||
|
||||
Our community spans multiple platforms:
|
||||
|
||||
- You are entrusted with maintaining all our platforms, but you're not expected to be an expert on all of them.
|
||||
- Focus on moderating platforms you're comfortable with.
|
||||
- Seek assistance or guidance from fellow moderators when dealing with unfamiliar platforms.
|
||||
|
||||
### 2.3 Conduct Guidelines
|
||||
|
||||
#### 2.3.1 Professionalism
|
||||
|
||||
Maintain a professional demeanor in all interactions:
|
||||
|
||||
- Remain calm and objective, especially in challenging situations.
|
||||
- Avoid engaging in or escalating conflicts.
|
||||
- Use appropriate language and tone at all times.
|
||||
|
||||
#### 2.3.2 Fairness and Consistency
|
||||
|
||||
Apply rules and take actions consistently:
|
||||
|
||||
- Treat all community members equally, regardless of their status or your personal feelings.
|
||||
- Make decisions based on community guidelines, not personal preferences.
|
||||
|
||||
#### 2.3.3 Transparency
|
||||
|
||||
Be open about your actions as a moderator:
|
||||
|
||||
- Clearly explain the reasons for any moderation decisions when appropriate.
|
||||
- Be willing to discuss your actions with other moderators or admins if questions arise.
|
||||
|
||||
### 2.4 Collaboration and Support
|
||||
|
||||
#### 2.4.1 Team Communication
|
||||
|
||||
Maintain open lines of communication with your fellow moderators:
|
||||
|
||||
- Use designated channels (e.g., `#staff-chat`) to discuss moderation issues.
|
||||
- Share experiences and seek advice when facing challenging situations.
|
||||
|
||||
#### 2.4.2 Continuous Learning
|
||||
|
||||
Stay informed and improve your moderation skills:
|
||||
|
||||
- Keep up-to-date with any changes to community guidelines or moderation policies.
|
||||
- Participate in any provided training or skill-sharing sessions.
|
||||
|
||||
#### 2.4.3 Escalation Protocol
|
||||
|
||||
Know when and how to escalate issues:
|
||||
|
||||
- Identify situations that require input from administrators.
|
||||
- Follow established procedures for escalating complex or sensitive matters.
|
||||
|
||||
### 2.2 Discord Moderation Guidelines
|
||||
|
||||
#### 2.2.1 General Principles
|
||||
|
||||
- Always approach situations calmly and objectively.
|
||||
- Escalate gradually: Start with the least severe action necessary and progress as needed.
|
||||
- Document all moderation actions using the mod bot for consistency and future reference.
|
||||
|
||||
#### 2.2.2 Warning a Member
|
||||
|
||||
Use warnings for minor infractions or first-time offenses.
|
||||
|
||||
**When to Warn:**
|
||||
- Mild spam (e.g., posting the same message a few times)
|
||||
- Non-discriminatory insults (e.g., "You're a jerk")
|
||||
- Minor rule violations
|
||||
|
||||
**How to Warn:**
|
||||
Use the mod bot command:
|
||||
```txt
|
||||
/mod warn @user this is the reason
|
||||
/warn @user [reason for warning]
|
||||
```
|
||||
|
||||
#### Kicking a Member
|
||||
**Follow-up:**
|
||||
- Monitor the member's behavior after the warning.
|
||||
- If behavior improves, no further action is needed.
|
||||
- If issues persist, consider stronger measures.
|
||||
|
||||
If a member is arguing with you directly, spamming a channel, or breaking our rules in a non-excessive manner, often times a kick is sufficient to show them that you are serious about enforcing our standards. Use Becca to kick the member so the action is logged.
|
||||
#### 2.2.3 Kicking a Member
|
||||
|
||||
Kicking is a temporary removal that allows the member to rejoin.
|
||||
|
||||
**When to Kick:**
|
||||
- Repeated minor infractions after warnings
|
||||
- Arguing with moderators
|
||||
- Moderate spam
|
||||
- Non-severe rule violations
|
||||
|
||||
**How to Kick:**
|
||||
Use the mod bot command:
|
||||
```txt
|
||||
/mod kick @user this is the reason
|
||||
/kick @user [reason for kick]
|
||||
```
|
||||
|
||||
#### Banning a Member
|
||||
**Follow-up:**
|
||||
- Monitor if the user returns and their subsequent behavior.
|
||||
- Be prepared to take stronger action if issues continue upon their return.
|
||||
|
||||
Careful consideration must happen before banning a member. Discord bans are IP specific and the member will not be able to rejoin until the ban is lifted. When you need to ban someone, use Becca to do so.
|
||||
#### 2.2.4 Banning a Member
|
||||
|
||||
Banning is the most severe action and should be used judiciously.
|
||||
|
||||
**When to Ban:**
|
||||
- Severe rule violations
|
||||
- Repeated offenses after warnings and kicks
|
||||
- Malicious actions (e.g., raiding, doxxing, severe harassment)
|
||||
|
||||
**How to Ban:**
|
||||
Use the mod bot command:
|
||||
```txt
|
||||
/mod ban @user 7 this is the reason
|
||||
/ban @user [reason for ban]
|
||||
```
|
||||
|
||||
Becca will ask you to confirm that you intend to do this.
|
||||
**Important Considerations:**
|
||||
- Discord bans are IP-specific.
|
||||
- The member cannot rejoin until the ban is lifted.
|
||||
- Always double-check the user and reason before banning.
|
||||
- For permanent bans, consult with administrators.
|
||||
|
||||
### Working With Fellow Mods
|
||||
#### 2.2.5 Moderation Best Practices
|
||||
|
||||
On GitHub, our community organisation has a `moderators` team. Within this team, you can create private discussions that only your fellow moderators will see. On Discord, we have a private staff-chat channel for the same purpose.
|
||||
1. **Communication:** Clearly explain the reason for moderation actions to the affected member when possible.
|
||||
|
||||
These are places where you can bring up concerns, ask fellow moderators how they would approach a situation, or request assistance in dealing with an issue. We will gladly help you resolve the problems at hand.
|
||||
2. **Consistency:** Apply rules uniformly to all members.
|
||||
|
||||
Remember that we are a team. We do not want to disagree with each other publicly. If you have concerns about a moderation action, or about a fellow moderator's actions, discuss them in one of these private areas. If you cannot reach a resolution, reach out to Naomi for guidance.
|
||||
3. **Documentation:** Always use the mod bot for actions to ensure proper logging.
|
||||
|
||||
### Logging Actions
|
||||
4. **Discretion:** Use your judgment. Context matters in deciding appropriate actions.
|
||||
|
||||
Moderation actions on Discord are automatically logged. However, moderation actions on other platforms should be manually logged to the `#council-activity` channel in our Discord community.
|
||||
5. **Team Coordination:** Discuss unclear situations with fellow moderators.
|
||||
|
||||
## Mentee Guide
|
||||
6. **Appeals Process:** Be aware of the process for members to appeal moderation decisions.
|
||||
|
||||
Naomi will occasionally select passionate developers who have struggled to break into the field, and take them under her wing to mentor them.
|
||||
7. **Continuous Learning:** Stay updated on any changes to community guidelines or moderation policies.
|
||||
|
||||
As a member of the Naomi's mentorship programme, you may be assigned issues and tasks that are essential to the maintenance of and improvement on our projects. We greatly appreciate your dedication to our work, and we have the highest respect for you volunteering your time. Tasks that are assigned, however, will need to be completed in a timely manner.
|
||||
### 2.3 Twitch Moderation
|
||||
|
||||
If you find that you are unable to complete a task quickly, that's okay! We ask that you communicate with the rest of the mentees in our chat so someone can assist you in getting the issue resolved. Our number one goal is to ensure we are not preventing updates from rolling out to our users.
|
||||
#### 2.3.1 General Responsibilities
|
||||
|
||||
### Secrets
|
||||
- Monitor chat actively during live streams.
|
||||
- Enforce our community rules and Twitch's Terms of Service.
|
||||
- Assist viewers with questions and foster a welcoming atmosphere.
|
||||
- Support the streamer by managing chat flow and addressing issues promptly.
|
||||
|
||||
In the course of your work, you may require access to project secrets such as API tokens or deployment instances. Any project secrets are shared on a very strict need-to-know basis, and the disclosure of secrets to unauthorised parties may result in removal of your permissions and/or legal action. We trust you, but are obligated to keep our projects secure as well.
|
||||
#### 2.3.2 Chat Moderation Tools
|
||||
|
||||
### Deployment Access
|
||||
Familiarize yourself with Twitch's built-in moderation tools:
|
||||
|
||||
Most of our projects are hosted under DigitialOcean servers or GitHub Pages.
|
||||
1. **Timeout:** Temporarily prevents a user from chatting.
|
||||
2. **Ban:** Permanently removes a user from the channel.
|
||||
3. **Delete Message:** Removes a single message from chat.
|
||||
4. **Slow Mode:** Limits how often users can send messages.
|
||||
5. **Followers-Only Mode:** Restricts chat to followers.
|
||||
6. **Subscribers-Only Mode:** Limits chat to subscribers.
|
||||
7. **Unique-Chat Mode:** Prevents users from posting duplicate messages.
|
||||
|
||||
If, for some reason, you should need access to one of these, ensure you have a public SSH key (SSH-rsa is a good method) to provide to us.
|
||||
#### 2.3.3 Moderation Actions
|
||||
|
||||
With that, we can discuss allowing you access to the deployment based on the need.
|
||||
##### 2.3.3.1 Warnings
|
||||
|
||||
## GitHub
|
||||
- For minor infractions, start with a verbal warning in chat.
|
||||
- Use clear, concise language to explain the issue.
|
||||
|
||||
GitHub involves triaging issues and reviewing pull requests, as well as fostering communication between our contributors and enforcing our community guidelines.
|
||||
Example: "@User, please avoid spamming emotes. Next time may result in a timeout."
|
||||
|
||||
### Triaging Issues
|
||||
##### 2.3.3.2 Timeouts
|
||||
|
||||
By default, when an issue is opened `naomi-lgbt` is assigned and the issue gets a `🚦 status: awaiting triage` label automatically. This label is used to indicate issues that have not yet received attention from our maintainers.
|
||||
Use timeouts for more serious or repeated minor offenses.
|
||||
|
||||
The first step is to respond to the issue with a comment thanking the contributor for bringing it to our attention. If additional information is needed, ask the necessary questions to help identify the potential resolution for the issue.
|
||||
- First offense: 5-minute timeout
|
||||
- Second offense: 10-minute timeout
|
||||
- Third offense: 30-minute timeout
|
||||
|
||||
Once a resolution has been reached, the issue will need to be re-labelled. Remove `naomi-lgbt`'s assignment and the `🚦 status: awaiting triage` label. Then, apply the appropriate labels from the list. Each label has a description to help identify its purpose.
|
||||
To timeout: `/timeout @username [duration]`
|
||||
|
||||
Be sure to include at least one label from the `aspect`, `goal`, `priority`, and `status` categories. Typically, the `status` label should be `🏁 status: ready for dev`.
|
||||
##### 2.3.3.3 Bans
|
||||
|
||||
If you aren't sure what labels to apply, use the `🏷 status: label work required` and leave everything else unlabelled, and another member will come by to label it.
|
||||
Reserve bans for severe violations or persistent problematic behavior.
|
||||
|
||||
### Reviewing Pull Requests
|
||||
To ban: `/ban @username`
|
||||
|
||||
Reviewing a pull request does require some understanding of the code base for that particular project. However, we are a community of learning, so if you would like some assistance reviewing a PR let another member know! Someone will help you understand the changes.
|
||||
Always document the reason for bans in your moderator notes or designated channel.
|
||||
|
||||
The first step is to review the changes made to the code or files using GitHub's UI. You should make sure the changes are logical, add value, and do not add any spam or malicious content.
|
||||
#### 2.3.4 Specific Situations
|
||||
|
||||
Then, using whichever method you prefer, pull the changes down locally (or use an environment like GitPod) and test the changes. Make sure the changes resolve the linked issue or implement the feature/fix as expected.
|
||||
1. **Spam:** Use timeouts, increasing duration for repeat offenses.
|
||||
2. **Hate Speech/Discrimination:** Immediate ban and report to Twitch.
|
||||
3. **Excessive Backseat Gaming:** Start with a warning, then short timeout if it continues.
|
||||
4. **Spoilers:** Delete message and issue a warning.
|
||||
5. **Self-Promotion:** Remove message and warn. Timeout for repeated offenses.
|
||||
6. **Bot Attacks:** Enable followers-only or subscribers-only mode temporarily.
|
||||
|
||||
If you are happy with the changes made in the PR, add your review comments and select "Approve". If you would like to see changes, use the GitHub Suggestion feature where possible to create committable changes for the contributor to apply. When not possible, be as clear and descriptive as possible to make the process smoother for the contributor.
|
||||
#### 2.3.5 Communication
|
||||
|
||||
If you have any questions about this process, ask your fellow moderators.
|
||||
- Coordinate with other moderators via a separate chat or Discord channel.
|
||||
- Inform the streamer of any significant issues or decisions made during the stream.
|
||||
- Be prepared to explain moderation actions if questioned by viewers.
|
||||
|
||||
### Write Access
|
||||
#### 2.3.6 Raids and Hosting
|
||||
|
||||
All mentees have triage access. If you feel you need direct push access to a repository, reach out to Naomi.
|
||||
- Welcome incoming raids positively.
|
||||
- Be extra vigilant during raids to catch any potential influx of rule-breaking behavior.
|
||||
- Assist in shouting out and thanking raiders/hosts as appropriate.
|
||||
|
||||
## User Support
|
||||
#### 2.3.7 Clips and Highlights
|
||||
|
||||
Sometimes users may come into our chat looking for help with one of our projects.
|
||||
- Monitor clips created during streams for any inappropriate content.
|
||||
- Report or delete any clips that violate our guidelines or Twitch ToS.
|
||||
|
||||
As a member of our team, you are essential in providing the smoothest user experience to our members. You should be able to answer questions regarding most of our projects, with Becca being the highest priority. If you don't have an answer for someone's question, you have access to `#council-chat` where you can discuss the question with your fellow staff members and work together to reach a solution.
|
||||
#### 2.3.8 Post-Stream Duties
|
||||
|
||||
- Review any user reports or issues that occurred during the stream.
|
||||
- Discuss any notable incidents or concerns with the moderation team.
|
||||
- Provide feedback or suggestions for improving stream moderation.
|
||||
|
||||
### 2.4 Reddit Moderation
|
||||
|
||||
#### 2.4.1 General Responsibilities
|
||||
|
||||
- Regularly check the moderation queue for reported posts and comments.
|
||||
- Enforce subreddit rules and Reddit's content policy.
|
||||
- Engage with the community to encourage positive interactions.
|
||||
- Collaborate with other moderators to maintain consistency.
|
||||
|
||||
#### 2.4.2 Moderation Tools
|
||||
|
||||
Familiarize yourself with Reddit's moderation tools:
|
||||
|
||||
1. **Remove:** Takes down a post or comment from public view.
|
||||
2. **Spam:** Removes content and marks it as spam.
|
||||
3. **Approve:** Manually approves content, overriding auto-mod actions.
|
||||
4. **Lock:** Prevents further comments on a post.
|
||||
5. **Sticky:** Pins important posts to the top of the subreddit.
|
||||
6. **Distinguish:** Marks your comment as coming from a moderator.
|
||||
7. **Ban:** Prevents a user from posting or commenting in the subreddit.
|
||||
|
||||
#### 2.4.3 Moderation Actions
|
||||
|
||||
##### 2.4.3.1 Content Removal
|
||||
|
||||
- Remove posts and comments that violate subreddit rules or Reddit's content policy.
|
||||
- Always provide a reason for removal, using removal reasons or commenting.
|
||||
|
||||
##### 2.4.3.2 User Warnings
|
||||
|
||||
- For minor infractions, issue a warning via modmail or comment.
|
||||
- Document warnings in mod notes for future reference.
|
||||
|
||||
##### 2.4.3.3 Temporary Bans
|
||||
|
||||
- Use for repeated minor offenses or more serious rule violations.
|
||||
- Typical durations: 3 days, 7 days, 14 days, 30 days.
|
||||
- Always include the reason and duration in the ban message.
|
||||
|
||||
##### 2.4.3.4 Permanent Bans
|
||||
|
||||
- Reserve for severe violations or persistent problematic behavior.
|
||||
- Always provide a clear reason in the ban message.
|
||||
- Allow for appeal process through modmail.
|
||||
|
||||
#### 2.4.4 Specific Situations
|
||||
|
||||
1. **Spam:** Remove and mark as spam. Temp ban for repeated offenses.
|
||||
2. **Harassment:** Remove, warn, and escalate to temp or permanent ban as needed.
|
||||
3. **Off-topic Posts:** Remove and direct users to appropriate subreddits.
|
||||
4. **Reposts:** Remove recent reposts, with a comment explaining the removal.
|
||||
5. **Trolling:** Remove comments, warn, and ban for persistent behavior.
|
||||
6. **Vote Manipulation:** Report to Reddit admins and remove content.
|
||||
|
||||
#### 2.4.5 AutoModerator
|
||||
|
||||
- Familiarize yourself with our AutoModerator configuration.
|
||||
- Regularly review and update AutoMod rules as needed.
|
||||
- Check the moderation log to ensure AutoMod is functioning correctly.
|
||||
|
||||
#### 2.4.6 Flair Management
|
||||
|
||||
- Ensure posts are properly flaired.
|
||||
- Assist users with setting up user flairs if applicable.
|
||||
|
||||
#### 2.4.7 Modmail
|
||||
|
||||
- Respond to modmail inquiries promptly and professionally.
|
||||
- Use templates for common responses to ensure consistency.
|
||||
- Escalate complex issues to admins when necessary.
|
||||
|
||||
#### 2.4.8 Community Engagement
|
||||
|
||||
- Participate in discussions to set a positive example.
|
||||
- Use distinguish feature judiciously when speaking officially as a moderator.
|
||||
- Create and maintain community resources (FAQ, wiki, etc.).
|
||||
|
||||
#### 2.4.9 Coordinating with the Mod Team
|
||||
|
||||
- Use private moderator channels or subreddits for team discussions.
|
||||
- Participate in periodic mod team meetings or discussions.
|
||||
- Propose and discuss potential rule or policy changes.
|
||||
|
||||
#### 2.4.10 Handling Sensitive Content
|
||||
|
||||
- Remove NSFW content.
|
||||
- For controversial topics, monitor discussions closely and lock if necessary.
|
||||
- Report any illegal content to Reddit admins immediately.
|
||||
|
||||
### 2.5 Codeberg Moderation
|
||||
|
||||
#### 2.5.1 General Responsibilities
|
||||
|
||||
- Monitor repository activities, including issues, pull requests, and discussions.
|
||||
- Enforce our organization's code of conduct and Codeberg's terms of service.
|
||||
- Assist contributors with questions and foster a welcoming atmosphere for new participants.
|
||||
- Manage repository settings and access controls.
|
||||
|
||||
#### 2.5.2 Moderation Tools
|
||||
|
||||
Familiarize yourself with Codeberg's moderation features:
|
||||
|
||||
1. **Issue Management:** Open, close, label, and moderate issues.
|
||||
2. **Pull Request Review:** Review, comment on, and merge or reject pull requests.
|
||||
3. **Commit Management:** Revert or cherry-pick commits if necessary.
|
||||
4. **User Management:** Manage collaborator access and block problematic users.
|
||||
5. **Repository Settings:** Adjust visibility, branch protection, and other settings.
|
||||
|
||||
#### 2.5.3 Moderation Actions
|
||||
|
||||
##### 2.5.3.1 Issue and Pull Request Moderation
|
||||
|
||||
- Review and triage new issues and pull requests promptly.
|
||||
- Apply appropriate labels for categorization and priority.
|
||||
- Close or merge after thorough review and discussion.
|
||||
|
||||
##### 2.5.3.2 Comment Moderation
|
||||
|
||||
- Remove inappropriate or off-topic comments.
|
||||
- Provide warnings for minor infractions.
|
||||
- Lock discussions that become unproductive or violate guidelines.
|
||||
|
||||
##### 2.5.3.3 User Management
|
||||
|
||||
- Grant appropriate access levels to contributors.
|
||||
- Temporarily restrict access for users violating guidelines.
|
||||
- Block persistent offenders after warnings and temporary restrictions.
|
||||
|
||||
#### 2.5.4 Specific Situations
|
||||
|
||||
1. **Spam:** Remove spam content and warn the user. Block for repeated offenses.
|
||||
2. **Harassment:** Remove offending content, warn the user, and escalate to blocking if behavior persists.
|
||||
3. **Off-topic Discussions:** Redirect to appropriate channels or close if irrelevant.
|
||||
4. **Code of Conduct Violations:** Address promptly, following the enforcement guidelines in the CoC.
|
||||
5. **Licensing Issues:** Ensure all contributions comply with the project's license. Remove any content that violates licensing terms.
|
||||
|
||||
#### 2.5.5 Repository Management
|
||||
|
||||
- Regularly review and update repository descriptions and README files.
|
||||
- Manage branch protection rules to maintain code quality.
|
||||
|
||||
#### 2.5.6 Collaboration and Communication
|
||||
|
||||
- Use repository discussions or a designated communication channel for project-related conversations.
|
||||
- Clearly communicate decisions and reasoning behind moderation actions.
|
||||
- Encourage constructive feedback and open dialogue among contributors.
|
||||
|
||||
#### 2.5.7 Pull Request Review Process
|
||||
|
||||
- Establish and communicate clear guidelines for PR submissions.
|
||||
- Conduct thorough code reviews, focusing on both functionality and style.
|
||||
- Provide constructive feedback and guidance, especially for new contributors.
|
||||
- Ensure all checks (e.g., tests, linting) pass before merging.
|
||||
|
||||
#### 2.5.8 Security Management
|
||||
|
||||
- Monitor and address security vulnerabilities promptly.
|
||||
- Manage responsible disclosure of security issues.
|
||||
- Regularly update dependencies to patch known vulnerabilities.
|
||||
|
||||
#### 2.5.9 Community Building
|
||||
|
||||
- Recognize and appreciate valuable contributions.
|
||||
- Organize periodic community events or sprints to boost engagement.
|
||||
- Maintain a welcoming atmosphere for contributors of all experience levels.
|
||||
|
||||
#### 2.5.10 Documentation
|
||||
|
||||
- Ensure project documentation is comprehensive and up-to-date.
|
||||
- Encourage contributors to improve documentation alongside code changes.
|
||||
- Maintain clear guidelines for project structure, coding standards, and contribution processes.
|
||||
|
||||
### 2.6 IRC Moderation
|
||||
|
||||
#### 2.6.1 General Responsibilities
|
||||
|
||||
- Monitor channel activities continuously while online.
|
||||
- Enforce channel rules and network policies.
|
||||
- Assist users with questions and foster a welcoming atmosphere.
|
||||
- Manage channel modes and user privileges as needed.
|
||||
|
||||
#### 2.6.2 IRC-Specific Moderation Tools
|
||||
|
||||
Familiarize yourself with these essential IRC commands:
|
||||
|
||||
1. `/kick <nick> [reason]`: Remove a user from the channel temporarily.
|
||||
2. `/ban <mask>`: Ban a user or hostmask from the channel.
|
||||
3. `/mute <nick>`: Prevent a user from speaking in the channel.
|
||||
4. `/topic`: Set or modify the channel topic.
|
||||
5. `/mode`: Change channel modes (e.g., moderated, invite-only).
|
||||
|
||||
#### 2.6.3 Moderation Actions
|
||||
|
||||
##### 2.6.3.1 Warnings
|
||||
|
||||
For minor infractions, start with a verbal warning in the channel.
|
||||
|
||||
Example: "Username, please avoid using excessive caps. It's considered shouting."
|
||||
|
||||
##### 2.6.3.2 Kicks
|
||||
|
||||
Use kicks for more serious or repeated minor offenses.
|
||||
|
||||
To kick: `/kick username Reason for kick`
|
||||
|
||||
##### 2.6.3.3 Bans
|
||||
|
||||
Reserve bans for severe violations or persistent problematic behavior.
|
||||
|
||||
To ban: `/ban username*!*@*`
|
||||
|
||||
Always document the reason for bans in your moderation logs.
|
||||
|
||||
#### 2.6.4 Specific Situations
|
||||
|
||||
1. **Spam**: Use kicks, escalating to short-term bans for repeat offenses.
|
||||
2. **Offensive Language**: Warn, then kick. Ban for repeated offenses.
|
||||
3. **Flooding**: Mute temporarily, kick if behavior continues.
|
||||
4. **Off-topic Discussions**: Gently redirect to appropriate channels.
|
||||
5. **Bot Attacks**: Set channel to moderated mode (+m) temporarily.
|
||||
|
||||
#### 2.6.5 Channel Management
|
||||
|
||||
- Regularly update channel topics with important information or rules.
|
||||
- Manage channel modes to maintain order (e.g., +m for moderated discussions).
|
||||
- Coordinate with other ops to ensure consistent coverage and enforcement.
|
||||
|
||||
#### 2.6.6 User Support
|
||||
|
||||
- Be responsive to user queries about channel rules or IRC usage.
|
||||
- Guide new users on proper IRC etiquette and our community standards.
|
||||
|
||||
#### 2.6.7 Logging and Reporting
|
||||
|
||||
- Maintain logs of significant moderation actions for team review.
|
||||
- Report any serious incidents or patterns to admins.
|
||||
|
||||
### 2.7 Slack Moderation
|
||||
|
||||
#### 2.7.1 General Responsibilities
|
||||
|
||||
- Monitor channel activities across public channels.
|
||||
- Enforce workspace rules and Slack's terms of service.
|
||||
- Assist users with questions and foster a collaborative atmosphere.
|
||||
- Manage channel settings and user permissions as needed.
|
||||
|
||||
#### 2.7.2 Slack-Specific Moderation Tools
|
||||
|
||||
Familiarize yourself with these essential Slack moderation features:
|
||||
|
||||
1. Message deletion: Remove inappropriate messages.
|
||||
2. User management: Adjust user roles and permissions.
|
||||
3. Channel management: Create, archive, or modify channel settings.
|
||||
4. Workspace settings: Configure global settings for the workspace.
|
||||
|
||||
#### 2.7.3 Moderation Actions
|
||||
|
||||
##### 2.7.3.1 Warnings
|
||||
|
||||
For minor infractions, start with a private message to the user.
|
||||
|
||||
Example: "Hi [Username], please remember to use threads for extended discussions to keep the main channel clear. Thanks!"
|
||||
|
||||
##### 2.7.3.2 Message Removal
|
||||
|
||||
Use message deletion for content that violates workspace rules.
|
||||
|
||||
##### 2.7.3.3 Restricting Privileges
|
||||
|
||||
For repeated offenses, consider restricting user privileges temporarily.
|
||||
|
||||
##### 2.7.3.4 Removing Users
|
||||
|
||||
In severe cases, remove users from the workspace. This should be a last resort.
|
||||
|
||||
#### 2.7.4 Specific Situations
|
||||
|
||||
1. **Off-topic discussions**: Gently redirect to appropriate channels.
|
||||
2. **Inappropriate content**: Remove the content and privately message the user.
|
||||
3. **Spam**: Delete spam messages and restrict user privileges if persistent.
|
||||
4. **Heated arguments**: Intervene privately to de-escalate and remind users of conduct guidelines.
|
||||
5. **Sensitive information sharing**: Quickly remove any posts containing sensitive data and follow up with the user.
|
||||
|
||||
#### 2.7.5 Channel Management
|
||||
|
||||
- Regularly review and update channel purposes and topics.
|
||||
- Archive inactive channels to keep the workspace organized.
|
||||
- Ensure channels have appropriate permissions set.
|
||||
|
||||
#### 2.7.6 User Support
|
||||
|
||||
- Be responsive to user queries about workspace rules or Slack usage.
|
||||
- Guide new users on Slack etiquette and our community standards.
|
||||
- Assist with general troubleshooting of Slack features.
|
||||
|
||||
#### 2.7.7 Logging and Reporting
|
||||
|
||||
- Utilize Slack's built-in logs for auditing purposes.
|
||||
- Report any serious incidents or patterns to admins.
|
||||
|
||||
#### 2.7.8 Integration Management
|
||||
|
||||
- Monitor and manage third-party app integrations to ensure they're used appropriately.
|
||||
- Be prepared to troubleshoot or disable problematic integrations.
|
||||
|
||||
|
||||
### 2.8 Matrix Moderation
|
||||
|
||||
#### 2.8.1 General Responsibilities
|
||||
|
||||
- Monitor room activities across our Matrix spaces.
|
||||
- Enforce room rules and the Matrix.org Terms of Service.
|
||||
- Assist users with questions and foster an inclusive atmosphere.
|
||||
- Manage room settings and user power levels as needed.
|
||||
|
||||
#### 2.8.2 Matrix-Specific Moderation Tools
|
||||
|
||||
Familiarize yourself with these essential Matrix moderation features:
|
||||
|
||||
1. Redaction: Remove inappropriate messages.
|
||||
1. Kick/Ban: Remove users temporarily or permanently from rooms.
|
||||
1. Room settings: Modify room join rules, visibility, and other parameters.
|
||||
|
||||
#### 2.8.3 Moderation Actions
|
||||
|
||||
##### 2.8.3.1 Warnings
|
||||
|
||||
For minor infractions, start with a private message to the user.
|
||||
|
||||
Example: "Hi @username:domain.com, please remember to stay on-topic in #general. Thanks for your cooperation!"
|
||||
|
||||
##### 2.8.3.2 Message Redaction
|
||||
|
||||
Use redaction for content that violates room rules or Matrix ToS.
|
||||
|
||||
##### 2.8.3.3 Kicks and Bans
|
||||
|
||||
In severe cases, kick or ban users from the room. Use bans sparingly and for serious violations.
|
||||
|
||||
#### 2.8.4 Specific Situations
|
||||
|
||||
1. **Spam**: Redact spam messages and lower user power level if persistent.
|
||||
2. **Offensive content**: Redact the content and privately message the user.
|
||||
3. **Off-topic discussions**: Gently redirect to appropriate rooms or spaces.
|
||||
4. **Bridged content issues**: Address issues specific to bridged networks (e.g., IRC, Discord) appropriately.
|
||||
5. **End-to-end encrypted rooms**: Be aware of limitations in moderating e2ee rooms.
|
||||
|
||||
#### 2.8.5 Room Management
|
||||
|
||||
- Regularly review and update room topics and info.
|
||||
- Manage room aliases and directory visibility.
|
||||
- Ensure rooms have appropriate power level settings.
|
||||
|
||||
#### 2.8.6 User Support
|
||||
|
||||
- Be responsive to user queries about room rules or Matrix usage.
|
||||
- Guide new users on Matrix etiquette and our community standards.
|
||||
- Assist with general troubleshooting of Matrix clients and features.
|
||||
|
||||
#### 2.8.7 Logging and Reporting
|
||||
|
||||
- Utilize Matrix's event logs for auditing purposes where necessary.
|
||||
- Report any serious incidents or patterns to admins.
|
||||
|
||||
#### 2.8.8 Federation Management
|
||||
|
||||
- Be aware of federation status with other homeservers.
|
||||
- Know how to contact admins of other homeservers if inter-server issues arise.
|
||||
|
||||
## 3. Working With Fellow Moderators
|
||||
|
||||
### 3.1 Communication Channels
|
||||
|
||||
#### 3.1.1 Primary Communication Platform
|
||||
- Discord serves as our primary communication hub for the moderation team.
|
||||
- A private `#staff-chat` channel is available for internal discussions.
|
||||
|
||||
#### 3.1.2 Use of Staff Chat
|
||||
- Utilize the `#staff-chat` channel for:
|
||||
- Discussing concerns
|
||||
- Seeking advice on handling situations
|
||||
- Requesting assistance with ongoing issues
|
||||
- Sharing relevant information with the team
|
||||
|
||||
### 3.2 Collaborative Problem-Solving
|
||||
|
||||
- Approach fellow moderators for help and insights when needed.
|
||||
- Be open to offering assistance when others request it.
|
||||
- Engage in constructive discussions to find optimal solutions.
|
||||
|
||||
### 3.3 Team Unity and Public Image
|
||||
|
||||
- Maintain a united front in public spaces.
|
||||
- Avoid disagreeing with or criticizing fellow moderators in public forums.
|
||||
- If you have concerns about a moderation action or a colleague's behavior:
|
||||
- Address the issue privately in the staff chat or through direct messages.
|
||||
- Seek resolution through open and respectful dialogue.
|
||||
|
||||
### 3.4 Conflict Resolution
|
||||
|
||||
- If unable to resolve disagreements among yourselves:
|
||||
- Escalate the matter to Naomi for guidance.
|
||||
- Present the situation objectively, providing necessary context.
|
||||
|
||||
### 3.5 Supporting Each Other
|
||||
|
||||
- Recognize that moderation can be challenging.
|
||||
- Offer emotional support and encouragement to fellow moderators.
|
||||
- Share experiences and coping strategies for dealing with difficult situations.
|
||||
|
||||
### 3.6 Knowledge Sharing
|
||||
|
||||
- Use the staff chat to share useful resources, tools, or techniques.
|
||||
- Discuss emerging trends or patterns in user behavior that may require attention.
|
||||
|
||||
### 3.7 Consistency in Moderation
|
||||
|
||||
- Regularly discuss and align on interpretation and enforcement of community rules.
|
||||
- Share examples of how you've handled specific situations to ensure consistency.
|
||||
|
||||
### 3.8 Respecting Privacy
|
||||
|
||||
- Keep all discussions in staff channels confidential.
|
||||
- Do not share private moderator conversations with community members.
|
||||
|
||||
### 3.9 Active Participation
|
||||
|
||||
- Regularly check and engage in staff communications.
|
||||
- Contribute to team discussions and decision-making processes.
|
||||
|
||||
### 3.10 Continuous Improvement
|
||||
|
||||
- Be open to feedback from fellow moderators.
|
||||
- Suggest improvements to moderation processes or team communication.
|
||||
- Participate in any team training or development activities.
|
||||
|
||||
## 4. Logging Sanctions
|
||||
|
||||
### 4.1 Discord Sanctions
|
||||
|
||||
- Moderation actions on Discord are automatically logged by our system.
|
||||
- No additional manual logging is required for Discord-specific actions.
|
||||
|
||||
### 4.2 Sanctions on Other Platforms
|
||||
|
||||
For all platforms other than Discord, manual logging is necessary:
|
||||
|
||||
#### 4.2.1 Logging Channel
|
||||
- Use the `#mod-logs` channel in our Discord community for logging all non-Discord sanctions.
|
||||
|
||||
#### 4.2.2 Required Information
|
||||
When logging a sanction, include the following details:
|
||||
|
||||
1. Platform: Specify the platform where the action was taken (e.g., Twitch, Reddit, Codeberg).
|
||||
2. Username: Provide the exact username or handle of the sanctioned member.
|
||||
3. Reason: Clearly state the reason for the sanction, referencing specific rule violations if applicable.
|
||||
4. Evidence: Include or describe any relevant evidence supporting the action taken.
|
||||
5. Action Taken: Specify the type of sanction (e.g., warning, temporary ban, permanent ban).
|
||||
6. Duration: For temporary sanctions, note the duration.
|
||||
|
||||
#### 4.2.3 Logging Format
|
||||
Use the following format for consistency:
|
||||
|
||||
```
|
||||
Platform: [Platform Name]
|
||||
User: [Username]
|
||||
Action: [Type of Sanction]
|
||||
Duration: [If applicable]
|
||||
Reason: [Detailed explanation]
|
||||
Evidence: [Description or link to evidence]
|
||||
```
|
||||
|
||||
### 4.3 Best Practices for Sanction Logging
|
||||
|
||||
1. **Timeliness**: Log the sanction as soon as possible after taking action.
|
||||
2. **Objectivity**: Stick to facts and avoid personal opinions in the log.
|
||||
3. **Clarity**: Ensure your log entry is clear and understandable to other moderators.
|
||||
4. **Completeness**: Include all relevant information, even if it seems minor.
|
||||
5. **Confidentiality**: Do not share logs outside of the moderation team.
|
||||
|
||||
### 4.4 Using Logged Information
|
||||
|
||||
- Regularly review logs to identify patterns or recurring issues.
|
||||
- Use logged information to ensure consistent application of rules across platforms.
|
||||
- Refer to logs when discussing moderation strategies or updating community guidelines.
|
||||
|
||||
### 4.5 Correcting or Updating Logs
|
||||
|
||||
- If you need to correct or update a logged sanction, do so in the same channel.
|
||||
- Clearly mark your message as an update or correction to a previous log entry.
|
||||
|
||||
### 4.6 Reviewing Logs
|
||||
|
||||
- Administrators should periodically review sanction logs to ensure:
|
||||
- Consistency in moderation across the team
|
||||
- Proper documentation of all actions
|
||||
- Identification of any trends or areas needing attention
|
||||
|
||||
## 5. User Support
|
||||
|
||||
### 3.1 Role in User Experience
|
||||
|
||||
As a member of our team, you play a crucial role in ensuring a positive and smooth user experience across all our platforms. Your ability to provide timely and accurate support is essential to our community's satisfaction and growth.
|
||||
|
||||
### 5.2 Knowledge Base
|
||||
|
||||
- Familiarize yourself with most of our projects to answer a wide range of questions.
|
||||
- Stay updated on recent changes or updates to our projects.
|
||||
- Utilize available resources (documentation, FAQs, wikis) to assist users effectively.
|
||||
|
||||
### 5.3 Handling User Inquiries
|
||||
|
||||
#### 5.3.1 Immediate Assistance
|
||||
- Respond promptly to users seeking help on any of our platforms.
|
||||
- Provide clear, concise answers to questions you're confident about.
|
||||
|
||||
#### 5.3.2 Complex Inquiries
|
||||
- For questions you're unsure about, don't hesitate to seek help.
|
||||
- Inform the user that you're looking into their issue to manage expectations.
|
||||
|
||||
### 5.4 Collaborative Problem-Solving
|
||||
|
||||
- Utilize the staff chat in Discord for discussing complex user questions.
|
||||
- Engage with fellow staff members to collaboratively find solutions.
|
||||
- Share knowledge and insights to improve the team's overall support capabilities.
|
||||
|
||||
### 5.5 Follow-up
|
||||
|
||||
- After providing a solution, check if the user's issue has been fully resolved.
|
||||
- Encourage users to reach out again if they need further assistance.
|
||||
|
||||
### 5.6 Continuous Improvement
|
||||
|
||||
- Keep track of common user issues and suggest improvements to our documentation or user interfaces.
|
||||
- Share insights gained from user interactions with the rest of the team to enhance our overall support quality.
|
||||
|
||||
## 6. Contributor Support
|
||||
|
||||
### 6.1 Welcoming New Contributors
|
||||
|
||||
- Greet new contributors warmly when they show interest in our projects.
|
||||
- Provide guidance on where to find our contribution guidelines and code of conduct.
|
||||
- Offer assistance in identifying suitable first issues or tasks for newcomers.
|
||||
|
||||
### 6.2 Technical Assistance
|
||||
|
||||
- Help contributors set up their development environments.
|
||||
- Provide explanations or resources for understanding our project structure and coding standards.
|
||||
- Assist with version control (e.g. git) usage if needed.
|
||||
|
||||
### 6.3 Code Review Support
|
||||
|
||||
- Offer constructive feedback on pull requests or proposed changes.
|
||||
- Explain the reasoning behind any requested modifications.
|
||||
- Guide contributors through the process of updating their submissions.
|
||||
|
||||
### 6.4 Documentation Support
|
||||
|
||||
- Assist contributors in locating or updating project documentation.
|
||||
- Encourage and guide contributors who wish to improve our documentation.
|
||||
- Provide feedback on proposed documentation changes.
|
||||
|
||||
### 6.5 Issue Clarification
|
||||
|
||||
- Help contributors understand the scope and requirements of open issues.
|
||||
- Provide additional context or clarification on feature requests or bug reports.
|
||||
|
||||
### 6.6 Communication Channels
|
||||
|
||||
- Direct contributors to appropriate communication channels (e.g., mailing lists, chat rooms, forums) for project-specific discussions.
|
||||
- Monitor these channels to provide timely responses to contributor queries.
|
||||
|
||||
### 6.7 Mentoring
|
||||
|
||||
- Offer mentorship to promising contributors who show consistent interest.
|
||||
- Provide guidance on best practices, advanced topics, and project goals.
|
||||
|
||||
### 6.8 Recognition and Encouragement
|
||||
|
||||
- Acknowledge and thank contributors for their efforts, regardless of the outcome.
|
||||
- Highlight significant contributions in project updates or community announcements.
|
||||
|
||||
### 6.9 Conflict Resolution
|
||||
|
||||
- Mediate any disagreements between contributors professionally and impartially.
|
||||
- Ensure discussions remain constructive and aligned with our code of conduct.
|
||||
|
||||
### 6.10 Continuous Improvement
|
||||
|
||||
- Regularly review and update our contribution processes based on feedback.
|
||||
- Seek input from contributors on how to improve their experience.
|
||||
|
||||
## 7. Cross-Platform Access
|
||||
|
||||
### 7.1 Eligibility for Cross-Platform Roles
|
||||
|
||||
- Once you have been selected for a staff position on any of our platforms, you become eligible to request staff access on additional platforms.
|
||||
- This opportunity is open to all current staff members in good standing.
|
||||
|
||||
### 7.2 Requesting Additional Platform Access
|
||||
|
||||
- If you wish to expand your staff role to other platforms:
|
||||
- Express your interest to an admin or through the designated channel for such requests.
|
||||
- Specify which additional platform(s) you'd like to moderate.
|
||||
- Briefly explain why you're interested in moderating these additional platforms.
|
||||
|
||||
### 7.3 Approval Process
|
||||
|
||||
- Requests for additional platform access will be reviewed by the admin team.
|
||||
- Factors considered in the approval process may include:
|
||||
- Your performance in your current role
|
||||
- Your familiarity with the requested platform
|
||||
- The current staffing needs on that platform
|
||||
|
||||
### 7.4 Training and Onboarding
|
||||
|
||||
- If approved for a cross-platform role, you may be required to undergo platform-specific training.
|
||||
- Familiarize yourself with any unique rules or moderation tools for the new platform.
|
||||
|
||||
### 7.5 Responsibilities of Cross-Platform Staff
|
||||
|
||||
- Maintain consistency in rule enforcement across all platforms you moderate.
|
||||
- Be aware of platform-specific nuances and adjust your approach accordingly.
|
||||
- Help bridge communication between different platform teams.
|
||||
|
||||
### 7.6 Benefits of Cross-Platform Moderation
|
||||
|
||||
- Provides a more cohesive user experience across our community's various platforms.
|
||||
- Allows for more efficient sharing of information and moderation strategies.
|
||||
- Enhances your skills and versatility as a moderator.
|
||||
|
||||
### 7.7 Balancing Responsibilities
|
||||
|
||||
- Ensure that taking on additional platforms does not negatively impact your performance on your original platform.
|
||||
- Communicate with the moderation team if you feel overwhelmed or need to scale back your responsibilities.
|
||||
|
||||
### 7.8 Periodic Review
|
||||
|
||||
- Your cross-platform roles will be periodically reviewed to ensure effective moderation across all assigned platforms.
|
||||
- Feedback and additional training may be provided as needed.
|
||||
|
1204
docs/terms.md
1204
docs/terms.md
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user