This file will become your README and also the index of your documentation.
If you are new to using nbdev here are some useful pointers to get you
started.
# make sure tk_slack package is installed in development mode
$ pip install -e .
# make changes under nbs/ directory
# ...
# compile to have changes apply to tk_slack
$ nbdev_prepareInstall latest from the GitHub repository:
$ pip install git+https://github.com/Datatistics/tk_slack.gitor from conda
$ conda install -c Datatistics tk_slackor from pypi
$ pip install tk_slackDocumentation can be found hosted on this GitHub repository’s pages. Additionally you can find package manager specific guidelines on conda and pypi respectively.
---
config:
theme: redux
layout: dagre
look: handDrawn
---
flowchart TD
subgraph Core_Components["Core_Components"]
MessageTemplates["MessageTemplates<br>Creates formatted messages"]
BlockBuilder["BlockBuilder<br>Builds Slack Block Kit"]
InteractionBuilder["InteractionBuilder<br>Creates buttons, selects, etc."]
ActionIdManager["ActionIdManager<br>Generates & parses action IDs"]
MetadataHandler["MetadataHandler<br>Attaches/reads hidden metadata"]
ActionHandler["ActionHandler<br>Processes user actions"]
TemplateEngine["TemplateEngine<br>Transforms data to message blocks"]
SnowflakeConnector["SnowflakeConnector<br>Handles DB ops"]
end
subgraph Message_Creation_Flow["Message_Creation_Flow"]
DataInput["Data Input (DataFrame)"]
Configuration["Apply Configuration"]
BlockBuilding["Block Building"]
MetadataAddition["Metadata Addition"]
MessageSending["Send Message to Slack"]
end
subgraph User_Interaction_Flow["User_Interaction_Flow"]
UserAction["User Clicks Element"]
ActionDetection["Universal Handler Captures Action"]
MetadataExtraction["Extract Metadata"]
ActionProcessing["Process Action Logic"]
SnowflakeStorage["Store in Snowflake"]
Response["Send Slack Response"]
end
DataInput --> Configuration
Configuration --> BlockBuilding
BlockBuilding -- Uses --> TemplateEngine
TemplateEngine --> MessageTemplates & BlockBuilder & InteractionBuilder & MetadataAddition
InteractionBuilder --> ActionIdManager
MetadataAddition --> MetadataHandler & MessageSending
UserAction --> ActionDetection
ActionDetection --> ActionHandler
ActionHandler --> MetadataExtraction & ActionProcessing & TemplateEngine
MetadataExtraction --> MetadataHandler
ActionProcessing --> SnowflakeStorage & Response
SnowflakeStorage --> SnowflakeConnector