Contributing
Welcome to Naas Contribution Page!
We deeply appreciate and value contributions of all types, not just code. For a comprehensive overview of ongoing and future projects, we invite you to explore our Community Roadmap. We're here to support you on your journey as a contributor!
If you have any questions or need assistance, don't hesitate to join our Slack community for chat and join the GitHub Discussions for topics that needs to be publicly shared. We're more than happy to help you navigate through your contributions.
Before you proceed, we kindly request you to take a moment to familiarize yourself with our Code of Conduct. It's essential to maintaining a respectful and inclusive environment for everyone in our community. Thank you for your understanding and cooperation!
Why Participate in an Open-Source Project?
-
Enhance Knowledge and Skills: Open-source projects provide a platform to learn new technologies and improve your existing skills. They offer real-world experience that can enhance your understanding and proficiency.
-
Connect with Like-minded Individuals: Participating in these projects allows you to meet and collaborate with people who share similar interests. This can lead to meaningful connections and friendships.
-
Boost Your Career: Contributions to open-source projects can be a valuable addition to your resume. It demonstrates initiative, technical competence, and the ability to work in a team.
-
Find a Mentor: Open-source communities often include experienced professionals who can provide guidance and mentorship. This can be invaluable in helping you reach your professional and personal goals.
-
Experience the Joy of Contributing: There's a unique sense of satisfaction in contributing to something larger than yourself. It's fulfilling to know that your work can benefit many people and potentially make a significant impact.
Why Contribute to Naas?
-
Boost Your Personal Brand: Beyond the inherent benefits of open-source contribution, at Naas, we take an extra step to promote your contributions on social media. This can significantly enhance your reputation and personal brand in the tech community.
-
Earn While You Learn: We are continually exploring ways to reward our contributors. Our ultimate aim is to create a system where contributors can generate a revenue stream from their contributions, making your participation not just intellectually rewarding, but also financially beneficial.
-
Innovate and Have Fun: There's something incredibly exciting about innovating in the data and AI space. At Naas, we believe in making this journey enjoyable. So come join us, contribute, innovate, and most importantly, have fun while doing it!
How Can You Contribute to Naas?
There are several ways you can make a valuable contribution to Naas:
-
Templates: This is one of the most popular areas for contributions. All you need is a notebook and the awesome-notebooks repository to publish your work. Check out these good first issues in the templates repository to get started.
-
Drivers: Contribute to our Python package for integrations. Your work here can help enhance the functionality and reach of our project.
-
Jobs: Help us build micro-services on top of Jupyter Notebooks to create data & AI products. Your expertise can help us improve and expand our services.
-
Workspace: This is the web app that brings all the components of the platform together (Search, Naas Chat, Lab, Account admin). Your contributions here can help improve the user experience and functionality of our platform.
-
Product Roadmap: Assist us in scoping issues, planning features, and managing the project. Your insights can help us make better decisions and improve the project.
-
Marketing and Communication: Help us spread the word about Naas, write blog posts, create promotional materials, or manage our social media presence. Your skills can help us reach more people and grow our community.
Remember, every contribution, no matter how small, is valuable and appreciated. Thank you for considering contributing to Naas!
Starting Your Journey with Naas
1. Register as a Naas Member (Recommended)
To be recognized as a Naas member, please register through this form. Membership in Naas enables you to contribute directly and expedites the review process for your contributions.
2. Contribute on GitHub
You can contribute independently to the project by submitting issues and pull requests to the various repositories maintained by the Jupyter-Naas organization on GitHub.
3. Open an Account on Naas.ai
Opening an account on naas.ai is free and highly beneficial for any contributor. It allows you to:
- Test notebooks (useful for writing content or conducting code reviews)
- Set up automation for yourself
- Potentially receive credits for your contributions (Work in Progress)
- Review the latest product updates and provide feedback
4. Review the Community Roadmap
Our community roadmap provides insights into ongoing and upcoming work. If you're interested in working on a 'good first issue', feel free to comment on it and we'll assign it to you.
5. Join and Support the Naas Community
Participate in our community calls or join our Slack channel to introduce yourself and ask any questions you may have.
We also greatly appreciate your support on social media (see "Follow us" links on the footer). We strive to share informative, educational, entertaining, and sometimes provocative content. After all, we believe in putting communication first, code second.
Commit Convention at Naas
At Naas, we adhere to the Conventional Commits specification. This is a simple, yet effective convention for structuring commit messages. It provides a set of easy-to-follow rules that facilitate the creation of a clear and explicit commit history, making it more straightforward to develop automated tools.
When contributing to Naas, we use the following commit types to communicate the nature of the changes:
fix
: Used when patching a bug.feat
: Used when introducing a new feature.docs
: Used when documenting a feature or a fix.style
: Used when making changes to the UX design of a feature.refactor
: Used when altering the way a feature works without changing its external behavior.test
: Used when adding unit tests to the project.
Please note that this commit convention applies to both the Naas and Naas drivers repositories. By adhering to these conventions, we can maintain a clean, organized, and easily navigable commit history.