diff --git a/.vscode/launch.json b/.vscode/launch.json
new file mode 100644
index 00000000..92b8df0d
--- /dev/null
+++ b/.vscode/launch.json
@@ -0,0 +1,26 @@
+{
+  "configurations": [
+    {
+      "MIMode": "gdb",
+      "args": [],
+      "cwd": "${workspaceFolder}",
+      "environment": [],
+      "externalConsole": false,
+      "name": "(gdb) Launch",
+      "preLaunchTask": "Compile (Linux x64)",
+      "program": "${workspaceFolder}/bin/linux-amd64-librw_gl3_glfw-oal/Debug/re3",
+      "request": "launch",
+      "setupCommands": [
+        {
+          "description": "Enable pretty-printing for gdb",
+          "ignoreFailures": true,
+          "text": "-enable-pretty-printing"
+        }
+      ],
+      "stopAtEntry": false,
+      "targetArchitecture": "x64",
+      "type": "cppdbg"
+    }
+  ],
+  "version": "0.2.0"
+}
diff --git a/.vscode/settings.json b/.vscode/settings.json
new file mode 100644
index 00000000..d37e8ae8
--- /dev/null
+++ b/.vscode/settings.json
@@ -0,0 +1,16 @@
+{
+  "C_Cpp.default.cStandard": "gnu11",
+  "C_Cpp.default.cppStandard": "gnu++14",
+  "C_Cpp.default.includePath": [
+    "src/fakerw",
+    "src/math",
+    "src/render",
+    "src/skel",
+    "vendor/librw"
+  ],
+  "C_Cpp.vcFormat.indent.gotoLabels": "leftmostColumn",
+  "C_Cpp.vcFormat.space.pointerReferenceAlignment": "right",
+  "cSpell.enabled": false,
+  "files.trimFinalNewlines": false,
+  "files.trimTrailingWhitespace": false
+}
diff --git a/.vscode/tasks.json b/.vscode/tasks.json
new file mode 100644
index 00000000..475c805e
--- /dev/null
+++ b/.vscode/tasks.json
@@ -0,0 +1,39 @@
+{
+  "inputs": [
+    {
+      "default": "5",
+      "description": "Number of jobs to run simultaneously when compiling",
+      "id": "numberOfJobs",
+      "type": "promptString"
+    }
+  ],
+  "tasks": [
+    {
+      "args": ["--with-librw", "gmake2"],
+      "command": "./premake5Linux",
+      "label": "Premake (Linux)",
+      "problemMatcher": "$gcc",
+      "type": "shell"
+    },
+    {
+      "args": [
+        "-j${input:numberOfJobs}",
+        "config=debug_linux-amd64-librw_gl3_glfw-oal",
+        "verbose=1"
+      ],
+      "command": "make",
+      "dependsOn": "Premake (Linux)",
+      "group": {
+        "isDefault": true,
+        "kind": "build"
+      },
+      "label": "Compile (Linux x64)",
+      "options": {
+        "cwd": "${workspaceFolder}/build"
+      },
+      "problemMatcher": "$gcc",
+      "type": "shell"
+    }
+  ],
+  "version": "2.0.0"
+}