Project Icon

awesome-notebooks

Jupyter笔记本模板库 加速数据产品开发

awesome-notebooks是一个包含众多生产级Jupyter笔记本模板的资源库。该项目提供数据分析、自动化和AI引擎模板,用于快速创建数据产品。模板采用统一框架,便于开发。开发者可使用单个模板或组合多个模板构建复杂数据产品。项目简化了数据产品开发流程,提高了效率。所有模板可在GitHub或通过Naas Search获取。

Naas TemplatesAwesome

(aka the "awesome-notebooks")

What is the objective of this repository ?

The objective of this repository is to create the largest catalog of production-ready Jupyter Notebooks templates. With those templates, it becomes easy to create data products (analytical dashboards, automation/AI engines and more).

Each of these templates adheres to a consistent framework, designed to expedite your coding process. While these templates are designed for ease of use, some may require data science skills for setup, particularly those that interface with third-party tools via API. These templates can function independently, but they also serve as integral components of data products. Consider them as the essential parts needed to assemble your 'car engine'. By developing these templates and ensuring their standalone functionality, we streamline the process of data product development, as we already comprehend the operation of some parts within it.

All templates are readily accessible on GitHub or via Naas Search.

How is organized a template?

To ensure the quality of the templates, we have defined a framework. Each notebook shall be organized as follow.

Header

  • Naas logo
  • # Title: "Tool - Action of the notebook", as h1. An "Open in Naas" button will be added automatically by the CI/CD when a notebook is merged to the master branch.
  • Tags: hashtags relevant to the topics covered in the notebook, as text
  • Author: name and social profile link of the author(s), as text
  • Last update: YYYY-MM-DD (Created: YYYY-MM-DD): The last update date refers to when the notebook was last edited, while the created date corresponds to when the notebook was initially merged.
  • Description: a one-liner explaining the benefits of the notebooks for the user, as text
  • References: list of references and websites utilized in the creation of this notebook

Outline

  • ## Input: list of all the variables, credentials, that needs to be setup, as h2
  • ## Model: list the functions applied to the data, as h2
  • ## Output: list the assets to be used by the user and its distribution channels if any, as h2

Providing Feedback

At the top of the notebook, you'll find a link for providing feedback on the notebook you're using. This could be:

  • A suggestion for a new feature that could enhance the notebook
  • Documentation improvements to make it more user-friendly
  • Notification of a typographical error
  • A simple word of praise (🙂)

Upon clicking this link, you'll be redirected to a Google form where you can provide more information. We will endeavor to contact the notebook creator for improvements or seek community assistance during our bi-monthly community calls that aim to create new templates or enhance existing ones.

Reporting A Bug

Since all our templates are open-source, errors may occasionally occur. We apologize for any inconvenience that may cause and request your support in reporting these issues to help us rectify them. To report a bug, click on the link at the top of the notebook. You will be redirected to GitHub to create an issue. Please attach screenshots to help us understand the bug, and provide any other information that could assist us in reproducing the issue. We will strive to respond as quickly as possible to resolve the issue.

How to contribute?

Pre-requisites

Register for the Open Source Contributor Program so we can add you to the team of contributors in the Naas GitHub organization.

To start working on our repository, you MUST be a part of our open-source contributors team.

Please check your email and validate the invitation before you begin working on a new issue.

Step 1: Create or Select an Issue

  • Identify or propose an issue you wish to work on. It could be a snippet of Python code, an API integration with a tool you are using, or an automation leveraging existing templates with our scheduler, asset, or webhook features.
  • Make sure the description is clear and concise.
  • Tag yourself in the Assignees section.
  • Click on "Create a new branch" on the Development section on the right side.
  • Mentionned @FlorentLvr in a comment to let us you started working on it.

Step 2: Technical Setup

  • Create your GitHub personal access token. Select “No expiration” and tick only the first section repository and keep your token safe as you won’t be able to generate it again. This token will allow you to commit, push and pull directly on our repository.
  • Clone the awesome-notebooks repository and switch to the branch you created.
# First, clone the repository
git clone https://github.com/jupyter-naas/awesome-notebooks.git

# Navigate into the cloned directory
cd awesome-notebooks

# Fetch all branches from the repository
git fetch

# Checkout to the specific branch you want
git checkout branch_name

Step 3: Work on Your Notebook

If a draft of a template (generated with our AI system) has been already created, you can directly start working on it. Otherwise, you kick start manually:

  • Create a folder named with the source tool (if it's not already created).
  • Copy/Paste template.ipynb at the root of the repository
  • Rename the template following this format: Toolname_Function.ipynb.

Start working on your notebook. Commit your work every time you make significant progress. You can use the UI interface inside your Naas Lab server to do this.

  • All new files will be found in the untracked section, all modified files in the unstaged section.
  • Once you want to commit, add your notebook to staged by clicking on the + and create a commit message. We recommend following the commit convention and starting your message with “feat:” if it's an improvement or “fix:” if it's a bug fix, followed by a clear commit message. Here are some examples:
    • feat: update tags, author, and description
    • feat: developing function in model to…
    • fix: adding try except to manage error on…
  • Once you're satisfied with the result, push to the branch.
# Navigate into the cloned directory
cd awesome-notebooks

# Add new template
git add Tool/Tool_Your_template.ipynb

# Commit with message
git commit -m "feat: xxxx"

# Push your work
git push

Step 4: Open a Pull Request

Open a Pull Request and add a Templates Maintainer as Reviewer: Florent (@FlorentLvr).

  • Comment on the Pull Request with a brief summary of what you've done.
  • You will now discuss your work on the PR. If any changes are made, ensure you pull the branch before working on it again by clicking on the button at the top.
  • Expect feedback and merge within the next 48-72 hours.

Step 5: Promote Your Work

Once merged, promote your work on LinkedIn, Twitter, and other social media channels! (Optional, but people need to know you are awesome 😉). Explain why you did this notebook and how it could be useful. You can use the certificate generated once the PR is merged to display your work and add the tag open source contributor on your LinkedIn profile. We will be happy to have you in our community.

Thank you!

Step 6: Become a Templates Maintainer

If you want to contribute more frequently to Naas, you can become a templates maintainer. This status will offer you the right to be sponsored by Naas for your contributions done every month, ranging from $50 to $250. To become a templates maintainer, you must have completed at least 5 notebooks (which ensures you've mastered our process) and created 5 social media content promoting your template or Naas.

Then, you will be introduced to our template maintainer program and will have a dedicated team with the core team to assist you in developing integrations, automations, or AI systems.

Support us on social media

We are committed to sharing templates and giving shout outs to the contributors on our social media platforms, you can support us on:

Templates list

AI for Work

项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号