(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
- 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
- Visualiser Bilan Treemap
- 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 issue
- Create leaderboard of contributors
- Create newsletter based on repository activity
- Create pull request
- Create repository on personal account
- 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 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
- Send stargazers to Google Sheets
- Track issues on projects
- Track notebooks created over time
- Automate response from keywords in mailbox
- Clean mailbox
- Create GitHub issue on specific 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 Asset
- Add Scheduler
- Add Secret
- Add Webhook
- Asset demo
- Automate GitHub Auth
- Configure Github with ssh
- Create Kernel
- Create Pipeline
- Credits Get Balance
- Delete Asset
- 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 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
- 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
- Check email validity
- Clean your download folder
- 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 string to URL
- 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 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)