(aka the "awesome-notebooks")
Naas is an all-in-one data platform that enable anyone with minimal technical knowledge to turn Jupyter Notebooks into powerful automation, analytical and AI data products thanks to low-code formulas and microservices.
The platform is based on 3 low-code layers:
- π Templates: enable anyone to use data engines on all kind of subjects in minutes.
- π Drivers: connectors to facilitate access to tools, and complex libraries (database, API, ML algorithm...)
- πͺ Features: production microservices on top of Jupyter like scheduling, asset sharing, notifications and more.
Naas Cloud is free to use with 100 credits/month.
Open your account
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). Check out the data-product-template repository to learn more.
The repository is organized by source/tools for easy discovery. You can also use our "Google-like" search to find templates by keywords
To ensure the quality of the templates, we have defined a framework. Each notebook shall be organized with the following sections:
- Naas logo
- # Title: "Tool - Action of the notebook", as h1 (an "Open in Naas" button will be automatically added by the CI/CD when a notebook is merged to the master branch)
- Tags: hastags of the topics the notebook is about, as text
- Author: name and social profile link of the author(s), as text
- Description: a one-liner explaining the benefits of the notebooks for the user, as text
- ## 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
- Open free account on Naas Cloud so we can test the templates in a similar environment
- Register to the Contributor Program so we can add you to team of contributors in the Naas GitHub organization
- Join our Slack Community so you can present yourself and #chat with us
- Step 1: Find or propose an issue you want to work on
- The Backlog of the Product Roadmap is where we put all the priorities
- The Issues section is where we gather all the needs
- Step 2: Prepare the issue before you start working on it
- Make sure the description is clear
- Tag yourself in Assignees section
- Change the status to 'In Progress' in Projects section/Community Roadmap
- Create a branch in Development section
- Step 3: Clone the awesome-notebooks repository on your Naas Cloud account and switch to the branch you created
- Step 4: Create folder named with the source tool (if it's not already created)
- Step 5: Copy/Paste template.ipynb at the root of the folder inside the folder you are working on, and start working on your notebook
- Step 6: Once you are happy with the result, commit to the branch by using Git extension or command line (make sure you use a GitHub personal access token and not password, otherwise it wont work)
- Step 7: Open a Pull Request and add a member of the core team as Reviewer (Florent,Maxime or Jeremy)
- Step 8: Change status of this Issue to βReviewβ in Projects section and comment the Pull Request with a brief on what you have done
- Step 9: Expect a feedback and merge in the next 48h-72h
- Step 10: Once merged, promote your work on LinkedIn, Twitter and other social media channels! (Optional, but people need to know you are awesome π)
We are committed to sharing templates and giving shout outs to the contributors on our social media platforms, you can support us on:
- Twitter for fast updates
- LinkedIn for more elaborated posts and articles
- Youtube for demos and tutorials
- Daily biling notification to slack
- Get files from S3 bucket
- Read dataframe from S3
- Send dataframe to S3
- Upload file to S3 bucket
- Create Links
- Delete a Bitlink
- Get Clicks for a Bitlink
- Get Metrics for a Bitlink by City
- Get Metrics for a Bitlink by Country
- Get Metrics for a Bitlink by Devices
- Get Metrics for a Bitlink by Referrers
- Get a Clicks Summary for a Bitlink
- Retrieve Bitlink
- Update a Bitlink
- Add a new client
- Add a new project
- Delete client
- Delete project
- Find all users on workspace
- Find clients on workspace
- Find tasks on project
- Get all my workspaces
- Get all projects on workspace
- Get client by ID
- Get project by ID
- Get time entries for a user on workspace
- Remove user from workspace
- Update client
- Update project
- Create Datatable With Dropdown
- Create Dropdown Callback
- Create Dropdown with multiples output callbacks
- Create Navbar
- Create Navbar board
- Create Navbar Search
- Create conditional formatting on HTML element
- Create conditional formatting on number value
- Deploy app in Naas
- LinkedIn posts metrics dashboard
- Plotly Dynamic Link
- Upload mutiples CSV Excel
- COVID19 - FR - EntrΓ©es et sorties par rΓ©gion pour 1 million d'hab.
- RΓ©cupΓ©ration donnΓ©es lΓ©gales entreprise
- Apply Custom Styles
- Consolidate files
- Get dynamic active range
- List sheets in workbook
- Read file
- Save file
- Creer un dashboard PowerBI
- Lecture des fichiers
- Visualiser Bilan Treemap
- Visualiser Charges Horizontal Barchart
- Visualiser Comparer Ventes Line Chart
- Visualiser TrΓ©sorerie Barline Chart
- Add new issues as page in Notion database
- Add new member to team
- Add or update team membership for a user
- Clone repository
- Clone repository and switch branch
- Close issue
- Create Repo
- Create an issue comment
- Create issue
- Create leaderboard of contributors
- Create newsletter based on repository activity
- Create pull request
- Create repository on personal account
- Delete an issue comment
- Download Excel file from URL
- Download file from url
- Download repository from URL
- Follow stargazers trend
- Get Traffic Clones on repository
- Get Traffic Views on repository
- Get a repository
- Get active projects
- Get commits from repository
- Get commits ranking from repository
- Get files added on pull request
- Get files changed on pull request
- Get issues from repo
- Get most starred repos
- Get open pull requests
- Get profile from user
- Get profiles from teams
- Get team membership for a user
- Get weekly commits from repository
- List all pull requests
- List closed pull requests
- List issue comments
- List open pull requests
- List organization repositories
- List pending team invitations
- List stargazers from repository
- List team members
- Peform basic actions
- Read issue
- Remove member from team
- Remove team membership for a user
- Reopen issue
- Send stargazers to Google Sheets
- Track issues on projects
- Track notebooks created over time
- Update issue
- Automate response from keywords in mailbox
- Clean mailbox
- Create GitHub issue on specific email
- Create draft email
- Delete email from mailbox
- Get emails stats by sender
- Get seen emails
- Get unseen emails
- Read mailbox
- Send email
- Update email flag
- Follow average session duration daily
- Follow number of new visitors daily
- Follow number of new visitors hourly
- Follow number of new visitors monthly
- Follow number of new visitors weekly
- Follow number of sessions daily
- Follow number of sessions hourly
- Follow number of sessions monthly
- Follow number of sessions weekly
- Follow number of visitors daily
- Follow number of visitors hourly
- Follow number of visitors monthly
- Follow number of visitors weekly
- Get bounce rate
- Get pageview ranking
- Get stats per country
- Get time on landing page
- Get unique visitors
- Get unique visitors by country
- Send visitors traffic graph and trends prediction to Slack channel
- Add items to Notion databases from new rows in
- Add new github member to team from spreadsheet
- Get data
- Send LinkedIn invitations from spreadsheet
- Send data
- Send data to MongoDB
- Send emails from sheet
- Create a Slide
- Create a blank presentation
- Duplicate slide
- List slides in presentation
- Replace text within a shape
- Associate contact to deal
- Create Task
- Create contact
- Create contact from LinkedIn profile
- Create contacts from linkedin post likes
- Create deal
- Create note
- Delete Task
- Delete contact
- Delete deal
- Delete note
- Get Task
- Get all contacts
- Get all deals
- Get all pipelines and dealstages
- Get contact from URL
- Get contact from email
- Get contact from id
- Get contacts associated to deal
- Get deal
- Get notes from contact
- Send LinkedIn invitations from contacts
- Send closed deals weekly
- Send contacts to gsheet
- Send deals to gsheet
- Send new deals created weekly
- Send sales brief
- Send sales pipeline to Notion
- Update Task
- Update contact
- Update deal
- Update followers from linkedin
- Update jobtitle country industry from linkedin
- Update linkedinbio from google
- Add cells in notebook json
- Add tags in cells
- Apply black on notebook file
- Count code characters
- Count code lines
- Get installs
- Get libraries
- Read file json
- Save file ipynb
- Accept all invitations and send first message
- Accept invitation received
- Create Post
- Create posts metrics dashboard
- Extract content world cloud
- Follow company followers
- Follow connections from profile
- Follow content comments monthly
- Follow content comments weekly
- Follow content engagements monthly
- Follow content engagements weekly
- Follow content frequency
- Follow content likes monthly
- Follow content likes weekly
- Follow content published by weekdays by months
- Follow content published monthly
- Follow content published weekly
- Follow content views by weekdays by hours
- Follow content views monthly
- Follow content views weekly
- Follow number of connections monthly
- Generate leads from posts
- Get age and gender from profile picture
- Get comments from post
- Get company followers
- Get company posts stats
- Get connections from network
- Get contact from profile
- Get conversations
- Get followers from network
- Get guests from event
- Get identity from profile
- Get info from company
- Get invitations received
- Get invitations sent
- Get likes from post
- Get messages from profile
- Get network from profile
- Get polls from post
- Get posts engagements
- Get profile information
- Get profile posts stats
- Get resume from profile
- Get sentiment emotion irony offensiveness from comments
- Get stats from post
- Ignore invitation received
- Send comments from post to gsheet
- Send company followers to Google Sheets
- Send connections from network to gsheet
- Send event invitations post engagements
- Send followers demographic data to a Google Sheets spreadsheet
- Send invitation to company followers
- Send invitation to profile
- Send invitation to profile from post likes
- Send invitations to post commenters
- Send likes from post to gsheet
- Send message to new connections
- Send message to profile
- Send message to profile from post likes
- Send posts feed to gsheet
- Send profile followers by email
- Send weekly post engagement metrics by email
- Update metrics from company posts in Notion content calendar
- Update metrics from posts in Notion content calendar
- Withdraw pending profile invitations
- Add or Update Asset
- Add or Update Dependency
- Add or Update Scheduler
- Add or Update Secret
- Add or Update Webhook
- Asset demo
- Automate GitHub Auth
- Configure Github with ssh
- Create Kernel
- Create Pipeline
- Credits Get Balance
- Delete Asset
- Delete Dependency
- Delete Scheduler
- Delete Secret
- Delete Webhook
- Dependency demo
- Doc demo
- Download Content Engine
- Emailbuilder demo
- Find Asset link from path
- Get Transactions
- Get help
- Get number of downloads naas drivers package
- Get number of downloads naas package
- Get total downloads naas libraries
- List Assets
- List Dependencies
- List Secrets
- List Webhooks
- Manage Pipeline Errors
- NLP Examples
- Notification demo
- Remove Pipeline Executions Outputs
- Remove Scheduler Outputs
- Reset Instance
- Scheduler demo
- Secret demo
- Send notifications from Google Sheets
- Set timezone
- Start data product
- Use SSH tunnel to reach network protected resources
- Webhook demo
- Add bulleted list in page
- Add code block in page
- Add cover image to page
- Add equation in page
- Add heading in page
- Add icon image to page
- Add new github member to team from database
- Add numbered list in page
- Add paragraph with link in page
- Add to do list in page
- Automate transcript generation from recording link in page property
- Create page
- Create pages in database from dataframe
- Delete all pages from database
- Delete blocks from page
- Delete page
- Duplicate page
- Explore API
- Generate Google Sheets rows for new items in database
- Get blocks from page
- Get database
- Get page
- Get users
- Send LinkedIn invitations from database
- Send Slack Messages For New Database Items
- Sent Gmail On New Item
- Update database with GitHub repositories info
- Update database with LinkedIn company info
- Update database with LinkedIn profile info
- Update page
- Update page relation
- Update pages from database
- Upload PDF in page
- Upload image in page
- Upload video in page
- Brainstorm ideas
- Create Completion
- Generate Dialogue
- Generate Q&A
- Generate README for GitHub repository
- Generate Text to Speech
- Generate language translations
- Generate text based prediction
- Generate text replacements
- Generate text summaries
- Write a blog post
- Write a job description
- Write a press release
- Write a social media post
- Write an outline
- Check Columns type
- Convert datetime series
- Create Pivot Table
- Create dataframe from dict
- Drop Columns
- Drop Columns By Index
- Drop Duplicate Columns
- Drop First column
- Fill emtpy values
- Filter DataFrame
- Flatten MultiIndex Columns
- Format number to string
- Groupby and Aggregate
- ISO Date Conversion
- Keep Columns
- Map column with values in dict
- Merge Dataframes
- Pivot rows to columns
- Rename Columns
- Transform DataFrame to json file
- Transform Dataframe to dict
- Create Balance Sheet Treemaps
- Create Barline chart
- Create Bubblechart
- Create Bubblemap by City
- Create Candlestick
- Create Gantt chart
- Create Heatmap
- Create Horizontal Barchart
- Create Leaderboard
- Create Leaderboard stacked
- Create Linechart
- Create Mapchart world
- Create Treemaps with plotly.express
- Create Treemaps with plotly.graph objects
- Create Vertical Barchart
- Create Vertical Barchart group
- Create Vertical Barchart stacked
- Create Waterfall chart
- Add Slide With Image
- Add Slide With Textbox
- Add Slide With Title Subtitle
- Add title + line in presentation
- Create Presentation
- Set portrait format
- Access environment variable
- Add new environment variable
- Calculate relative time delta between two dates
- Calculate time delta between two dates
- Check email validity
- Clean your download folder
- Compress images
- Consolidate Excel files
- Convert CSV to Excel
- Convert Datetime with Timezone to ISO 8601 date string
- Convert PNG Images To JPG
- Convert URL to string
- Convert audiofile from wav to mp3
- Convert relative time delta to months
- Convert string to URL
- Convert time delta to months
- Copy files and subdir from directory to another directory
- Create Email Combination with Firstname Lastname Domain address
- Create Strong Random Password
- Create dataframe from lists
- Create dict from lists
- Create directory
- Delete entire directory tree
- Download Image from URL
- Download PDF from URL
- Download ZIP from URL
- Explore Dataset with Pivot Table
- Find Phone Number in string
- Flatten nested dict
- Get Word Definition and Translation
- Get access of environment variables
- Get all files from directory
- Get coordinates from address
- Get last file modified from directy
- Get next occurrences of a cron job
- Locate address on map
- Locate city on map
- Locate coordinates
- Looping Over Dataframe
- Match pattern with regular expressions
- Organize Directories based on file types
- Read json file
- Read pickle file
- Remove file
- Rename file
- Replace value in text in a specific paragraph
- Save dict to pickle
- Save json file
- Using datetime library
- Get cash position trend
- Get organizations
- Get positions
- Get statement
- Get statement barline
- Get statement ranking by category
- Get statement summary by operation type
- Get transactions
- Releve de compte augmente
- Create Database file
- Create Table in Database
- Insert data in Table
- List Tables in Database
- Read data in Table
- Basics and data querying
- Ingest csv data from local stage
- Ingest data from AWS external stages
- Ingest json data from local stage
- Create a customer
- Delete a customer
- Get balances
- Get charges
- List all customers
- Retrieve a customer
- Update a customer
- Add member to list
- Get followers list
- Get members of list
- Get posts stats
- Get tweets from search
- Get tweets stats from profile
- Get user data
- Post text and image
- Remove member from list
- Schedule posts
- Send posts stats to Notion
- Create Animated Bar Chart
- Create Animated Pie Chart
- Create Column Chart
- Create Grouped Column Chart
- Create Line Chart
- Create Stacked Column Chart
- Create Waterfall Chart
- Display AQI on worldmap
- Get daily air quality data by coordinates
- Get daily air quality data for a city
- Get stations by coordinates
- Search station by name
- WHI Create indicator
- Get daily Covid19 active cases trend JHU
- Get daily Covid19 active cases worldmap JHU
- GDP contributors
- GDP per capita and growth
- GDP per country and evolution
- Gini index
- Most populated countries
- Richest countries top10
- World employment by sector
- World population and density
- Candlestick chart
- Cryptocurrencies heatmap correlation graph
- Display chart from ticker
- Find the stock with closest performance using KNN
- Get Brent Crude Oil trend and predictions
- Get Stock Update
- Get USDEUR data and chart
- Get data from ticker
- Send daily prediction to Email
- Send daily prediction to Notion
- Send daily prediction to Slack
- Download video
- Extract and summarize transcript
- Extract transcript from video
- Get statistics from channel
- Get statistics from video
- Get uploads from channel
- Send track to Spotify
- Send video stats to Notion
- Summarize video
Contact us on [email protected] if you need any help or join our [Slack community](https://join.slack.com/t/naas-club/shared_invite/zt-1970s5rie-dXXkigAdEJYc~LPdQIEaLA)