diff --git a/layouts/partials/wip.html b/layouts/partials/wip.html
new file mode 100644
index 0000000..912f641
--- /dev/null
+++ b/layouts/partials/wip.html
@@ -0,0 +1,3 @@
+{{ $text := .text | default .Text
+}}{{ $wip := .sep | default .Sep | default .wip | default .WIP | default "WIP"
+}}*{{ $wip }}:* {{ $text }} *:{{ $wip }}*
\ No newline at end of file
diff --git a/layouts/shortcodes/tbd.html b/layouts/shortcodes/tbd.html
new file mode 100644
index 0000000..0c7dc47
--- /dev/null
+++ b/layouts/shortcodes/tbd.html
@@ -0,0 +1,3 @@
+{{ $text := .Get 0
+}}{{ partial "wip.html" (dict "text" $text "sep" "TBD")
+}}
\ No newline at end of file
diff --git a/layouts/shortcodes/wip.html b/layouts/shortcodes/wip.html
new file mode 100644
index 0000000..6c00265
--- /dev/null
+++ b/layouts/shortcodes/wip.html
@@ -0,0 +1,4 @@
+{{ $text := .Get 0
+}}{{ $wip := .Get 1 | default "WIP"
+}}{{ partial "wip.html" (dict "text" $text "wip" $wip)
+}}
\ No newline at end of file