Skip to content

Latest commit

 

History

History
104 lines (62 loc) · 9.54 KB

07-types-of-contributions.md

File metadata and controls

104 lines (62 loc) · 9.54 KB

Types of contributions

In this chapter, we will discuss the non-coding and coding types of contributions involved with open-source projects.

Non-Coding Type Of Contributions

Non-coding contributions do not involve writing or modifying code. Non-coding contributions are essential for the sustainability and growth of open-source projects. They allow individuals with a variety of skills and backgrounds to participate and make meaningful contributions to the software and the community.

How to Contribute to Open Source without Knowing How to Code: A guide with project suggestions

Common types of non-coding contributions

  • Documentation
  • Graphic design
  • Blog writing

Documentation

Are you a lover of words? Do grammar errors irritate you? Do you like breaking down complex problems or helping people learn? Then documentation is for you!

This involves creating, improving, or maintaining the written resources that accompany open-source software projects. Documentation is crucial to open-source projects. It can make a project more accessible and user-friendly, and it can help attract new contributors and encourage repeat contributions.

How to Contribute to Documentation

If you're interested in contributing to documentation, here are a few tips:

  • Read the documentation: This will help you understand how the product is used.

  • Find a task that's a good fit for your skills and interests: If you're not sure where to start, take a look at the issues or discussions before reaching out to a maintainer.

  • Use the product: Gaining user insight will help you see which information is needed or not useful in the docs.

  • Be patient and persistent: It takes time to write good documentation. Don't be afraid to ask for help if you get stuck.

Examples of documentation contributions:

Contributing to documentation is a great way to help open-source projects and make them more accessible to everyone. If you have the skills and the interest, get involved!

Graphic Design

This open-source contribution involves creating visual assets, such as logos, icons, illustrations, website designs, and other graphical elements, for open-source projects. These visual assets play a significant role in enhancing the overall user experience and branding of the project. Graphic design contributions can make open-source software more appealing, user-friendly, and recognizable.

  • Logo and Branding: Designing a unique and memorable logo for an open-source project can help establish its identity and brand. A well-designed logo can make the project instantly recognizable and give it a professional image.

  • Icon Design: Icons are essential for user interfaces. Graphic designers can create custom icons for software applications or websites, improving the visual appeal and usability of the project: Eventhub signup

  • Website Design: Open source projects often have websites to provide information, documentation, and download links. Graphic designers can contribute by designing website layouts, graphics, banners, and other visual elements to make the site more attractive and user-friendly.

  • User Interface (UI) Design: For software projects, UI design is crucial. Designers can create mockups, wireframes, and high-fidelity designs for the user interface, making it more intuitive and visually appealing.

  • User Experience (UX) Design: UX designers focus on improving the overall user experience by considering how users interact with the software. This includes designing user flows, navigation, and usability testing.

  • Accessibility Design: Ensuring that the project's graphical elements are accessible to all users, including those with disabilities, is an important aspect of graphic design. Designers can create accessible color schemes and ensure that visual elements are perceivable and operable.

  • Responsive Design: Designing visuals that work well on various devices and screen sizes is crucial for modern web applications. Responsive design ensures that the project looks good and functions properly on both desktop and mobile devices.

Blog Writing

This type of open-source contribution involves creating and publishing blog posts, articles, or tutorials related to open-source software, projects, technologies, or best practices. Like documentation, you don't necessarily have to know how to code to write these posts.

Ways to use Blogging as a Open Source Contribution

Coding Type Of Contributions

Coding contributions power open-source development. They entail writing, modifying, or improving the actual source code of an open-source project, directly impacting the functionality and quality of the software. Contributors collaborate with project maintainers and the community to ensure that their code contributions align with project goals and coding standards. Also, open-source projects typically have guidelines and processes for accepting and integrating coding contributions, such as code reviews and continuous integration.

Here are some examples of contributions you can make to a project with your coding skills:

  • Writing New Code: This is the most common type of coding contribution. Developers write new code to add features, fix bugs, or enhance the functionality of an open-source project. These contributions are typically submitted in the form of pull requests (PRs) or patches: Show who reacted to highlights

  • Bug Fixes: Identifying and fixing bugs is a critical coding contribution. Developers locate issues within the codebase, diagnose the problem, and then write code to correct it. Bug fixes improve the stability and reliability of the software: Lint check happening two times on commit

  • Code Refactoring: Refactoring involves restructuring and improving existing code without changing its external behavior. This helps enhance code readability, maintainability, and scalability, which are vital for the long-term health of the project: CalcDistanceFromToday function

  • API Design and Maintenance: For projects with public APIs, developers can contribute to designing, maintaining, and improving the API to ensure it remains stable and developer-friendly: Refresh token

  • Feature Development: Developers contribute by implementing new features or functionalities in response to user needs or project goals. Feature development often involves planning, designing, and coding new components or capabilities: Added the contact page

  • Performance Optimization: Coders may work on optimizing the software's performance by refactoring code, improving algorithms, or optimizing resource usage. This type of contribution aims to make the software run more efficiently: Repos table in small screens does not show select

  • Testing and Quality Assurance: Writing automated tests, including unit tests, integration tests, and end-to-end tests, is a coding contribution that ensures software reliability. Testing helps catch and prevent regressions and issues: Add force login component to design system

Next Section ->

✏️ Edit this page