├── AMBASSADORS.md ├── Contributing ├── CODE_OF_CONDUCT.md └── REPORTING_GUIDELINES.md ├── DESIGN_CONTRIBUTION_GUIDELINES.md ├── FORK_CLONE_REMOTE.md ├── LICENSE ├── MAINTAINER_GUIDELINES.md ├── PULL_REQUEST_LIFECYCLE.md ├── README.md ├── frequently-asked-questions.md ├── meetings └── mentorship-system.md ├── our-blog.md ├── quality-assurance.md ├── ways-to-contribute.md └── zulip.md /AMBASSADORS.md: -------------------------------------------------------------------------------- 1 | # Maintainer & Ambassadors Responsibilities 2 | 3 | This is the general information for our leadership positions: Maintainer and Ambassador. 4 | 5 | *Note that as part of any of these positions, you’ll be responsible to help projects but also advocate opportunities for members of the community to collaborate.* 6 | 7 | ## Responsibilities (All Teams) 8 | 9 | - Be active on Zulip and GitHub 10 | - Be transparent about project development on Zulip 11 | - Create and promote opportunities to collaborate and contribute to the project you are working with (including first-timers only opportunities) 12 | - Attend weekly project meeting 30 min to 1 hour and post summary on Zulip 13 | - to discuss action items and high priority concerns 14 | - Attend monthly team meeting 30 min and post summary on Zulip 15 | - to discuss team needs and areas needing improvement 16 | - provide feedback on the processes and solutions 17 | - Attend at least 1 onboarding session 18 | - Post a scrum check-in message once a week 19 | 20 | ## Qualifications 21 | 22 | - Follows our org’s values: Accountable, Agile, Curious, Courageous, & Diversity, Equity, Inclusion (DEI). 23 | - Communicates honestly and transparently. 24 | - Communication skills in English are proficient (verbal and text). 25 | - Follow and encourage everyone to follow the org’s contributing guidelines. 26 | - Passion for open source. 27 | - Encourages contributions of ALL kinds (content, coding, documentation, testing, etc) 28 | - Access to a computer. 29 | - Access to the internet. 30 | - Actively communicates on Zulip and GitHub. 31 | - Actively attends open sessions and engages in the topics of discussion. 32 | - Have contributed to the community 33 | - Have joined the community before October 2020 34 | 35 | ## Benefits 36 | 37 | - Gain experience in open source 38 | - Gain experience in a remote work (work from home) position 39 | - Work with a global team 40 | - Invitation to AnitaB.org GitHub Org 41 | - Digital Certificate from AnitaB.org 42 | - Position to add to your Resume/LinkedIn. 43 | - Invitation to an Exclusive Career Session to learn how to market this position. 44 | 45 | ## Maintainer Guidelines 46 | 47 | A project should have a group of maintainers (people may belong to multiple categories). At least one of the maintainers has to meet monthly with an admin, to check on the project’s health and report on it. Ask for help if needed. 48 | 49 | **General Responsibilities** 50 | 51 | - Attending and/or leading their Project’s Open Session. 52 | - Triaging/Managing Issues. 53 | - Define and manage the roadmap of the project. 54 | - Reinforce the guidelines of the community to be followed. 55 | - Reviewing and Merging PRs. 56 | - If you can’t review, you can ask the community for help 57 | - Collaborate with other maintainers, ambassadors and community members 58 | - Meet on a monthly basis, with all maintainers of the project. To make sure everyone is in sync is running smoothly. 59 | 60 | 61 | ## Open Source Ambassadors Guidelines 62 | 63 | ### Design 64 | 65 | As a designer you will have a direct impact in shaping AnitaB.org applications in matters of UI and UX. You will be working on an assigned project, but also you will be sharing your knowledge and learning from other designers. At AnitaB.org Open Source we put loads of attention to accessibility designs. You can get more experience and grow your skills by helping shape out our projects. 66 | 67 | **General Responsibilities** 68 | 69 | - Attend product roadmap in assigned project 70 | - Review existing designs 71 | - Design new feature, redesign existing features (if ticket exist and assigned) 72 | - Create and maintain metrics document and guard consistency in the project 73 | - Review UI coding PR’s (test if everything looks as expected) 74 | - Attend design session to discuss challenges in design within our projects 75 | - Create User Journey wireframes 76 | - Meet on a monthly basis, with all designers to discuss processes 77 | 78 | ### Quality Assurance 79 | 80 | Your work fosters a community of debuggers integrating with AnitaB.org's mission to increase tech equity and helps to drive strategy around Testing Practices for our open source projects. 81 | 82 | **General Responsibilities** 83 | 84 | - Test our applications, in particular for the project you’ve been assigned to 85 | - Verify the versions of the platform it was tested on and the cases that were tested. 86 | - Test apps in production or development, open issues to report bugs and, if possible, document them on Test Quality. 87 | - i.e. check the features, if the app breaks, debug with valid and invalid input, etc. 88 | - Document at least 4 test scenarios per month. 89 | - Confirm bugs that are reported in the Issues. 90 | - Test Pull Requests and submit a review after the tests fail or pass. 91 | - Follow our Quality Assurance process and help improve it. 92 | 93 | ### Documentation 94 | 95 | Your work will help to drive strategy around Documentation Practices for our open source projects. You will help us maintain and improve documentation for our projects. 96 | 97 | **General Responsibilities** 98 | 99 | - Create and maintain documentation for the assigned project 100 | - This includes project-specific documentation 101 | - Make sure technical decisions are properly documented 102 | - Help improve our communities’ documentation practices 103 | - Make sure that all documentation follows AnitaB.org standards (similar structure) 104 | - Migrate projects’ documentation to Docusaurus 105 | 106 | ### Advocacy 107 | 108 | Your work fosters a community of contributors integrating with AnitaB.org's mission to increase tech equity and helps to drive strategy around Community Relations. You will be crucial to keep the community engaged and create a good onboarding experience for newcomers. 109 | 110 | **General Responsibilities** 111 | 112 | - Welcome and help newcomers understand how our community works and how they can get started. 113 | - Develop training/onboarding content for newcomers. 114 | - Promote community and its opportunities on Zulip and social media. 115 | - Identify documentation that helps to minimize confusion for newcomers (FAQs, setup doc, etc). 116 | - if project-specific coordinate with documentation ambassadors 117 | - Encouraging others to blog about their experience in open source. 118 | -------------------------------------------------------------------------------- /Contributing/CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- 1 | # Code of Conduct 2 | 3 | ## 1. Purpose 4 | 5 | A primary goal of AnitaB.org Open Source is to be inclusive to the largest number of contributors, with the most varied and diverse backgrounds possible. As such, we are committed to providing a friendly, safe and welcoming environment for all, regardless of gender, sexual orientation, ability, ethnicity, socioeconomic status, and religion (or lack thereof). 6 | 7 | This code of conduct outlines our expectations for all those who participate in our community, as well as the consequences for unacceptable behavior. 8 | 9 | We invite all those who participate in open source contributions to help us create safe and positive experiences for everyone. 10 | 11 | ## 2. Open Source Citizenship 12 | 13 | A supplemental goal of this Code of Conduct is to increase open source citizenship by encouraging participants to recognize and strengthen the relationships between our actions and their effects on our community. 14 | 15 | Communities mirror the societies in which they exist and positive action is essential to counteract the many forms of inequality and abuses of power that exist in society. 16 | 17 | If you see someone who is making an extra effort to ensure our community is welcoming, friendly, and encourages all participants to contribute to the fullest extent, we want to know. 18 | 19 | ## 3. Expected Behavior 20 | 21 | The following behaviors are expected and requested of all community members: 22 | 23 | * Participate in an authentic and active way. In doing so, you contribute to the health and longevity of this community. 24 | * Exercise consideration and respect in your speech and actions. 25 | * Attempt collaboration before conflict. 26 | * Refrain from demeaning, discriminatory, or harassing behavior and speech. 27 | * Be mindful of your surroundings and of your fellow participants. Alert community leaders if you notice a dangerous situation, someone in distress, or violations of this Code of Conduct, even if they seem inconsequential. 28 | * Remember that community event venues may be shared with members of the public; please be respectful to all patrons of these locations. 29 | 30 | ## 4. Unacceptable Behavior 31 | 32 | The following behaviors are considered harassment and are unacceptable within our community: 33 | 34 | * Violence, threats of violence or violent language directed against another person. 35 | * Sexist, racist, homophobic, transphobic, ableist or otherwise discriminatory jokes and language. 36 | * Posting or displaying sexually explicit or violent material. 37 | * Posting or threatening to post other people’s personally identifying information ("doxing"). 38 | * Personal insults, particularly those related to gender, sexual orientation, race, religion, or disability. 39 | * Inappropriate photography or recording. 40 | * Inappropriate physical contact. You should have someone’s consent before touching them. 41 | * Unwelcome sexual attention. This includes, sexualized comments or jokes; inappropriate touching, groping, and unwelcomed sexual advances. 42 | * Deliberate intimidation, stalking or following (online or in person). 43 | * Advocating for, or encouraging, any of the above behavior. 44 | * Sustained disruption of community events, including talks and presentations. 45 | 46 | ## 5. Consequences of Unacceptable Behavior 47 | 48 | Unacceptable behavior from any community member, including sponsors and those with decision-making authority, will not be tolerated. 49 | 50 | Anyone asked to stop unacceptable behavior is expected to comply immediately. 51 | 52 | If a community member engages in unacceptable behavior, the community admins may take any action they deem appropriate, up to and including a temporary ban or permanent expulsion from the community without warning (and without refund in the case of a paid event). 53 | 54 | ## 6. Reporting Guidelines 55 | If you are subject to or witness unacceptable behavior, or have any other concerns, please notify a community admin as soon as possible by emailing opensource@anitab.org. Please read [Reporting Guidelines](reporting_guidelines.md) for details. 56 | 57 | 58 | 59 | Additionally, community admins are available to help community members engage with local law enforcement or to otherwise help those experiencing unacceptable behavior feel safe. In the context of in-person events, community admins (or event managers) will also provide escorts as desired by the person experiencing distress. 60 | 61 | ## 7. Addressing Grievances 62 | 63 | Only permanent resolutions (such as bans) may be appealed. To appeal a decision of the working group, contact AnitaB.org staff at opensource@anitab.org with your appeal and we will review the case. 64 | 65 | 66 | ## 8. Scope 67 | 68 | We expect all community participants (contributors, paid or otherwise; sponsors; and other guests) to abide by this Code of Conduct in all community venues–online and in-person–as well as in all one-on-one communications pertaining to community business. 69 | 70 | This code of conduct and its related procedures also applies to unacceptable behavior occurring outside the scope of community activities when such behavior has the potential to adversely affect the safety and well-being of community members. 71 | 72 | ## 9. Contact info 73 | 74 | opensource@anitab.org 75 | 76 | ## 10. License and attribution 77 | 78 | This Code of Conduct is distributed under a [Creative Commons Attribution-ShareAlike license](http://creativecommons.org/licenses/by-sa/3.0/). 79 | 80 | Portions of text derived from the [Django Code of Conduct](https://www.djangoproject.com/conduct/) and the [Geek Feminism Anti-Harassment Policy](http://geekfeminism.wikia.com/wiki/Conference_anti-harassment/Policy). 81 | 82 | Retrieved on November 22, 2016 from [http://citizencodeofconduct.org/](http://citizencodeofconduct.org/) 83 | 84 | -------------------------------------------------------------------------------- /Contributing/REPORTING_GUIDELINES.md: -------------------------------------------------------------------------------- 1 | # Reporting Guidelines 2 | 3 | If you believe someone is violating the code of conduct we ask that you report it to the community admins by emailing opensource@anitab.org. 4 | 5 | **All reports will be kept confidential**. In some cases we may determine that a public statement will need to be made. If that's the case, the identities of all victims and reporters will remain confidential unless those individuals instruct us otherwise. 6 | 7 | If you believe anyone is in physical danger, please notify appropriate emergency services first. If you are unsure what service or agency is appropriate to contact, include this in your report and we will attempt to notify them. 8 | 9 | In your report please include: 10 | 11 | * Your contact info for follow-up contact. 12 | * Names (legal, nicknames, or pseudonyms) of any individuals involved. 13 | * If there were other witnesses besides you, please try to include them as well. 14 | * When and where the incident occurred. Please be as specific as possible. 15 | * Your account of what occurred. 16 | * If there is a publicly available record (e.g. a mailing list archive or a public IRC logger) please include a link. 17 | * Any extra context you believe existed for the incident. 18 | * If you believe this incident is ongoing. 19 | * Any other information you believe we should have. 20 | 21 | 22 | 23 | ## What happens after you file a report? 24 | 25 | You will receive an email from the AnitaB.org Open Source's Code of Conduct response team acknowledging receipt as soon as possible, but within 48 hours. 26 | 27 | The working group will immediately meet to review the incident and determine: 28 | 29 | * What happened. 30 | * Whether this event constitutes a code of conduct violation. 31 | * What kind of response is appropriate. 32 | 33 | If this is determined to be an ongoing incident or a threat to physical safety, the team's immediate priority will be to protect everyone involved. This means we may delay an "official" response until we believe that the situation has ended and that everyone is physically safe. 34 | 35 | Once the team has a complete account of the events they will make a decision as to how to respond. Responses may include: 36 | 37 | Nothing (if we determine no code of conduct violation occurred). 38 | * A private reprimand from the Code of Conduct response team to the individual(s) involved. 39 | * A public reprimand. 40 | * An imposed vacation (i.e. asking someone to "take a week off" from a mailing list or IRC). 41 | * A permanent or temporary ban from some or all of AnitaB.org spaces (events, meetings, mailing lists, IRC, etc.) 42 | * A request to engage in mediation and/or an accountability plan. 43 | We'll respond within one week to the person who filed the report with either a resolution or an explanation of why the situation is not yet resolved. 44 | 45 | Once we've determined our final action, we'll contact the original reporter to let them know what action (if any) we'll be taking. We'll take into account feedback from the reporter on the appropriateness of our response, but our response will be determined by what will be best for community safety. 46 | 47 | Finally, the response team will make a report on the situation to the AnitaB.org's Open Source Board. The board may choose to issue a public report of the incident or take additional actions. 48 | 49 | 50 | 51 | ## Appealing the response 52 | 53 | Only permanent resolutions (such as bans) may be appealed. To appeal a decision of the working group, contact the community admins at opensource@anitab.org with your appeal and we will review the case. 54 | 55 | -------------------------------------------------------------------------------- /DESIGN_CONTRIBUTION_GUIDELINES.md: -------------------------------------------------------------------------------- 1 | # Open Contribution Guideline in Design: 2 | 3 | We are open for anyone to contribute to design in UI and UX. Please follow below rules. How to contribute in designs: 4 | 5 | - It is expected that 1 designer is contributing to the selected project. 6 | - Join a project session to check what is needed to design, familiarise yourself with metrics guidelines if exists. 7 | - Before starting the design make sure you contact the primary ambassador designer for the project to coordinate work which has NOT been assigned yet. 8 | - Start design and attend design sessions regularly to get feedback. 9 | - Once the designs are good, create issues for the developer. This issue needs to be approved by the design team member and has to contain all necessary information including margins, padding, accessibility, font metrics, colors, behaviour on size change, described expected animations, etc. 10 | - If the project does not have a metrics document - this should be created with first design. 11 | - Feel free to review other designers' work either on design sessions or GitHub issues and rise your concerts of inconsistency related to other designs within the project or related to metrics document. Feel free to review current state and rise design bugs if you find any. 12 | 13 | # Open Source Ambassadors Guideline in Design: 14 | 15 | Open Source Ambassadors is at least half year contribution program organised by AnitaB.org open source and required acceptance. As a design ambassador you will have a direct impact in shaping AnitaB.org applications in matters of UI and UX. You will be working on an assigned project, but also you will be sharing your knowledge and learning from other designers. At AnitaB.org Open Source we put loads of attention to accessibility designs. You can get more experience and grow your skills by helping shape out our projects. 16 | 17 | ## General Responsibilities 18 | 19 | - Attend product roadmap in assigned project 20 | - Review existing designs 21 | - Design new feature, redesign existing features (if ticket exist and assigned) 22 | - Create and maintain metrics document and guard consistency in the project 23 | - Review UI coding PR’s (test if everything looks as expected) 24 | - Attend design session to discuss challenges in design within our projects 25 | - Create User Journey wireframes 26 | - Meet on a monthly basis, with all designers to discuss processes 27 | -------------------------------------------------------------------------------- /FORK_CLONE_REMOTE.md: -------------------------------------------------------------------------------- 1 | # Fork, Clone & Remote 2 | 3 | 4 | ## Fork 5 | 6 | Note: This is only needed if you want to contribute to the project. 7 | 8 | If you want to contribute to the project you will have to create your own copy of the project on GitHub. You can do this by clicking the Fork button that can be found on the top right corner of the landing page of the repository. 9 | 10 | For example: 11 | 12 | ![image](https://user-images.githubusercontent.com/25927257/112403868-79d2b080-8ccc-11eb-9212-dbd70cf3326e.png) 13 | 14 | 15 | ## Clone 16 | 17 | Note: For this you need to install [git](https://git-scm.com/) on your machine. You can download the git tool from [here](https://git-scm.com/downloads). 18 | 19 | * If you have forked the project, run the following command - 20 | 21 | ` 22 | git clone https://github.com/YOUR_GITHUB_USER_NAME/ 23 | ` 24 | 25 | where `YOUR_GITHUB_USER_NAME` is your GitHub handle and `` is name of Project you are trying to Clone. 26 | 27 | * If you haven't forked the project, run the following command 28 | 29 | ` 30 | git clone https://github.com/anitab-org/ 31 | ` 32 | 33 | `` is name of Project you are trying to Clone, for example, mentorship-backend 34 | 35 | ## Remote 36 | 37 | Note: This is only needed if you want to contribute to the project. 38 | 39 | When a repository is cloned, it has a default remote named `origin` that points to your fork on GitHub, not the original repository it was forked from. To keep track of the original repository, you should add another remote named upstream. For this project it can be done by running the following command - 40 | 41 | `git remote add upstream https://github.com/anitab-org/` 42 | 43 | You can check that the previous command worked by running `git remote -v`. You should see the following output: 44 | 45 | ``` 46 | $ git remote -v 47 | origin https://github.com/YOUR_GITHUB_USER_NAME/ (fetch) 48 | origin https://github.com/YOUR_GITHUB_USER_NAME/ (push) 49 | upstream https://github.com/anitab-org/.git (fetch) 50 | upstream https://github.com/anitab-org/.git (push) 51 | ``` 52 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2020 AnitaB.org Open Source 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /MAINTAINER_GUIDELINES.md: -------------------------------------------------------------------------------- 1 | ## **Guidelines** 2 | 3 | Make sure contributors are respecting the [Contribution Guidelines](https://github.com/anitab-org/anitab-org.github.io/blob/develop/CONTRIBUTING.md). If they don't let them know about it: what is missing, what was disrespected? 4 | 5 | ### Code Review 6 | 7 | * When possible get a second opinion before merging. 8 | * Make sure the PR has a link to the issue. 9 | * If you can, let them know why your change request makes sense. 10 | * (nice to have) If you have time, thank them for contributing to the project. 11 | * Make sure that, if the PR changes actual code, to properly test it or wait for someone to confirm the behavior 12 | 13 | ### Merging PRs 14 | **TL;DR:** 15 | 16 | 1. Select "Squash and Merge". 17 | 2. Edit commit if necessary to follow our style guide and leave the PR id in the message. 18 | 19 | **Long version:** 20 | 21 | About merging pull requests (PRs), to keep the project commit history clean, it's important to have all commits from a PR to be squashed when merging. For this you may have to select "Squash and Merge" option: 22 | 23 | 24 | Squash and Merge on GitHub 25 | 26 | If the commit does not follow our [Commit Message Style Guide](https://github.com/anitab-org/anitab-org.github.io/wiki/Commit-Message-Style-Guide), make sure to ask the contributor to fix it or you can fix it when merging. 27 | 28 | Edit Commit when Merging 29 | 30 | Make sure to always leave the PR identifier, so that we can traceback a commit to a specific PR. -------------------------------------------------------------------------------- /PULL_REQUEST_LIFECYCLE.md: -------------------------------------------------------------------------------- 1 | # Pull request lifecycle 2 | 3 | * PR Template is necessary 4 | * PR needs to link to the issue # 5 | * Issue needs to be validated (at least 1 person from the “core team” of the project) 6 | * Issue needs to be assigned to the person who submitted the PR 7 | * **Exception:** this may not be needed if the PR is about small typo fixes 8 | **Status: Needs Review** 9 | 10 | * Minimum Reviews = 2 PR Reviews from any contributor (at least 1 PR Review from a Maintainer) 11 | * if successful, 12 | * Status Change → Label “Status: Needs Testing” 13 | * if the PR is a documentation PR, we can label it “Status: Ready to Merge” 14 | * if not successful, the Reviewer pings the author to let them know various scopes for improvement. Contributor is responsible for making changes. 15 | * Status Change → Label “Status: Changes Requested” 16 | 17 | **Status: Needs Testing** 18 | 19 | * Minimum QA = 1 QA report (using [this template](quality-assurance.md#how-to-test-a-pr)) from any person (except the author) 20 | * If successful, 21 | * Status Change → Label “Status: Ready to Merge” 22 | * If not successful, QA pings author to let them know where PR failed. Contributor is responsible for making changes. 23 | * Status Change → Label “Status: Changes Requested” 24 | 25 | **Status: Ready to Merge** 26 | 27 | * Minimum Final Check = Code Owners are responsible for making sure the PR went through the whole process. If true, then they merge. If false, they decide what’s best. 28 | * Code Owners (“release managers”) can be Admins, Maintainers, Open Source Ambassadors, or Open Source Program Mentors. They are -invite only- by Admins. 29 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # AnitaB.org Open Source Documentation 2 | 3 | Hey there! 4 | 5 | This is the place to document everything about our AnitaB.org Open Source community. 6 | 7 | If you are here, it probably means you are either looking for a place to start contributing, or some direction regarding your current task. This is the place you will find our community's documentation common to all projects. Check them out [here](#documentation). 8 | 9 | ## Contributing 10 | 11 | We are glad to know that you would like to contribute to our open source projects. If you are new to our community, we strongly recommend getting through the following list. 12 | - Read through the [Code of Conduct](/Contributing/CODE_OF_CONDUCT.md) and [Reporting Guidelines](/Contributing/REPORTING_GUIDELINES.md) 13 | - Join our [Zulip](http://anitab-org.zulipchat.com) community to read our discussions and be part of them! Learn more about how we use Zulip [here](/zulip.md). 14 | - Attend our Open Community sessions to interact with community members and ask questions. You can check our calendars here: [PST](https://calendar.google.com/calendar/embed?src=sh10tv3mtfve62somg9nngp9tg%40group.calendar.google.com&ctz=America/Los_Angeles) || [EST](https://calendar.google.com/calendar/embed?src=sh10tv3mtfve62somg9nngp9tg%40group.calendar.google.com&ctz=America/New_York) || [GMT](https://calendar.google.com/calendar/embed?src=sh10tv3mtfve62somg9nngp9tg%40group.calendar.google.com&ctz=GMT) || [WAT](https://calendar.google.com/calendar/embed?src=sh10tv3mtfve62somg9nngp9tg%40group.calendar.google.com&ctz=Africa/Lagos) || [IST](https://calendar.google.com/calendar/embed?src=sh10tv3mtfve62somg9nngp9tg%40group.calendar.google.com&ctz=Asia/Colombo) || [AEDT](https://calendar.google.com/calendar/embed?src=sh10tv3mtfve62somg9nngp9tg%40group.calendar.google.com&ctz=Australia/Sydney) 15 | 16 | ## Documentation 17 | 18 | Below is a list of documents currently in this repository. If none of these documentation helps, feel free to reach out to us either by asking your question on Zulip or creating an issue requesting the information you need. 19 | 20 | - [Ways to contribute to our community](/ways-to-contribute.md) 21 | - [Our AnitaB.org Open Source Blog publication](/our-blog.md) 22 | - [Zulip: our communication channel](/ZULIP.md) 23 | - [Quality Assurance contribution guidelines](/quality-assurance.md) 24 | - [Design Contribution guidelines](/DESIGN_CONTRIBUTION_GUIDELINES.md) 25 | - [Code of Conduct](/Contributing/CODE_OF_CONDUCT.md) 26 | - This document covers all the points regarding what is expected of you as a member of this community, it lists down appropriate and unappropriate behaviour. 27 | - [Reporting Guidelines](/Contributing/REPORTING_GUIDELINES.md) 28 | - This document lists the ways you can report in case of violation of the Code of Conduct. 29 | - [Frequently Asked Questions (FAQs)](/frequently-asked-questions.md) 30 | -------------------------------------------------------------------------------- /frequently-asked-questions.md: -------------------------------------------------------------------------------- 1 | # Frequently Asked Questions (FAQ) 2 | 3 | This is a list of the most frequently asked questions by members of this community. 4 | 5 | ## Engaging with Community 6 | 7 | **Q: I am new to open source. Where should I start contributing?** 8 | A: If it's your first time contributing to a project, please build and explore [AnitaB.org Open Source](https://github.com/anitab-org). Some repositories have some "first timers only" issues for newcomers. For example, Mentorship Backend contains [a list of “first timers only” issues](https://github.com/anitab-org/mentorship-backend/issues?q=is%3Aissue+is%3Aopen+label%3A%22First+Timers+Only%22) regarding both Documentation and Quality Assurance. 9 | 10 | **Q: What is and who can join Community Open Sessions?** 11 | A: These are sessions where anyone interested in discussing community concerns or projects can join regardless of title, membership level, repository access, or current program involvement. 12 | 13 | **Q: What is the minimal technical knowledge needed to contribute to AnitaB.org projects?** 14 | A: **Zero technical knowledge needed!** Because you can always help with documentation, testing the app, creating wireframes to update it to the new branding guidelines, share our work through creating online content such as blog posts or posting on social media. 15 | 16 | **Q: As a newcomer, how can I contribute to this community?** 17 | - Help writing notes in Community Open Sessions 18 | - Write new or improve current documentation 19 | - Perform Code Reviews on Pull Requests 20 | - Test a project feature and report bugs found through issues 21 | - Share feedback on features, UI, UX, … 22 | - Suggest improvements or new features 23 | - Design UI/UX improvements 24 | - Help community members with troubleshooting problems on Zulip and GitHub 25 | - Design solution architecture 26 | - Solve available issues on GitHub 27 | 28 | You can also check out more ways to contribute on [ways-to-contribute.md](/ways-to-contribute.md). 29 | 30 | **Q: I have found a bug. What should I do?** 31 | A: Raise an issue and wait for the approval. Once it’s approved, if you wish to work on it, leave a comment asking to do so, if you are not interested in working on it, you can leave it as is for another contributor to pick it up. 32 | 33 | **Q: Which Issues/PRs do I review as a Newcomer/Mentor/Maintainer?** 34 | A: All of them (regardless of the project). 35 | 36 | **Q: Can I contribute to GSoC projects even if I’m not a GSoC student?** 37 | A: Yes, GSoC projects are discussed in public channels because we want community involvement. You can even attend weekly meetings for each project if you want to! These projects are just as open source as they were before the GSoC selections. You can contribute with ideas, and even issues if they're not labeled as GSoC issues. 38 | 39 | **Q: Can I private message and why can’t I send a PM to other AnitaB.org Open Source member?** 40 | A: No. Private messaging is disabled and not allowed in the AnitaB.org community. This decision was made in an effort to reduce the amount of inappropriate conduct that was sent in private messages to our female-identifying members. Read more in this [Zulip message by one of the admins](https://anitab-org.zulipchat.com/#narrow/stream/213491-announcements/topic/Code.20of.20Conduct/near/193115029). 41 | 42 | **Q: How do I get access to AnitaB.org Open Source Calendar to learn more about future Community Events/Office Hours?** 43 | A: Check our calendar in different timezones: [PST](https://calendar.google.com/calendar/embed?src=sh10tv3mtfve62somg9nngp9tg%40group.calendar.google.com&ctz=America/Los_Angeles) || [EST](https://calendar.google.com/calendar/embed?src=sh10tv3mtfve62somg9nngp9tg%40group.calendar.google.com&ctz=America/New_York) || [GMT](https://calendar.google.com/calendar/embed?src=sh10tv3mtfve62somg9nngp9tg%40group.calendar.google.com&ctz=GMT) || [WAT](https://calendar.google.com/calendar/embed?src=sh10tv3mtfve62somg9nngp9tg%40group.calendar.google.com&ctz=Africa/Lagos) || [IST](https://calendar.google.com/calendar/embed?src=sh10tv3mtfve62somg9nngp9tg%40group.calendar.google.com&ctz=Asia/Colombo) || [AEDT](https://calendar.google.com/calendar/embed?src=sh10tv3mtfve62somg9nngp9tg%40group.calendar.google.com&ctz=Australia/Sydney). On the bottom right, you can add AnitaB.org Open Calendar to your own Google Calendar which will switch all events to your timezone automatically. 44 | 45 | **Q: I see a lot of projects have been archived. Which projects are active right now?** 46 | A: We have several active projects going on and need work: Mentorship System ([Android](https://github.com/anitab-org/mentorship-android), [Backend](https://github.com/anitab-org/mentorship-backend)), [anitab-org.github.io](https://github.com/anitab-org/anitab-org.github.io), BridgeInTech ([backend](https://github.com/anitab-org/bridge-in-tech-backend) and [web](https://github.com/anitab-org/bridge-in-tech-web)), Open Source Programs ([web](https://github.com/anitab-org/open-source-programs-web) and [backend](https://github.com/anitab-org/open-source-programs-backend)). If you want to work on an archived project, you can fork it and work on it independently. Your contributions will still be recognised. 47 | 48 | **Q: I picked out a project. What do I do next?** 49 | A: Each project comes with a README which guides you on how to setup the project. If you face any problems you need to head over to the project’s Zulip channel and ask your question there. Someone from the community will help you out. If you need help right away, please mention @project-managers and someone will help you out. Once the project is setup, read the contributing guidelines to make your first contribution. 50 | 51 | ## Open Source Programs 52 | 53 | **Q: Can previous ambassadors, apply to be an ambassador again?** 54 | A: Yes! You can re-apply. 55 | 56 | **Q: Do GSoC mentors receive compensation?** 57 | A: Please email gsoc-support@google.com for inquiries and learn more information on the [Google Summer of Code official website](https://summerofcode.withgoogle.com/). 58 | 59 | **Q: Can I contribute to GSoC projects even if I’m not a GSoC student?** 60 | A: Yes, GSoC projects are discussed in public channels because we want community involvement. You can even attend weekly meetings of each project if you want to! These projects are just as open source as they were before the GSoC selections. You can contribute with ideas, and even issues if they're not labeled as GSoC issues. 61 | 62 | **Q: Do I have to be a part of GSoC/Ambassadors/Maintainers to contribute to AnitaB.org Open Source?** 63 | A: No, you don’t need to be a part of those programs to contribute to AnitaB.org Open Source. Anyone can contribute to the open source community anytime. 64 | 65 | **Q: Do I have to be a part of Open Source Ambassadors to contribute to AnitaB.org Open Source?** 66 | A: No, you do not have to be a part of open source teams to contribute to AnitaB.org Open Source. 67 | 68 | ## Systers to AnitaB.org Open Source change 69 | 70 | **Q: What is the difference between Systers Open Source and AnitaB.org Open Source?** 71 | A: We rebranded from Systers Open Source to AnitaB.org Open Source in 2020. GitHub projects that were active or still needed development have been moved to [github.com/anitab-org](http://github.com/anitab-org). 72 | 73 | **Q: Are we still using Systers-open source on Slack?** 74 | A: Nope, we moved to Zulip - [AnitaB-org.zulipchat.com](https://anitab-org.zulipchat.com/) and anyone who was in our Slack was invited to the new workspace. 75 | 76 | **Q: Why did we move from Slack to Zulip?** 77 | A: Here are some reasons: 78 | - Private Messages were disabled. 79 | - Minimum age required to be on Slack is 16 years, which excludes our Google Code-in Participants. 80 | 81 | ## General 82 | 83 | **Q: Are the Admin 1:1 meetings open to everyone?** 84 | A: No. The 1:1 Admin meeting is specifically only for admin and invited members. These may happen in accordance with our Code of Conduct. 85 | 86 | **Q: Does AnitaB.org Open Source qualify as a Google Developers Group, Women Tech Maker, any other developer community?** 87 | A: No. AnitaB.org Open Source is a separate open source community which is not qualified for Google Developers Group or Women Tech Maker. Our community mainly focuses on providing opportunities to anyone to get involved in open source projects aligns with AnitaB.org missions and values. 88 | 89 | **Q: Where should I post about general questions?** 90 | A: If you have any questions on where we need help, reach out in [#questions](https://anitab-org.zulipchat.com/#narrow/stream/223070-questions) or [#newcomers](https://anitab-org.zulipchat.com/#narrow/stream/223071-newcomers) or [#general](https://anitab-org.zulipchat.com/#narrow/stream/212722-general) streams on [our Zulip community](https://anitab-org.zulipchat.com). You can also attend one of the open sessions, they are updated in [#announcements > Calendar Events](https://anitab-org.zulipchat.com/#narrow/stream/213491-announcements/topic/Calendar.20Events). 91 | -------------------------------------------------------------------------------- /meetings/mentorship-system.md: -------------------------------------------------------------------------------- 1 | # Mentorship System: Sync Up Session 2 | 3 | ## [June 19th 2021](https://docs.google.com/document/d/1ljIlB8g9Tn4zqdcEC67YoyXxy3cKGcvsDtPDDtiZKSU/edit#heading=h.iamt1ad1xdh5) 4 | 5 | ### Summary 6 | * Reviewed milestones on the backend 7 | * Discussed putting session summaries on the documentation repo. 8 | Conclusion: issue created on GitHub for the same and @gaurivn will create the markdown file 9 | * Fixed Docusaurus SSH keys configuration for BIT backend 10 | 11 | ### Action Items 12 | * @gaurivn: work on adding session summaries to documentation repo 13 | * @vj-codes : create mockups for next meeting of new navigation 14 | 15 | 16 | ## [June 12th 2021](https://docs.google.com/document/d/1ljIlB8g9Tn4zqdcEC67YoyXxy3cKGcvsDtPDDtiZKSU/edit#heading=h.626zu9z2lziv) 17 | 18 | ### Summary 19 | * Discussed GitHub Actions running at least 1 test EVEN if you have to comment the failing ones - Aditya will add test to jetpack compose issue. 20 | * Discussed the design by Vaishnavi that she talked with Anna at Design team. 21 | * Discussed current action items (below) and PRs ([#1077](https://github.com/anitab-org/mentorship-backend/pull/1077)). 22 | 23 | ### Action Items 24 | - @vj-codes: create mockups for next meeting of new navigation. 25 | - @devkapilbansal: create Milestone on Android. 26 | - @gaurivn: look up feature docs Doc1, Doc2, and create issues for Backend items not yet in issues, and add them to milestone if they are part of MVP we agreed on. Assess issues that are created or missing, to add to Backend Milestone. 27 | 28 | 29 | ## [June 5th 2021](https://docs.google.com/document/d/1ljIlB8g9Tn4zqdcEC67YoyXxy3cKGcvsDtPDDtiZKSU/edit#heading=h.mp88wpmoouvf) 30 | 31 | ### Summary 32 | * Discussed Priority items such as merging the coroutines PR, setting up GitHub Actions to run tests for mentorship-android 33 | * Discussed new design for mentorship system ([Vaishnavi's figma](https://www.figma.com/file/orbaQKnXDEIErUzkWbooqC/android?node-id=0%3A1)) - Bottom navigation + 3 dots in the toolbar / Getting rid of bottom navigation vs hamburger menu / Swipe out to refresh and get rid of button of refresh 34 | * Changes to merging process 35 | 36 | ### Action Items 37 | * couple items in the meeting minutes :) 38 | 39 | 40 | -------------------------------------------------------------------------------- /our-blog.md: -------------------------------------------------------------------------------- 1 | # Our Blog 2 | 3 | AnitaB.org open source 4 | 5 | We currently maintain a Medium Publication called [AnitaB.org Open Source](https://medium.com/anitab-org-open-source). 6 | 7 | **Table of Content:** 8 | 9 | - [Main Goals of Blogging](#main-goals-of-blogging) 10 | - [How to submit to our Publication](#how-to-submit-to-our-publication) 11 | - [Blog History](#blog-history) 12 | 13 | 14 | ## Main Goals of Blogging 15 | 16 | - Promote Open Source 17 | - This includes people outside of our open source community. 18 | - Promote Community Activities/Projects 19 | - This includes our members, projects, programs, and events. 20 | - Debunk Myths of Contribution == Code 21 | - This includes contributions of documentation, design, testing, and outreach. 22 | - Elevate AnitaB Brand 23 | - This includes everything occurring in the community outside of GHC events. 24 | 25 | ## How to submit to our Publication 26 | 27 | To write in our publication you need to be admitted as a writer on AnitaB.org Open Source Medium Publication. If you are not already, please let us know on [#outreach-research](https://anitab-org.zulipchat.com/#narrow/stream/216324-outreach-research) Zulip stream. 28 | 29 | Make sure to provide us with following details: 30 | 31 | - The title of the blog (even if the blog is in progress); 32 | - Tell us how does your blog post idea convey our main goals of blogging; 33 | - Your Medium handle (e.g.: assuming your profile is medium.com/@username, your handle is @username). 34 | 35 | **Requirements:** 36 | - Have a Medium account 37 | 38 | **Instructions:** 39 | 40 | 1. Be added as a writer to the Medium publication; 41 | 2. Click 3-dots button in the top-right corner of the page of your blog post (either published or as a draft); 42 | click 3 dots on the blog page image 43 | 3. Select "Add to publication" option; 44 | 4. Select the AnitaB.org Open Source (you will see this in case you are a writer); 45 | AnitaB.org open source option in the dropdown 46 | 5. Click submit! 47 | 48 | **References:** 49 | - [Add a draft or post to publication](https://help.medium.com/hc/en-us/articles/213904978-Add-a-draft-or-post-to-publication) on Medium 50 | 51 | ## Blog History 52 | 53 | Current one: [AnitaB.org Open Source Medium Publication](https://medium.com/anitab-org-open-source) 54 | 55 | Previous Blogs: 56 | 57 | - [Systers Open Source Blogspot](http://systers-opensource.blogspot.com/) (last post on February 2018) 58 | - [Systers Open Source Medium Publication](https://medium.com/systers-opensource) (last post on July 2018) 59 | -------------------------------------------------------------------------------- /quality-assurance.md: -------------------------------------------------------------------------------- 1 |

Quality Assurance

2 | 3 |

Pre-requisites for contributing towards Quality Assurance

4 | 5 | 1. Join [#quality-assurance](https://anitab-org.zulipchat.com/#narrow/stream/216325-quality-assurance) stream on Zulip. Tag @admins on Zulip to add you under the @qa-team tag. 6 | 2. Choose a [project](https://github.com/anitab-org) 7 | * Join the respective Zulip stream for that project 8 | 3. Setting up the environment of the project 9 | 10 | a. If testing dev environment (stage), you can use deployed versions. You need not setup up the dev environment locally. 11 | * [Mentorship Android](https://github.com/anitab-org/mentorship-android/tree/apk) 12 | * [Mentorship Flutter](https://github.com/anitab-org/mentorship-flutter/tree/apk) 13 | * [Mentorship Backend](https://mentorship-backend-temp.herokuapp.com/) 14 | * [Volunteer Management System](http://ec2-52-53-177-18.us-west-1.compute.amazonaws.com/en-us/) 15 | * [Portal](http://ec2-54-215-223-241.us-west-1.compute.amazonaws.com/) 16 | * [AnitaB.org Open Source Web](https://anitab-org.github.io/) 17 | 18 | b. If testing PRs, you have to setup the dev environment. 19 | * Mentorship Android: 20 | * [Dev Env Setup demo](https://anitab.zoom.us/rec/share/2uNHIJT-5EVJS7PzxVrWfK0oQtS1eaa81HdP-vVcyoErlalT9Mv00cK-ZvtOiMk?startTime=1589124944000) 21 | * [Dev Env Setup demo notes](https://docs.google.com/document/d/12D8356IenScM5DSRAITgg5X18tPZkRweXm_P-qmoQGY/edit) 22 | * [PR testing demo](https://anitab.zoom.us/rec/play/tJctd7j5rDk3SNWRtwSDUPUtW9XoJqis0iVL_fYFyBm1UyEKN1GmMrIaZ7RtkSCpQ2h7N8MOIMZc5wCD?startTime=1591118799000&_x_zm_rtaid=YOJgJH4BSZ65HhkWHNkhzg.1592773256165.ad77a44e5d4c2e726317ba090ee629b9&_x_zm_rhtaid=385) 23 | * Mentorship Flutter: 24 | * [Dev Environemnt Setup demo](https://anitab.zoom.us/rec/share/6MNVAO7pzE9OfNLP1m6EcJQrT6TgX6a81iRIrqAExUzyft37kQpq80KDeueJJKjY?startTime=1589108623000) 25 | * [Dev Environment Setup Notes](https://docs.google.com/document/d/1cLznYyN5VfVraN3swl81Yum1IXG3cyLyIdD85QOuGrY/edit?usp=sharing) 26 | * [PR testing demo](https://anitab.zoom.us/rec/play/vsEpIe2rpj03T9aSuQSDA_94W9W0J62shnAXqPINnUnmUXEHMAf0MOEVMOt-f8i1epVN8HeS5BurDHjH?startTime=1593537676000&_x_zm_rtaid=bRSfMzm_T4G4tNo7nBPtXQ.1593605707752.e181143531eb9176c6de82c23bf4f24a&_x_zm_rhtaid=490) 27 | * Mentorship Backend: 28 | * Dev Env Setup demo - [Recording 1](https://anitab.zoom.us/rec/share/2uNHIJT-5EVJS7PzxVrWfK0oQtS1eaa81HdP-vVcyoErlalT9Mv00cK-ZvtOiMk?startTime=1589121214000), [Recording 2](https://anitab.zoom.us/rec/share/2uNHIJT-5EVJS7PzxVrWfK0oQtS1eaa81HdP-vVcyoErlalT9Mv00cK-ZvtOiMk?startTime=1589121947000), [Recording 3](https://anitab.zoom.us/rec/share/2uNHIJT-5EVJS7PzxVrWfK0oQtS1eaa81HdP-vVcyoErlalT9Mv00cK-ZvtOiMk?startTime=1589122325000) 29 | * [Setup Notes](https://docs.google.com/document/d/1cOhwTMyo25n0sJLUfOjWTntzZwLTUTvCfL3fKJlKKmY/edit) 30 | * [Testing PR](https://github.com/anitab-org/mentorship-backend/blob/develop/docs/test-pr-guide.md#steps-to-test-a-pr) 31 | * VMS: 32 | * [Dev env setup demo](https://anitab.zoom.us/rec/share/xp1sE72v81xLRI3N81_VAa4ONZW8aaa81nBMq_UExE0n8GF03G1ifH1QShZHCvE7?startTime=1589115801000) 33 | * [Setup Notes](https://docs.google.com/document/d/1eJRmsf5lznb6Klym23P05qEb7vVLB9PWOlMm2ErRmXg/edit) 34 | * Portal: 35 | * [Dev env setup instructions](https://docs.google.com/document/d/1nL5c1xxse_ulHbjTgaHHv7XTIf41lQV0msYB7xesJGU/edit) 36 | * [Setup Notes](https://docs.google.com/document/d/1nL5c1xxse_ulHbjTgaHHv7XTIf41lQV0msYB7xesJGU/edit?usp=drivesdk) 37 | * AnitaB.org Open Source Web: 38 | * [Setup](https://github.com/anitab-org/anitab-org.github.io/blob/develop/README.md) 39 | * STEM Diverse TV: 40 | * [Setup](https://github.com/anitab-org/stem-diverse-android-tv/blob/master/README.md) 41 | 42 | 4. Signup on the test management tool [TestQuality](https://anitab-org.testquality.com/signup). Ask on Zulip under #quality-assurance stream tagging @qa-team, to set up your account with the right permission to the project you have chosen. 43 | 44 |

How to test a PR?

45 | 46 | 1. Pick a PR from the project you have chosen which has the label `Needs Testing`. 47 | 2. Make sure the PR has 2 code review approvals before you start testing. 48 | 3. Go to the Issue that PR is fixing and follow the steps to reproduce that issue while you are under the develop branch. 49 | 4. Run the following commands to get to the PR branch, where is the PR id and is the PR branch name: 50 | ``` 51 | git fetch upstream pull//head: 52 | git checkout 53 | ``` 54 | 5. Alternatively, if you use the [GitHub CLI](https://cli.github.com/), you can run the following command: 55 | ``` 56 | gh pr checkout 57 | ``` 58 | 6. Verify the code addition/deletions in the PR. 59 | 7. Reproduce the issue and test the fix. 60 | 8. Leave a review comment on the PR using the following template: 61 | ``` 62 | The changes made in this PR were tested locally. Following are the results: 63 | 64 | 1. Code review - Done or Not Done 65 | 66 | 2. All possible responses (positive and negative tests) were tested as below: 67 | 68 | * _Test1 Description_ 69 | _Screenshot/gif_: 70 | _Expected Result_: 71 | _Actual Result_: 72 | * _Test2 Description_ 73 | _Screenshot/gif_: 74 | _Expected Result_: 75 | _Actual Result_: 76 | ... 77 | 78 | 3. Additional testcases covered: 79 | 80 | * _Test1 Description_ 81 | _Screenshot/gif_: 82 | _Expected Result_: 83 | _Actual Result_: 84 | 85 | 4. Additional Comments: 86 | 87 | 5. Status of PR Changed to: Needs Review or Ready to Merge. 88 | ``` 89 | 90 |

Quality Assurance Contribution Guidelines

91 | 92 | 1. Choose a test scenario in the project you’ve chosen and execute it on either the PR or deployed version that is being tested. 93 | * Open issues under the respective github repo if you find any bugs. 94 | 95 | 2. Search on TestQuality if the Test Case is already documented. If not, document the testcase on TestQuality under the respective Test Plan and Test Suite. Here is a [demo](https://drive.google.com/file/d/1pkxCAPR9G3lYjUf_Ym8bmuglDWBdEU2c/view?usp=sharing). 96 | * Have the Test Case reviewed by another QA team member. 97 | 98 | 3. (Optional) Automate the Test Case, for example: [Mentorship Backend User Journey](https://github.com/anitab-org/mentorship-backend/pull/708). 99 | 100 | 4. If you decide to skip step 3, search if there is an existing issue to automate that test case. If not, open an issue with label `Quality Assurance`. 101 | 102 | 5. If you automate a Test case make sure you mark it as `Automated` on TestQuality. 103 | -------------------------------------------------------------------------------- /ways-to-contribute.md: -------------------------------------------------------------------------------- 1 | # Ways to contribute 2 | 3 | This document lists the many ways **you** as a member of this community can contribute to our community! You can be a newcomer to the community or someone who is with us for a while :) 4 | 5 | We encourage you to contribute in any way you can and would like! You can contribute in many categories such as quality assurance, design, coding, outreach/research, documentation, ... 6 | 7 | Attend our open sessions (check [our calendar](https://calendar.google.com/calendar/embed?src=sh10tv3mtfve62somg9nngp9tg%40group.calendar.google.com)) or communicate with us on [Zulip](https://anitab-org.zulipchat.com/) to learn more about these types of contribution. 8 | 9 | ## Design 10 | 11 | Help us improve our projects user interfaces and experience for the users. Zulip stream: [#design](https://anitab-org.zulipchat.com/#narrow/stream/216323-design). 12 | 13 | - Create mockups for new apps (web or mobile); 14 | - Create mockups with a redesign of a current app (web or mobile); 15 | - Help us improve our apps accessibility; 16 | - Research UI/UX improvements for our apps through user testing. 17 | 18 | ## Quality Assurance 19 | 20 | Help us improve the code and overall quality of our apps. Zulip stream: [#quality-assurance](https://anitab-org.zulipchat.com/#narrow/stream/216325-quality-assurance). 21 | 22 | - Verify bugs reported in project issues by reproducing them; 23 | - Test pull request code and report the results, so we can verify new code is working properly. Learn more about our processes here at [quality-assurance.md](/quality-assurance.md); 24 | - Help us document test cases for our apps; 25 | - Test our apps in production and report bugs through creating issues; 26 | - Improve our code coverage by writing tests (unit and UI tests). 27 | 28 | ## Coding 29 | 30 | Help us build and improve our applications in multiple tech stacks. 31 | 32 | - Review our projects' pull requests; 33 | - Solve bugs from our applications; 34 | - Write new features for our projects; 35 | - Help answering technical questions on Zulip or GitHub issues. 36 | 37 | **Note:** Remember to always read our `CONTRIBUTING.md` for the project you contribute to! 38 | 39 | ## Content 40 | 41 | Help us create content related to our community. Zulip stream: [#outreach-research](https://anitab-org.zulipchat.com/#narrow/stream/216324-outreach-research). 42 | 43 | - Write blog posts for our [Medium publication](https://medium.com/anitab-org-open-source). Learn more at [our-blog.md](/our-blog.md); 44 | - Improve our social media kit to promote our work outside of the community (e.g: create tweet or linkedin post templates); 45 | - Help us with translations in our applications; 46 | 47 | ## Advocacy 48 | 49 | Help us engage with our members and promote our community inside and outside of it. Zulip stream: [#outreach-research](https://anitab-org.zulipchat.com/#narrow/stream/216324-outreach-research). 50 | 51 | - Organize or help organize events for our community (e.g.: design team organized introduction to Figma tool session); 52 | - Share on social media about our work and or your contributions to us (feel free to use #AnitaBOpenSource hashtag) 53 | - Welcome newcomers in our community; 54 | - Help and encourage our members to contribute; 55 | - Engage and answer questions on our Zulip community or GitHub issues and pull requests. Learn more about our zulip here at [zulip.md](/zulip.md); 56 | - Promote `Status: Available` and `First Timers Only` issues to our community members; 57 | - Create content to help newcomers get involved. 58 | 59 | ## Documentation 60 | 61 | Help us create new and maintain our project's or community documentation. Zulip stream: [#documentation](https://anitab-org.zulipchat.com/#narrow/stream/216326-documentation). 62 | 63 | - Improve the project documentation we currently have; 64 | - Identify gaps in documentation we have and create new documentation; 65 | - Help us update old documentation (e.g.: on Google Drive or GitHub Wiki). 66 | 67 | ## Project management 68 | 69 | Help us manage our projects, their contributors and contributions! Zulip stream: [#project-management](https://anitab-org.zulipchat.com/#narrow/stream/258232-project-management). 70 | 71 | - Label issues; 72 | - Assign and unassign contributors to our issues; 73 | - Help contributors follow the project guidelines; 74 | - Help triage and validate issues and pull requests, i.e., evaluate them and then closing if necessary; 75 | - Create valid issues to help maintain the projects. 76 | 77 | **Note:** as a newcomer you may not have permissions to open/close issues or assign/unassign labels and contributors to issues. You can still help validate by communicating with members who have such permissions. 78 | 79 | --- 80 | 81 | Do reach out to us on Zulip or in the GitHub issues if you need any help! 82 | -------------------------------------------------------------------------------- /zulip.md: -------------------------------------------------------------------------------- 1 | # Zulip 2 | 3 | AnitaB.org Open Source Zulip is our main communication channel. Join at [https://anitab-org.zulipchat.com/](https://anitab-org.zulipchat.com/). 4 | 5 | ## Getting started on Zulip 6 | 7 | ### If you’re new here, here’s what you can do to get started with this community: 8 | 9 | 1. :heavy_check_mark: Introduce yourself on [#newcomers](https://anitab-org.zulipchat.com/#narrow/stream/223071-newcomers) stream in the [#newcomers > Introductions](https://anitab-org.zulipchat.com/#narrow/stream/223071-newcomers/topic/Introductions) topic and share with us your motivations for joining so we can get to know and help you on the open source journey 10 | 11 | 2. :calendar: These are voice call sessions you can participate to learn more about our community and projects.[#announcements](https://anitab-org.zulipchat.com/#narrow/stream/213491-announcements) or through our AnitaB.org Open Source calendar ([PST](https://calendar.google.com/calendar/embed?src=sh10tv3mtfve62somg9nngp9tg%40group.calendar.google.com&ctz=America/Los_Angeles) || [EST](https://calendar.google.com/calendar/embed?src=sh10tv3mtfve62somg9nngp9tg%40group.calendar.google.com&ctz=America/New_York) || [GMT](https://calendar.google.com/calendar/embed?src=sh10tv3mtfve62somg9nngp9tg%40group.calendar.google.com&ctz=GMT) || [WAT](https://calendar.google.com/calendar/embed?src=sh10tv3mtfve62somg9nngp9tg%40group.calendar.google.com&ctz=Africa/Lagos) || [IST](https://calendar.google.com/calendar/embed?src=sh10tv3mtfve62somg9nngp9tg%40group.calendar.google.com&ctz=Asia/Colombo) || [AEDT](https://calendar.google.com/calendar/embed?src=sh10tv3mtfve62somg9nngp9tg%40group.calendar.google.com&ctz=Australia/Sydney)). These are voice calls you can participate in and get to know a bit more our community and projects. 12 | 13 | ## Learning Resources :eyeglasses: 14 | 15 | 1. [Code of Conduct](/Contributing/CODE_OF_CONDUCT.md) 16 | 17 | 2. [Reporting Guidelines](/Contributing/REPORTING_GUIDELINES.md) 18 | 19 | 3. [Zulip official documentation on how to getting started](https://zulipchat.com/help/getting-started-with-zulip) 20 | 21 | ## Streams :point_down: 22 | 23 | 1. Category based: These streams are based on a specific type of contribution (e.g.: quality assurance, coding, documentation, etc). Join streams of your interest such as: 24 | 25 | 1. [#coding](https://anitab-org.zulipchat.com/#narrow/stream/216321-coding) :computer: 26 | 2. [#design](https://anitab-org.zulipchat.com/#narrow/stream/216323-design) :art: 27 | 3. [#documentation](https://anitab-org.zulipchat.com/#narrow/stream/216326-documentation) :notebook_with_decorative_cover: 28 | 4. [#outreach-research](https://anitab-org.zulipchat.com/#narrow/stream/216324-outreach-research) :microscope: 29 | 5. [#quality-assurance](https://anitab-org.zulipchat.com/#narrow/stream/216325-quality-assurance) :heavy_check_mark: 30 | 31 | 32 | 2. Project Specific: You can also join project-specific streams, such as: 33 | 34 | * [#mentorship-system](https://anitab-org.zulipchat.com/#narrow/stream/222534-mentorship-system) :mortar_board: 35 | * [anitab-org/mentorship-backend](https://github.com/anitab-org/mentorship-backend) 36 | * [anitab-org/mentorship-flutter](https://github.com/anitab-org/mentorship-flutter) 37 | * [anitab-org/mentorship-android](https://github.com/anitab-org/mentorship-android) 38 | * [anitab-org/mentorship-ios](https://github.com/anitab-org/mentorship-ios) 39 | 40 | * [#open-source-progs](https://anitab-org.zulipchat.com/#narrow/stream/237907-open-source-progs) 41 | * [anitab-org/open-source-programs-web](https://github.com/anitab-org/open-source-programs-web) 42 | * [anitab-org/open-source-programs-backend](https://github.com/anitab-org/open-source-programs-backend) 43 | 44 | * [#portal](https://anitab-org.zulipchat.com/#narrow/stream/222540-portal) 45 | * [anitab-org/portal](https://github.com/anitab-org/portal) 46 | 47 | * [#stem-diverse-tv](https://anitab-org.zulipchat.com/#narrow/stream/225705-STEM-diverse-tv) 48 | * [anitab-org/stem-diverse-tv](https://github.com/anitab-org/stem-diverse-tv) 49 | 50 | * [#vms](https://anitab-org.zulipchat.com/#narrow/stream/222539-vms) 51 | * [anitab-org/vms](https://github.com/anitab-org/vms) 52 | 53 | * [#anitab-org.github.io](https://anitab-org.zulipchat.com/#narrow/stream/235478-anitab-org.2Egithub.2Eio) 54 | * [anitab-org/anitab-org.github.io](https://github.com/anitab-org/anitab-org.github.io) 55 | 56 | * [#bridge-in-tech](https://anitab-org.zulipchat.com/#narrow/stream/237630-bridge-in-tech) 57 | * [anitab-org/bridge-in-tech-backend](https://github.com/anitab-org/bridge-in-tech-backend) 58 | * [anitab-org/bridge-in-tech-web](https://github.com/anitab-org/bridge-in-tech-web) 59 | 60 | 61 | 3. General: You can also check our more general streams: 62 | 63 | 1. [#announcements](https://anitab-org.zulipchat.com/#narrow/stream/213491-announcements) :microphone: 64 | 2. [#celebrate](https://anitab-org.zulipchat.com/#narrow/stream/223068-celebrate) :sparkler: 65 | 3. [#general](https://anitab-org.zulipchat.com/#narrow/stream/212722-general) :newspaper: 66 | 4. [#opportunities](https://anitab-org.zulipchat.com/#narrow/stream/223069-opportunities) :stars: 67 | 5. [#questions](https://anitab-org.zulipchat.com/#narrow/stream/223070-questions) :question: 68 | 6. [#newcomers](https://anitab-org.zulipchat.com/#narrow/stream/223071-newcomers) :new: 69 | 70 | ## Messages Templates 71 | 72 | ### Meeting Summary 73 | 74 | **Goal:** Post on Zulip at the end of each meeting 75 | 76 | ``` 77 | :calendar: **Open Session title** 78 | 79 | :note: Today's [Meeting minutes]({meeting minutes document link heading the appropriate date}) 80 | 81 | :darts: **Summary:** 82 | * Point 1 83 | * ... 84 | 85 | :checkbox: **Action Items** 86 | * Person 1: Action item 1 87 | * ... 88 | ``` 89 | 90 | ### Our Calendar in different timezones 91 | 92 | **Goal:** Post this in Zulip messages where we would like to share our calendars in many timezones 93 | 94 | ``` 95 | [PST](https://calendar.google.com/calendar/embed?src=sh10tv3mtfve62somg9nngp9tg%40group.calendar.google.com&ctz=America/Los_Angeles) || [EST](https://calendar.google.com/calendar/embed?src=sh10tv3mtfve62somg9nngp9tg%40group.calendar.google.com&ctz=America/New_York) || [GMT](https://calendar.google.com/calendar/embed?src=sh10tv3mtfve62somg9nngp9tg%40group.calendar.google.com&ctz=GMT) || [WAT](https://calendar.google.com/calendar/embed?src=sh10tv3mtfve62somg9nngp9tg%40group.calendar.google.com&ctz=Africa/Lagos) || [IST](https://calendar.google.com/calendar/embed?src=sh10tv3mtfve62somg9nngp9tg%40group.calendar.google.com&ctz=Asia/Colombo) || [AEDT](https://calendar.google.com/calendar/embed?src=sh10tv3mtfve62somg9nngp9tg%40group.calendar.google.com&ctz=Australia/Sydney) 96 | ``` 97 | --------------------------------------------------------------------------------