From d155531681076284274964dcca3d91e8c65c62c4 Mon Sep 17 00:00:00 2001 From: Nikitasoni Date: Sat, 14 Mar 2026 22:33:56 +0530 Subject: [PATCH 1/6] Create index.html --- docs/index.html | 1 + 1 file changed, 1 insertion(+) create mode 100644 docs/index.html diff --git a/docs/index.html b/docs/index.html new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/docs/index.html @@ -0,0 +1 @@ + From f1115c815ca65ac63d6bd929df5cea5c938df777 Mon Sep 17 00:00:00 2001 From: Nikitasoni Date: Sat, 14 Mar 2026 22:35:11 +0530 Subject: [PATCH 2/6] Create style.css --- docs/style.css | 1 + 1 file changed, 1 insertion(+) create mode 100644 docs/style.css diff --git a/docs/style.css b/docs/style.css new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/docs/style.css @@ -0,0 +1 @@ + From 8b7ae5db756c035e66a5ab72d03e1a528802bcc8 Mon Sep 17 00:00:00 2001 From: Nikitasoni Date: Sat, 14 Mar 2026 22:36:49 +0530 Subject: [PATCH 3/6] Add initial HTML structure for Dev Setup page --- docs/index.html | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/docs/index.html b/docs/index.html index 8b13789..84d19a1 100644 --- a/docs/index.html +++ b/docs/index.html @@ -1 +1,47 @@ + + + + +Dev Setup + + + + +
+

Dev Setup

+

Install your development environment instantly

+
npx dev-setup
+
+ +
+

Tools You Can Install

+ +
+
Git
+
Node.js
+
Docker
+
VS Code
+
Python
+
Java
+
+ +
+ +
+

Supported Operating Systems

+ +
+ Windows + Linux + MacOS +
+ +
+ +
+

Powered by dev-setup

+
+ + + From f1a693853c185b2e53e80a4f3652f9df36ae9745 Mon Sep 17 00:00:00 2001 From: Nikitasoni Date: Sat, 14 Mar 2026 22:37:26 +0530 Subject: [PATCH 4/6] Add initial CSS styles for the webpage --- docs/style.css | 55 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) diff --git a/docs/style.css b/docs/style.css index 8b13789..8002137 100644 --- a/docs/style.css +++ b/docs/style.css @@ -1 +1,56 @@ +body{ +font-family: Arial; +margin:0; +background:#0f172a; +color:white; +text-align:center; +} +.hero{ +padding:80px 20px; +background:#1e293b; +} + +.command{ +margin-top:20px; +font-size:22px; +background:black; +padding:10px 20px; +display:inline-block; +border-radius:6px; +color:#00ffcc; +} + +.tools{ +padding:50px; +} + +.grid{ +display:grid; +grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); +gap:20px; +margin-top:30px; +} + +.card{ +background:#1e293b; +padding:20px; +border-radius:10px; +} + +.os{ +padding:50px; +background:#1e293b; +} + +.badges span{ +margin:10px; +padding:10px 20px; +background:#334155; +border-radius:8px; +display:inline-block; +} + +footer{ +padding:20px; +} From ab605b0046aa0fecf8ad180be901c10527108b47 Mon Sep 17 00:00:00 2001 From: Nikitasoni Date: Sun, 15 Mar 2026 16:47:37 +0530 Subject: [PATCH 5/6] Delete docs/style.css --- docs/style.css | 56 -------------------------------------------------- 1 file changed, 56 deletions(-) delete mode 100644 docs/style.css diff --git a/docs/style.css b/docs/style.css deleted file mode 100644 index 8002137..0000000 --- a/docs/style.css +++ /dev/null @@ -1,56 +0,0 @@ -body{ -font-family: Arial; -margin:0; -background:#0f172a; -color:white; -text-align:center; -} - -.hero{ -padding:80px 20px; -background:#1e293b; -} - -.command{ -margin-top:20px; -font-size:22px; -background:black; -padding:10px 20px; -display:inline-block; -border-radius:6px; -color:#00ffcc; -} - -.tools{ -padding:50px; -} - -.grid{ -display:grid; -grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); -gap:20px; -margin-top:30px; -} - -.card{ -background:#1e293b; -padding:20px; -border-radius:10px; -} - -.os{ -padding:50px; -background:#1e293b; -} - -.badges span{ -margin:10px; -padding:10px 20px; -background:#334155; -border-radius:8px; -display:inline-block; -} - -footer{ -padding:20px; -} From 4200181b5f98bc435827ce0598c09d344d7aae82 Mon Sep 17 00:00:00 2001 From: Nikitasoni Date: Sun, 29 Mar 2026 16:08:40 +0530 Subject: [PATCH 6/6] Add snapshot tests for CLI help and list output --- tests/__snapshots__/output.test.js.snap | 150 ++++++++++++++++++++++++ tests/output.test.js | 15 +++ 2 files changed, 165 insertions(+) create mode 100644 tests/__snapshots__/output.test.js.snap create mode 100644 tests/output.test.js diff --git a/tests/__snapshots__/output.test.js.snap b/tests/__snapshots__/output.test.js.snap new file mode 100644 index 0000000..06b33d6 --- /dev/null +++ b/tests/__snapshots__/output.test.js.snap @@ -0,0 +1,150 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`CLI output snapshot tests CLI help output matches snapshot 1`] = ` +"Usage: dev-setup [options] + +Quickly install common developer tools on your system + +Options: + -V, --version output the version number + -y, --yes Skip prompts and install all tools automatically + --dry-run Show what would be installed without actually installing + --list List all available tools grouped by category and exit + --category Install only tools from a specific category + -h, --help display help for command +" +`; + +exports[`CLI output snapshot tests CLI list output matches snapshot 1`] = ` +" +╔══════════════════════════════════╗ +║ 🛠 dev-setup 🛠 ║ +║ Developer Environment Installer ║ +╚══════════════════════════════════╝ + v1.0.0 · https://github.com/YOUR_USERNAME/dev-setup + + ℹ All available tools: + + + 📦 CORE — Essential tools every developer needs from day one + ✔ Git  [windows, mac, ubuntu, kali] + The world's most widely used distributed version control system — tracks every change to your code across time. + ✔ GitHub CLI  [windows, mac, ubuntu, kali] + GitHub's official command-line tool — create PRs, review issues, clone repos, and manage releases without leaving your terminal. + ✔ curl  [windows, mac, ubuntu, kali] + A command-line HTTP client that transfers data to and from servers — the swiss army knife for testing APIs and downloading files. + ✔ wget  [windows, mac, ubuntu, kali] + A non-interactive network file downloader that supports HTTP, HTTPS, and FTP — great for downloading large files or entire websites. + + 📦 RUNTIME — Language runtimes and version managers + ✔ Node.js (LTS)  [windows, mac, ubuntu, kali] + A JavaScript runtime built on Chrome's V8 engine that lets you run JavaScript server-side — comes bundled with npm, the world's largest package registry. + ✔ NVM — Node Version Manager  [windows, mac, ubuntu, kali] + Lets you install and switch between multiple versions of Node.js on the same machine without conflicts. + ✔ Python 3  [windows, mac, ubuntu, kali] + A versatile, beginner-friendly programming language used in web development, data science, machine learning, scripting, and automation. + ✔ Java JDK 21 (LTS)  [windows, mac, ubuntu, kali] + Oracle's long-term-support Java Development Kit — provides the compiler, runtime, and standard library for building Java applications. + ✔ .NET SDK  [windows, mac, ubuntu, kali] + Microsoft's free, open-source, cross-platform framework for building web apps, desktop apps, mobile apps, games, and microservices with C# or F#. + ✔ Go (Golang)  [windows, mac, ubuntu, kali] + Google's statically typed, compiled language — famous for its simplicity, fast compilation, and built-in concurrency with goroutines. + ✔ Rust  [windows, mac, ubuntu, kali] + A systems programming language focused on memory safety, zero-cost abstractions, and fearless concurrency — no garbage collector required. + ✔ Ruby  [windows, mac, ubuntu, kali] + A dynamic, expressive, object-oriented scripting language famous for its clean syntax and developer happiness. + ✔ PHP 8  [windows, mac, ubuntu, kali] + A widely-used server-side scripting language that powers over 75% of the web — the backbone of WordPress, Laravel, and Symfony. + + 📦 IDE — Full-featured Integrated Development Environments + ✔ Visual Studio Code  [windows, mac, ubuntu, kali] + Microsoft's free, lightweight, enormously popular code editor with built-in Git, IntelliSense auto-complete, a debugger, and a huge extension marketplace. + ✔ IntelliJ IDEA Community  [windows, mac, ubuntu] + JetBrains' powerful Java and Kotlin IDE with deep code understanding, advanced refactoring tools, built-in Maven/Gradle support, and integrated debugging. + ✔ PyCharm Community  [windows, mac, ubuntu] + JetBrains' dedicated Python IDE with intelligent code completion, a built-in debugger, virtual environment management, and Django/Flask support. + ✔ WebStorm  [windows, mac, ubuntu] + JetBrains' JavaScript and TypeScript IDE with deep framework support for React, Vue, Angular, and Node.js — includes built-in linting and test runners. + + 📦 EDITOR — Lightweight terminal-based text editors + ✔ Vim  [windows, mac, ubuntu, kali] + The legendary terminal-based modal text editor — edit files at keyboard speed once you learn its motion commands. + ✔ Neovim  [windows, mac, ubuntu, kali] + A modernised, community-driven fork of Vim with Lua configuration, a built-in LSP client for code intelligence, async operations, and a rich plugin ecosystem. + + 📦 DEVOPS — Tools for containers, orchestration, and infrastructure + ✔ Docker  [windows, mac, ubuntu, kali] + A containerisation platform that packages your app and all its dependencies into a portable, isolated container that runs identically on any machine. + ✔ kubectl — Kubernetes CLI  [windows, mac, ubuntu, kali] + The command-line tool for controlling Kubernetes clusters — deploy apps, inspect pods, view logs, and manage cluster configuration from your terminal. + ✔ Terraform  [windows, mac, ubuntu, kali] + HashiCorp's Infrastructure as Code tool — define your entire cloud infrastructure in declarative config files and provision it with one command. + ✔ Ansible  [mac, ubuntu, kali] + An agentless IT automation tool that configures servers, deploys applications, and orchestrates multi-tier workflows using human-readable YAML playbooks. + + 📦 CLOUD — Cloud provider CLIs for AWS, GCP, and Azure + ✔ AWS CLI v2  [windows, mac, ubuntu, kali] + Amazon's official command-line interface for interacting with over 200 AWS services — manage S3, EC2, Lambda, RDS, and more from your terminal. + ✔ Google Cloud CLI  [windows, mac, ubuntu, kali] + Google's official CLI for interacting with GCP services — manage Compute Engine, Cloud Run, GKE, BigQuery, and more from the terminal. + ✔ Azure CLI  [windows, mac, ubuntu, kali] + Microsoft's command-line tool for managing Azure resources — deploy apps, manage VMs, configure networking, and automate Azure workflows. + + 📦 DATABASE — Database engines and management tools + ✔ MongoDB Community  [windows, mac, ubuntu, kali] + A leading NoSQL document database that stores data as flexible JSON-like BSON documents — scales horizontally and integrates naturally with JavaScript. + ✔ PostgreSQL  [windows, mac, ubuntu, kali] + A powerful, open-source relational database known for ACID compliance, advanced data types (JSON, arrays, UUID), full-text search, and excellent performance. + ✔ MySQL  [windows, mac, ubuntu, kali] + The world's most popular open-source relational database — fast, reliable, and the default database for LAMP/MAMP stacks, WordPress, and many legacy apps. + ✔ Redis  [mac, ubuntu, kali] + An in-memory key-value data store used as a cache, message broker, and session store — lightning-fast because all data lives in RAM. + + 📦 FRAMEWORK — Language frameworks and SDKs for building applications + ✔ Angular CLI (@angular/cli)  [windows, mac, ubuntu, kali] + The official command-line interface for Angular — scaffolds components, services, and modules, and runs the dev server, linter, and test runner with \`ng\` commands. + ✔ Create React App  [windows, mac, ubuntu, kali] + Facebook's official zero-config React scaffolder — sets up Webpack, Babel, ESLint, and Jest automatically so you can start building immediately. + ✔ Vite  [windows, mac, ubuntu, kali] + A next-generation front-end build tool that uses native ES modules for near-instant dev server startup and blazing-fast Hot Module Replacement. + ✔ Next.js (create-next-app)  [windows, mac, ubuntu, kali] + The React framework for production — adds server-side rendering, static site generation, file-based routing, image optimisation, and API routes on top of React. + ✔ Express.js  [windows, mac, ubuntu, kali] + The minimalist, unopinionated Node.js web framework — provides routing, middleware chaining, and HTTP utilities for building REST APIs and web servers. + ✔ Spring Boot CLI  [windows, mac, ubuntu, kali] + The command-line tool for bootstrapping and running Spring Boot applications — quickly scaffold new projects with chosen dependencies from your terminal. + ✔ Apache Maven  [windows, mac, ubuntu, kali] + Java's most widely used build automation and dependency management tool — defines project structure and third-party dependencies in a pom.xml file. + ✔ Gradle  [windows, mac, ubuntu, kali] + A flexible, fast build automation tool for Java, Kotlin, and Android projects — uses a Groovy or Kotlin DSL instead of verbose XML. + + 📦 CLI — Command-line utilities that improve your terminal workflow + ✔ Zsh (Z Shell)  [mac, ubuntu, kali] + An extended Bash-compatible shell with smarter tab completion, spelling correction, glob patterns, and a highly customisable prompt. + ✔ Oh My Zsh  [mac, ubuntu, kali] + A community-driven framework for managing Zsh configuration — includes 300+ plugins (git, docker, kubectl) and 150+ themes out of the box. + ✔ tmux — Terminal Multiplexer  [mac, ubuntu, kali] + Splits your terminal into multiple panes, lets you create named windows, and keeps sessions alive so they survive SSH disconnects. + ✔ htop  [mac, ubuntu, kali] + A colourful, interactive terminal process viewer showing CPU, memory, and process trees in real time — a massive upgrade over the plain \`top\` command. + ✔ jq — JSON Processor  [windows, mac, ubuntu, kali] + A lightweight, flexible command-line JSON processor — parse, filter, transform, and format JSON from API responses or log files with a simple query syntax. + ✔ Make  [mac, ubuntu, kali] + A classic Unix build automation tool that reads a Makefile to run named commands — widely used as a simple project task runner. + + 📦 TESTING — Testing frameworks and code quality tools + ✔ Jest  [windows, mac, ubuntu, kali] + Facebook's all-in-one JavaScript testing framework with a built-in test runner, assertion library, powerful mocking system, and code coverage reports. + ✔ pytest  [windows, mac, ubuntu, kali] + Python's most popular testing framework — discovers and runs tests automatically, supports clean assertions without boilerplate, and extends via 300+ plugins. + ✔ Postman  [windows, mac, ubuntu] + A GUI API platform for building, testing, documenting, and monitoring REST, GraphQL, and SOAP APIs — with a collection runner and JavaScript test scripting. + + 📦 MOBILE — SDKs and tools for iOS and Android development + ✔ Flutter SDK  [windows, mac, ubuntu] + Google's open-source UI toolkit for building natively compiled apps for mobile, web, and desktop from a single Dart codebase. + ✔ Android Studio  [windows, mac, ubuntu] + Google's official IDE for Android development — includes the Android SDK, AVD emulator, Layout Editor, APK analyser, and Gradle build system integration. + +" +`; diff --git a/tests/output.test.js b/tests/output.test.js new file mode 100644 index 0000000..a41fa47 --- /dev/null +++ b/tests/output.test.js @@ -0,0 +1,15 @@ +const { execSync } = require("child_process"); + +describe("CLI output snapshot tests", () => { + + test("CLI help output matches snapshot", () => { + const output = execSync("node index.js --help").toString(); + expect(output).toMatchSnapshot(); + }); + + test("CLI list output matches snapshot", () => { + const output = execSync("node index.js --list").toString(); + expect(output).toMatchSnapshot(); + }); + +}); \ No newline at end of file