(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
- Analyze website content using XML sitemap
- Audit robots txt and xml sitemap issues
- Check status code and Send report by email
- Check status code in bulk
- Check website pages status code
- Crawling a website
- Visualize status codes OK and KO
- Visualize status codes count
- Export treasury plan
- Export treasury plan by account
- Get banks accounts from company
- Get inflow categories from company
- Get outflow categories from company
- List companies
- Add or Replace all attributes in existing records
- Add or Replace all attributes in a single record
- Delete multiples objects
- Delete a single object
- Get all records from an index
- List indices
- 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
- Create time entries database on a workspace
- 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
- Send time entries database to a Google Sheets spreadsheet
- Update client
- Update project
- Add a customisable sidebar
- Create Datatable With Dropdown
- Create Dropdown Callback
- Create Dropdown with multiples output callbacks
- Create Interactive Plot
- Create Navbar
- Create Navbar board
- Create Navbar Search
- Create button to refresh page
- Create conditional formatting on HTML element
- Create conditional formatting on number value
- Create download button
- Create loading button
- Create spinner button
- 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
- Calculate relative time delta between two dates
- Calculate time delta between two dates
- Convert datetime object to a formatted date string
- Convert with Timezone to ISO 8601 date string
- Convert relative time delta to months
- Convert a string date to a datetime object
- Convert timestamp to a datetime object
- 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
- Calculate distance between two locations in kilometers
- Calculate distance between two locations in miles
- Display markers on map from addresses
- Display route itinerary between two locations
- Get address from coordinates
- Get coordinates from address
- Add new issues as page in Notion database
- Add new member to team
- Add or update team membership for a user
- Clone open branches from repository on my local
- 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 DataFrame with issue estimate from project view
- Get Traffic Clones on repository
- Get Traffic Views on repository
- Get a repository
- Get active projects
- Get commits from repository
- List commits history from file path
- 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 branches
- List branches with open PR
- 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 directories with branches closed on my local
- Remove member from team
- Remove team membership for a user
- Reopen issue
- Send contributor activity on slack
- Send stargazers to Google Sheets
- Send template maintainer monthly report
- Send templates created on a notebooks to Slack channel
- 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 by date
- Get emails stats by sender
- Get most common senders
- Get most important unseen emails
- Get seen emails
- Get unseen emails
- Mark emails as seen by dates
- 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
- Calculate travel costs between two addresses
- Connect to Routes API
- Create and display distance matrix
- Create itinerary optimisation on differents waypoints
- Get coordinates from address
- Add items to Notion databases from new rows in
- Add new github member to team from spreadsheet
- Calculate distance and price
- 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
- Convert Python Objects to
- Pretty print data
- Read local file
- Save dataframe to file
- Save dict to file
- Send to Google Sheets spreadsheet
- 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
- Chat about my latest profile posts
- 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 like to post
- 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
- Create Barchart
- Create Horizontal Barchart
- Create Stacked Barchart
- Create Stackplots
- Create Step Demo
- Create Streamgraphs
- Create Waterfall chart
- Creating a timeline with lines, dates, and text
- Errorbar Limit Selection
- Mapping marker properties to multivariate data
- Plotting the Coherence of two signals
- 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
- Create onboarding plugin using OpenAI
- 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 Schedulers
- List Schedulers with all executions
- List Schedulers with last execution
- 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 Asset image to Notion page
- 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
- Access environment variable
- Add new environment variable
- Check path exist
- Create directory
- Get access of environment variables
- Get current working directory
- Get folder stats
- List entries in directory
- Remove file
- Rename file
- Visualize GDP per capita through the years
- Visualize Human Development Index
- Visualize oil consumption throughout the years
- Visualize Population of Different Age Groups
- Visualize economic freedom through the years
- Visualize greenhouse gas per capita
- Visualize Life expectancy at birth for both sexes throughout the years
- Tourist depature per 1000
- Visualize wealth distribuition of certain major economic powers
- Visualize world population growth
- Act as a AI enthusiast
- Act as a Business Analyst
- Act as a CEO
- Act as a COO
- Act as a CTO
- Act as a Creative Writer or Artist
- Act as a Data Analyst
- Act as a Data Scientist
- Act as a Educator or student
- Act as a Hobbyist
- Act as a Homeowner
- Act as a IT Professional
- Act as a Lifelong learner
- Act as a Marketer
- Act as a Parent or Child
- Act as a Product Manager
- Act as a Project Manager
- Act as a Retiree
- Act as a Sales Professional
- Act as a Software Developer
- Act as a Software Engineer
- Act as a chef
- Brainstorm ideas
- Count tokens with tiktoken
- Create Completion
- Create chat completion
- Create chatbot
- Generate_Act_as_a_x_notebook
- Generate Dialogue
- Generate Q&A
- Generate README for GitHub repository
- Generate Text to Speech
- Generate image from text
- 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
- Get lists of authors
- Get lists of concepts
- Get lists of funders
- Get lists of institutions
- Get lists of publishers
- Get lists of sources
- Get lists of works
- Apply custom styles on column
- Check Columns type
- Check if column is in date format
- Concatenate dataframes
- Convert datetime series
- Create Pivot Table
- Create conditional column enrichment using DataFrame.loc
- Create dataframe from dict
- Drop Columns By Index
- Drop First column
- Drop columns
- Drop duplicates
- Enforce data types to columns
- Fill emtpy values
- Filter DataFrame
- Flatten MultiIndex Columns
- Format URL as clickable link on column
- Format number to string
- Get n largest
- Get n smallest
- Groupby and Aggregate
- ISO Date Conversion
- Insert column
- Iterate over DataFrame rows
- Iterate over DataFrame rows as namedtuples
- Keep columns
- Looping Over Dataframe
- Map column with values in dict
- Merge Dataframes
- Pivot rows to columns
- Read CSV
- Read Excel
- Rename columns
- Save dataframe to CSV
- Save dataframe to Excel
- Sort values by multiples 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
- Concatenate DataFrames
- Create DataFrame
- Read CSV
- Select columns
- Select rows
- Select both rows and columns
- Add Slide With Image
- Add Slide With Textbox
- Add Slide With Title Subtitle
- Add title + line in presentation
- Create Presentation
- Set portrait format
- Check if string is number
- Clean your download folder
- Compress images
- Consolidate Excel files
- Convert CSV to Excel
- Convert degrees-minutes-seconds to decimal degrees
- Convert PNG Images To JPG
- Convert URL to string
- Convert audiofile from wav to mp3
- Convert coordinates to degrees-minutes-seconds
- Convert currency
- Convert length
- Convert speed
- Convert string boolean to boolean
- Convert string to URL
- Convert temperature
- Convert time
- Convert time delta to months
- Convert units
- Convert volume
- Convert weight
- 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
- Delete entire directory tree
- Download Image from URL
- Download PDF from URL
- Download ZIP from URL
- Download audio file from URL
- Explore Dataset with Pivot Table
- Extract characters from string
- Find Phone Number in string
- Find differences between strings
- Flatten nested dict
- Get Word Definition and Translation
- Get all files from directory
- Get coordinates from address
- Get last file modified from directy
- Get next occurrences of a cron job
- Get random number
- Get a random word
- List specific files from directory and subdirectories
- Locate address on map
- Locate city on map
- Locate coordinates
- Looping Over Dataframe
- Manage code error with try except
- Organize Directories based on file types
- Pseudonym generator
- Read pickle file
- Remove all spaces on string
- Save dict to pickle
- Split string
- Transform String to Secure Hash Algorithm
- Validate email and phone numbers
- 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
- Add new user to Google Sheets
- Follow number of users in workspace
- Send blocks to channel
- Send message
- 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 SMS to Google Sheets spreadsheet
- Make Call
- Send SMS
- Send SMS messages for Google Calendar Events
- 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)