diff --git a/src/classes/utils/ArgsParser.js b/src/classes/utils/ArgsParser.js
new file mode 100644
index 0000000..ad55f12
--- /dev/null
+++ b/src/classes/utils/ArgsParser.js
@@ -0,0 +1,33 @@
+const parseArgs = require('minimist');
+const { InvalidArgumentError } = require('../../errors');
+
+class ArgsParser {
+  constructor(minimistOptions = ArgsParser.DEFAULT_OPTIONS, requiredArgs = []) {
+    this.options = minimistOptions;
+    this.required = requiredArgs;
+  }
+
+  parse(argv) {
+    const parsedArgs = parseArgs(argv, this.options);
+    this.validate(parsedArgs);
+    
+    return parsedArgs;
+  }
+
+  validate(parsedArgs) {
+    this.required.forEach((arg) => {
+      if (!parsedArgs[arg]) {
+        throw new InvalidArgumentError(`--${arg} is required!`);
+      }
+    });
+  }
+}
+
+ArgsParser.DEFAULT_OPTIONS = {
+  boolean: ['display'],
+  default: {
+    display: false
+  }
+};
+
+module.exports = ArgsParser;
diff --git a/src/errors/InvalidArgumentError.js b/src/errors/InvalidArgumentError.js
new file mode 100644
index 0000000..2673def
--- /dev/null
+++ b/src/errors/InvalidArgumentError.js
@@ -0,0 +1,9 @@
+class InvalidArgumentError extends Error {
+  constructor(message) {
+    super(message);
+    
+    this.name = 'InvalidArgumentError';
+  }
+}
+
+module.exports = InvalidArgumentError;
diff --git a/src/errors/index.js b/src/errors/index.js
index 841618d..c5819fa 100644
--- a/src/errors/index.js
+++ b/src/errors/index.js
@@ -1,9 +1,11 @@
 const FatalError = require('./FatalError');
 const ScraperError = require('./ScraperError');
 const JDownloaderError = require('./JDownloaderError');
+const InvalidArgumentError = require('./InvalidArgumentError');
 
 module.exports = {
   FatalError,
   ScraperError,
-  JDownloaderError
+  JDownloaderError,
+  InvalidArgumentError
 };
diff --git a/src/index.js b/src/index.js
index b85b8a0..56a1665 100644
--- a/src/index.js
+++ b/src/index.js
@@ -1,14 +1,17 @@
 const puppeteer = require('puppeteer-extra');
 const StealthPlugin = require('puppeteer-extra-plugin-stealth');
 const AdBlockerPlugin = require('puppeteer-extra-plugin-adblocker');
+const ArgsParser = require('./classes/utils/ArgsParser');
 const KissAsianScraper = require('./classes/scraping/KissAsianScraper');
 const credentials = require('../data/credentials.json');
 
+const args = new ArgsParser().parse(process.argv.slice(2));
+
 puppeteer.use(StealthPlugin());
 puppeteer.use(AdBlockerPlugin({ blockTrackers: true }));
 
 const main = async() => {
-  const browser = await puppeteer.launch({ headless: false, slowMo: 250 });
+  const browser = await puppeteer.launch({ headless: !args.display, slowMo: 250 });
   const page = await browser.newPage();
   const scraper = new KissAsianScraper(page);