Every script would need to be well defined while keeping their respective concept logic
- [📂] Basic (Every concepts of JavaScript and node.js there)
- [📁] Variable (🔏)
- [📁] Function (🔏 (Missing Block: [🧱] Return {any}) )
- [📁] Custom Object
- [📁] Loop
- [🧱] Repeat [ Forever / Times {Integer} / While {Condition} ] {Scratch} (🔓)
- [🧱] Count with {variable} from {number} to {number} with increment {number}
- [🧱] For each item {Variable} in list {Array} {Scratch}
- [🧱] [Break out/Continue with next iteration] of loop (🔒)
- [📁] Logic
- [🧱] [ If / Else if / Else ] do {Scratch}
- [🧱] {Condition} [ = / != / > / < / >= / <= / and / or ] {Condition}
- [🧱] {Condition} [and / or] {Condition}
- [🧱] Not {Condition}
- [🧱] [True / False]
- [🧱] Null
- [🧱] Test {argument} if true {value} if false {value}
- [🧱] Is {value} a [ number / string ]
- [📁] Math
- [🧱] {number}
- [🧱] {number} [ + / - / ÷ / * / ^] {number}
- [🧱] [square root / absolute / -(negative number) / ln / log10 / e^ / 10^] {number}
- [🧱] [ cos / sin / tan / arccos / arcsin / arctan ] {number}
- [🧱] [ π / e / φ / square root(2) / square root(½) / ∞ ]
- [🧱] {number} is [ even / odd / prime / whole / positive / negative / divisible by {number} ]
- [🧱] Round [ up / down ] {number}
- [🧱] [ sum / min / max / average / median / modes / standart deviation / random item ] of list {Array}
- [🧱] Remainder of {number} ÷ {number}
- [🧱] Constrain {number} low {number} high {number}
- [🧱] Random integer from {number} to {number}
- [🧱] Random fraction
- [📁] List
- [🧱] Create list ⚙️{item}
- [🧱] Create list with item {any but objects} repeated {number} times
- [🧱] Length of {array}
- [🧱] is {tangible} empty
- [🧱] List {array} contains {item}
- [🧱] sort [ numeric / aplhabetic / alphabetic (ignore case) ] [ ascending / descending ] {array}
- [🧱] Reverse {array}
- [🧱] In list {array} find [ First / Last ] occurence of item {item}
- [🧱] In list {array} [ Get / Get & Remove / Remove ] [ #{number} / #{number (from end)} / first / last /random ]
- [🧱] In list {array} [ set / insert at ] [ #{number} / #{number (from end)} / first / last / random ] as {number}
- [🧱] In list {array} get sub-list from [ #{number} / #{number} (from end) / first ] to [ #{number} / #{number} (from end) / last ]
- [🧱] In list {array} push {item}
- [🧱] Make [ List from text / Text from list ] {array} with delimiter {string}
- [📁] Text
- [🧱] {string} consider new lines
- [🧱] Create text with ⚙️{any}
- [🧱] Replace {string} with {string} in {string}
- [🧱] is {tangible} empty
- [🧱] reverse {string}
- [🧱] New Line (\n)
- [🧱] To [ Variable / array ] append text {string}
- [🧱] Length of {string}
- [🧱] {string} ends with {string}
- [🧱] {string} starts with {string}
- [🧱] {string} includes {string}
- [🧱] {string} is empty
- [🧱] In text {variable/array} find [ First / Last] occurence of text {string}
- [🧱] In text {variable / array} get [Letter #{number} / Letter #{number _(from end} / First leter / Last leter / random letter ]
- [🧱] In text {Variable / Array} get substring from [Letter #{number} / Letter #{number (from end)} / first letter ] to [Letter #{number} / Letter #{number (from end)} / Last letter ]
- [🧱] To [ Uppercase / Lowercase / Title case] {string}
- [🧱] Trim space from [ Both sides / Left side / Right side ] of {string}
- [🧱] Count {string} in {string}
- [🧱] Is {string} boolean
- [🧱] Boolean from text {string}
- [🧱] Does text {string} contain numbers
- [🧱] Convert text {string} to number
- [📁] Color
- [🧱] {color}
- [🧱] Random Color
- [🧱] Color {Hex value}
- [🧱] RGB color {number (red)} {number (green)} {number (blue)}
- [🧱] Blend color 1 {color} with color 2 {color} ratio {number}
- [📁] Database
- [📁] Database
- [🧱] Get {string} from the database
- [🧱] Does {string} exist in the database
- [🧱] Get all data from the database
- [🧱] Set {string} to {string} in the database
- [🧱] Delete {string} from the database
- [🧱] Add {number} to {string} in database
- [🧱] Substract {number} to {string} in database
- [🧱] Delete all data from the database
- [📁] Dootabase (awaiting for devs guidance to know what to do with it)
- [🧱] Set current database to {string} .json
- [🧱] Get {string} from dootabse
- [🧱] Does {string} exist in dootabase
- [🧱] Get all data from dootabase
- [🧱] Set {string} to {string} in dootabase
- [🧱] Delete {string} from dootabase
- [🧱] In dootabase add {number} to {string}
- [🧱] In dootabase substract {number} to {string}
- [🧱] In dootabase multiply {string} by {number}
- [🧱] In dootabase divide {string} by {number}
- [🧱] Delete current dootabase
- [📁] Database
- [📁] Custom Event
- [📁] Terminal
- [🧱] Try {Scratch} If Error {Scratch} (= Try Catch)
- [🧱] Error
- [🧱] Print {Any}
- [🧱] Wait {Duration}
- [🧱] Stop Script
- [🧱] Do {scratch} and save output in {variable}
- [🧱] Run Code {Any} (= Eval)
- [🧱] Insert Code {Typing} (= Insert)
- [🧱] Create Webserver with text {string}
- [📂] Discord (Every concepts of Discord.js there)
- [📁] Object
- [📁] Guild
- [🧱] {object -Guild-}
- [🧱] Get {object -Guild-} [property]
- [🧱] Set {object -Guild-} [property] to {parameter}
- [📁] Member
- [🧱] {object -Member-}
- [🧱] Get {object -Member-} [property] with reason
- [🧱] Set {object -Member-} [ nickname ] to {parameter}
- [📁] User
- [🧱] {object -User-}
- [🧱] Get {object -User-} [property]
- [🧱] Set {object -User-} [property] to {parameter}
- [📁] Channel
- [🧱] {object -Channel-}
- [🧱] Get {object -Channel-} [property]
- [🧱] Set {object -Channel-} [property] to {parameter}
- [📁] Thread
- [🧱] {object -Thread-}
- [🧱] Get {object -Thread-} [property]
- [🧱] Set {object -Thread-} [property] to {parameter}
- [📁] Role
- [🧱] {object -Role-}
- [🧱] Get {object -Role-} [property]
- [🧱] Set {object -Role-} [property] to {parameter}
- [📁] Message
- [🧱] {object -Message-}
- [🧱] Get {object -Message-} [property]
- [🧱] Set {object -Message-} [property] to {parameter}
- [📁] Reaction
- [🧱] {object -Reaction-}
- [🧱] Get {object -Reaction-} [property]
- [🧱] Set {object -Reaction-} [property] to {parameter}
- [📁] Typing
- [🧱] {object -Typing-}
- [🧱] Get {object -Typing-} [property]
- [🧱] Set {object -Typing-} [property] to {parameter}
- [📁] Invite
- [🧱] {object -Invite-}
- [🧱] Get {object -Invite-} [property]
- [🧱] Set {object -Invite-} [property] to {parameter}
- [📁] Emoji
- [🧱] {object -Emoji-}
- [🧱] Get {object -Emoji-} [property]
- [🧱] Set {object -Emoji-} [property] to {parameter}
- [📁] Sticker
- [🧱] {object -Sticker-}
- [🧱] Get {object -Sticker-} [property]
- [🧱] Set {object -Sticker-} [property] to {parameter}
- [📁] Scheduled Event
- [🧱] {object -Scheduled Event-}
- [🧱] Get {object -Scheduled Event-} [property]
- [🧱] Set {object -Scheduled Event-} [property] to {parameter}
- [📁] Stage
- [🧱] {object -Stage-}
- [🧱] Get {object -Stage-} [property]
- [🧱] Set {object -Stage-} [property] to {parameter}
- [📁] Interaction
- [🧱] {object -Interaction-}
- [🧱] Get {object -Interaction-} [property]
- [🧱] Set {object -Interaction-} [property] to {parameter}
- [📁] API
- [🧱] {object -API-}
- [🧱] Get {object -API-} [property]
- [🧱] Set {object -API-} [property] to {parameter}
- [📁] Client
- [🧱] {object -Client-}
- [🧱] Get {object -Client-} [property]
- [🧱] Set {object -Client-} [property] to {parameter}
- [📁] Shard
- [🧱] {object -Shard-}
- [🧱] Get {object -Shard-} [property]
- [🧱] Set {object -Shard-} [property] to {parameter}
- [📁] Guild
- [📁] Event
- [📁] Guild
- [📁] Member
- [📁] User
- [📁] Channel
- [📁] Thread
- [📁] Role
- [📁] Message
- [📁] Reaction
- [📁] Typing
- [📁] Invite
- [📁] Emoji
- [📁] Sticker
- [📁] Scheduled Event
- [📁] Stage
- [📁] Interaction
- [📁] API
- [📁] Client
- [📁] Shard
- [📁] Action
- [📁] Guild
- [📁] Member
- [📁] User
- [📁] Channel
- [📁] Thread
- [📁] Role
- [📁] Message
- [📁] Reaction
- [📁] Typing
- [📁] Invite
- [📁] Emoji
- [📁] Sticker
- [📁] Scheduled Event
- [📁] Stage
- [📁] Interaction
- [📁] API
- [📁] Client
- [🧱] Connect the bot with the token {string}
- [🧱] Set bot status to [ Online / Offline / Idle / Do Not Disturb ] custom status {string} type [ Listening / Watching / Competing / Playing ]
- [🧱] Set status streaming url {string}
- [🧱] Shutdown the bot
- [🧱] Set bot [ username / avatar ] to {string}
- [📁] Shard
- [📁] Object
- [📁] Community (for "pre-marketplace" blocks before real marketplace release)
- [📁] Message
- [📁] Database
- [📁] MongoDB
- [📁] Firebase
- [📁] Image Editing
- [📁] Hosts
- [📁] GitHub
- [📁] Repl.it
- [📁] Marketplace (where marketplace blocks will go)
- [📁] Developing (only for dev, never released)
- [📁] To Rework (moved from release Toolbox with above their previous location as label)
- [📁] In Rework
- [📁] To Deploy (to implement in release Toolbox)
- 📂 : Block Category: Defaultly Opened
- 📁 : Block Category: Defaultly Closed
- 🏷️ : Label (informative text in toolbox)
- 🧱 : Block
- 🔒 : Blockly: Locked (bound to blockly and cannot be modified unless customly reworked)
- 🔏 : Blockly: Problem (Locked but might be customly reworked to better fit S4D (often annoted with its respective reason))
- 🔓 : Blockly: Custom Reworked (formerly bound to blockly but have been customly reworked to better fit S4D)
- ⚙️ : Mutator
- [ ] : Dropdown
- { } : Input
- / : Logical "or"
- - - : Input Default Value: Block
- ~ ~ : Input Default Value: Shadow
- Tangible : Has a lenght
- Color : "color" not "colour"