From 43c4542f4c4c6b36dc5a1ffd04af9846dfcf3f7a Mon Sep 17 00:00:00 2001 From: pwnwriter Date: Mon, 27 Mar 2023 16:08:57 +0545 Subject: [PATCH 01/10] Changed ascii + colors for banner --- src/ascii.rs | 14 +++++++++++--- src/main.rs | 2 +- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/src/ascii.rs b/src/ascii.rs index bae83cc..9fa9893 100644 --- a/src/ascii.rs +++ b/src/ascii.rs @@ -9,10 +9,18 @@ pub const BAR: &str = r" ──────────────────────────────── "; +//pub const HXN: &str = r" +//╦ ╦╔═╗╦ ╦╦ ═╗ ╦╔═╗╔╗╔ +//╠═╣╠═╣╚╦╝║ ╔╩╦╝║ ║║║║ +//╩ ╩╩ ╩ ╩ ╩═╝╩ ╚═╚═╝╝╚╝v0.1.1 +// Shoot before the blink  +// by @PwnWriter +//"; + pub const HXN: &str = r" -╦ ╦╔═╗╦ ╦╦ ═╗ ╦╔═╗╔╗╔ -╠═╣╠═╣╚╦╝║ ╔╩╦╝║ ║║║║ -╩ ╩╩ ╩ ╩ ╩═╝╩ ╚═╚═╝╝╚╝v0.1.1 +╦ ╦╔═╗╦ ╦╦ ╔═╗╔╗╔ +╠═╣╠═╣╚╦╝║ ║ ║║║║ +╩ ╩╩ ╩ ╩ ╩═╝𝖃╚═╝╝╚╝v0.1.2  Shoot before the blink  by @PwnWriter "; diff --git a/src/main.rs b/src/main.rs index fb70938..d930bb1 100644 --- a/src/main.rs +++ b/src/main.rs @@ -42,7 +42,7 @@ struct Cli { #[tokio::main] async fn main() -> Result<(), Box> { - println!("{RED}{}{RESET}", HXN); + println!("{CYAN}{}{RESET}", HXN); let cli = Cli::parse(); run(cli.url, Some(cli.outdir), cli.tabs) From fa7636a9ca5de9ebcfe6021d3825be6eb99e2e88 Mon Sep 17 00:00:00 2001 From: Nabeen Tiwaree Date: Mon, 27 Mar 2023 16:30:25 +0545 Subject: [PATCH 02/10] fixed typos --- README.md | 49 +++++++++++++++++++++++++------------------------ 1 file changed, 25 insertions(+), 24 deletions(-) diff --git a/README.md b/README.md index e9d4f59..5398dce 100644 --- a/README.md +++ b/README.md @@ -1,16 +1,16 @@ -binserve logo +binserve logo -# [`Haylxon`](https://github.com/bytehunt/haylxon) 🔥🦀 -`SHOOT BEFORE THE BLINK` || [`Haylxon`](https://github.com/bytehunt/haylxon/),  A tool embodying the [`K1SS`](https://en.wikipedia.org/wiki/KISS_principle) philosophy that allows you to take screenshots of web pages/URLs at lightning-fast speeds. +# [`Haylxon`](https://github.com/pwnwriter/haylxon) 🔥🦀 +`SHOOT BEFORE THE BLINK` || [`Haylxon`](https://github.com/pwnwriter/haylxon/),  A tool embodying the [`K1SS`](https://en.wikipedia.org/wiki/KISS_principle) philosophy that allows you to take screenshots of `webpages/URLs` at lightning-fast speeds. Built from the ground up for ease of use, performance, beautiful ui and portability in mind. 💖

-GitHub Release +GitHub Release Crate Release -MIT LICENSE -Twitter Share +MIT LICENSE +Twitter Share ![-----------------------------------------------------](https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/aqua.png) @@ -28,8 +28,8 @@ Built from the ground up for ease of use, performance, beautiful ui and portabil ## Features 🍙 -- **Fast**: [`Hxn`](https://github.com/bytehunt/haylxon) is designed to be fast, all credits goes to the [`rustlang`](https://rust-lang.org). 🦀 -- **Portable**: You can use [`haylxon`](https://github.com/bytehunt/haylxon/) on both [`Linux`](https://en.wikipedia.org/wiki/Linux) & [`windows`](https://en.wikipedia.org/wiki/Microsoft_Windows). +- **Fast**: [`Hxn`](https://github.com/pwnwriter/haylxon) is designed to be fast, all credits goes to the [`rustlang`](https://rust-lang.org). 🦀 +- **Portable**: You can use [`haylxon`](https://github.com/pwnwriter/haylxon/) on both [`Linux`](https://en.wikipedia.org/wiki/Linux) & [`windows`](https://en.wikipedia.org/wiki/Microsoft_Windows). - **Ease**: This tool is designed to be very user friendly as there are very few options but does all the required works that one expects.👨‍🎨 - **Simple**: As always [`Keeping It Simple and Stupid`](https://en.wikipedia.org/wiki/KISS_principle) 💋 @@ -37,10 +37,10 @@ Built from the ground up for ease of use, performance, beautiful ui and portabil ## Installation 📩 - **Binary**: - You can directly download [`binary`](https://github.com/bytehunt/haylxon/releases/) and run it. + You can directly download [`binary`](https://github.com/pwnwriter/haylxon/releases/) and run it. - **Source**: ```bash - $ git clone --depth=1 https://github.com/bytehunt/haylxon + $ git clone --depth=1 https://github.com/pwnwriter/haylxon $ cd haylxon $ cargo build --release ``` @@ -65,28 +65,28 @@ Built from the ground up for ease of use, performance, beautiful ui and portabil ## Hxn in action 🚀 -- Help menu - Hxn uses [`clap`](https://docs.rs/clap/latest/clap/) for argument parsing, no as expected clap gives a lot better help menu. The below is an ss of hxn's help menu `--help` flag. +- Help menu : + [`Hxn`](https://github.com/pwnwriter/haylxon) utilizes [`clap`](https://docs.rs/clap/latest/clap/) for argument parsing. As expected, `clap` provides a much-improved help menu. The screenshot below shows Hxn's help menu when the `--help` flag is used. -![](https://raw.githubusercontent.com/bytehunt/haylxon/showcase/help.png) +![](https://raw.githubusercontent.com/pwnwriter/haylxon/showcase/help.png) - Taking ss one/many urls.🖇️ - **It doesn't matter**, if you are parsing a `single url` or a `file` containing a list of `urls`, [`Hxn`](https://github.com/bytehunt/haylxon) will handle itself. You don't need to worry about other flags. + **It doesn't matter**, if you are parsing a `single url` or a `file` containing a list of `urls`, [`Hxn`](https://github.com/pwnwriter/haylxon) will handle itself. You don't need to worry about other flags. - **Single URL** ```bash $ hxn -u ``` - ![](https://raw.githubusercontent.com/bytehunt/haylxon/showcase/single.png) + ![](https://raw.githubusercontent.com/pwnwriter/haylxon/showcase/single.png) - **File containing more than one url**. 🖇️ ```bash $ hxn -u -t -u -o ``` - ![](https://raw.githubusercontent.com/bytehunt/haylxon/showcase/many.png) + ![](https://raw.githubusercontent.com/pwnwriter/haylxon/showcase/many.png) ![-----------------------------------------------------](https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/aqua.png) @@ -94,27 +94,27 @@ Built from the ground up for ease of use, performance, beautiful ui and portabil ## Benchmarking ⚡ - The below is a comparison between similar project [`gowitness`](https://github.com/sensepost/gowitness), tested on my [**pentium processor**](https://raw.githubusercontent.com/bytehunt/haylxon/showcase/conf.png). + The below is a comparison between similar project [`gowitness`](https://github.com/sensepost/gowitness), tested on my [**pentium processor**](https://raw.githubusercontent.com/pwnwriter/haylxon/showcase/conf.png). - ![](https://raw.githubusercontent.com/bytehunt/haylxon/showcase/benchmark.png) + ![](https://raw.githubusercontent.com/pwnwriter/haylxon/showcase/benchmark.png) ![-----------------------------------------------------](https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/aqua.png) ## Contribution 🥰 - There is always scope for improvements and bugs to be fixed as contributors can make a valuable impact by addressing improvements and bugs through [**issue**](https://github.com/bytehunt/haylxon/issues) submissions or [**pull requests**](https://github.com/bytehunt/haylxon/pulls). + There is always scope for improvements and bugs to be fixed as contributors can make a valuable impact by addressing improvements and bugs through [**issue**](https://github.com/pwnwriter/haylxon/issues) submissions or [**pull requests**](https://github.com/pwnwriter/haylxon/pulls). - - Still ways to contribute, + - Still, here are the ways to contribute, - Suggest a feature - Report a bug - Fix something and open a pull request - Help me document the code and more speed pleaseeeeeee. - - Spread the word [**`HAYLXON(hxn)`**](https://github.com/bytehunt/haylxon) 😎 + - Spread the word [**`HAYLXON(hxn)`**](https://github.com/pwnwriter/haylxon) 😎 ## License 🔐 - As always, this project is also Licensed unser the [**`MIT LICENSE`**](/LICENSE) + As always, this project is also Licensed under the [**`MIT LICENSE`**](/LICENSE) ## Thanks 🌹 @@ -125,10 +125,11 @@ Built from the ground up for ease of use, performance, beautiful ui and portabil - [`@catppuccin`](https://github.com/catppuccin) - [`@cute-ducky`](https://github.com/Cute-Ducky) // plan9boys. - [`@blast`](https://github.com/joshua-mo-143) - - and [**you**](https://github.com/bytehunt/haylxon/graphs/contributors) ❤️‍🩹 + - and [**you**](https://github.com/pwnwriter/haylxon/graphs/contributors) ❤️‍🩹 Similar projects : [`gowitness`](https://github.com/sensepost/gowitness), [`eyewitness`](https://github.com/FortyNorthSecurity/EyeWitness)

-

Copyright © 2023 bytehunt io ☘️ +

Copyright © 2023 pwnwriter ☘️ + From 54816bfd80721690507f81c826f9027f4c2aaad4 Mon Sep 17 00:00:00 2001 From: pwnwriter Date: Mon, 27 Mar 2023 21:40:15 +0545 Subject: [PATCH 03/10] update readme + logos --- README.md | 3 +-- src/ascii.rs | 15 --------------- src/main.rs | 7 ++++++- 3 files changed, 7 insertions(+), 18 deletions(-) diff --git a/README.md b/README.md index 5398dce..6b17558 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -binserve logo +binserve logo # [`Haylxon`](https://github.com/pwnwriter/haylxon) 🔥🦀 `SHOOT BEFORE THE BLINK` || [`Haylxon`](https://github.com/pwnwriter/haylxon/),  A tool embodying the [`K1SS`](https://en.wikipedia.org/wiki/KISS_principle) philosophy that allows you to take screenshots of `webpages/URLs` at lightning-fast speeds. @@ -132,4 +132,3 @@ Built from the ground up for ease of use, performance, beautiful ui and portabil

Copyright © 2023 pwnwriter ☘️ - diff --git a/src/ascii.rs b/src/ascii.rs index 9fa9893..3b026c0 100644 --- a/src/ascii.rs +++ b/src/ascii.rs @@ -1,22 +1,7 @@ -//pub const HYALCON: &str = r" -//╦ ╦┌─┐┬ ┬┬ ┌─┐┌─┐┌┐┌ -//╠═╣├─┤└┬┘│ │ │ ││││ -//╩ ╩┴ ┴ ┴ ┴─┘└─┘└─┘┘└┘v1.0.0 -// by @pwnwriter -//"; - pub const BAR: &str = r" ──────────────────────────────── "; -//pub const HXN: &str = r" -//╦ ╦╔═╗╦ ╦╦ ═╗ ╦╔═╗╔╗╔ -//╠═╣╠═╣╚╦╝║ ╔╩╦╝║ ║║║║ -//╩ ╩╩ ╩ ╩ ╩═╝╩ ╚═╚═╝╝╚╝v0.1.1 -// Shoot before the blink  -// by @PwnWriter -//"; - pub const HXN: &str = r" ╦ ╦╔═╗╦ ╦╦ ╔═╗╔╗╔ ╠═╣╠═╣╚╦╝║ ║ ║║║║ diff --git a/src/main.rs b/src/main.rs index d930bb1..580d0a9 100644 --- a/src/main.rs +++ b/src/main.rs @@ -38,6 +38,9 @@ struct Cli { #[arg(short, long, default_value = "4")] /// Maximum number of parallel tabs tabs: Option, + + #[arg(short, long, default_value = "/usr/bin/chrome")] + binary_path: String, } #[tokio::main] @@ -45,7 +48,7 @@ async fn main() -> Result<(), Box> { println!("{CYAN}{}{RESET}", HXN); let cli = Cli::parse(); - run(cli.url, Some(cli.outdir), cli.tabs) + run(cli.url, Some(cli.outdir), cli.tabs, cli.binary_path) .await .expect("An error occurred while running :("); @@ -56,6 +59,7 @@ async fn run( url: String, outdir: Option, tabs: Option, + binary_path: String, ) -> Result<(), Box> { let outdir = match outdir { Some(dir) => dir, @@ -66,6 +70,7 @@ async fn run( BrowserConfig::builder() .no_sandbox() .window_size(1440, 900) + .chrome_executable(Path::new(&binary_path)) .viewport(Viewport { width: 1440, height: 900, From 21d2b3b48cb66c7e4c47f6462eb66b07e01ff26e Mon Sep 17 00:00:00 2001 From: pwnwriter Date: Mon, 27 Mar 2023 22:36:43 +0545 Subject: [PATCH 04/10] panic code --- src/ascii.rs | 4 ++-- src/main.rs | 26 +++++++++++++++++++------- 2 files changed, 21 insertions(+), 9 deletions(-) diff --git a/src/ascii.rs b/src/ascii.rs index 3b026c0..9357c3d 100644 --- a/src/ascii.rs +++ b/src/ascii.rs @@ -4,8 +4,8 @@ pub const BAR: &str = r" pub const HXN: &str = r" ╦ ╦╔═╗╦ ╦╦ ╔═╗╔╗╔ -╠═╣╠═╣╚╦╝║ ║ ║║║║ -╩ ╩╩ ╩ ╩ ╩═╝𝖃╚═╝╝╚╝v0.1.2 +╠═╣╠═╣╚╦╝║ 𝖃║ ║║║║ +╩ ╩╩ ╩ ╩ ╩═╝ ╚═╝╝╚╝v0.1.2  Shoot before the blink  by @PwnWriter "; diff --git a/src/main.rs b/src/main.rs index 580d0a9..c4e5d7f 100644 --- a/src/main.rs +++ b/src/main.rs @@ -40,40 +40,52 @@ struct Cli { tabs: Option, #[arg(short, long, default_value = "/usr/bin/chrome")] + /// Browser binary path binary_path: String, -} + #[arg(long, default_value = "1440")] + /// Width of the website // URL + width: Option, + + #[arg(long, default_value = "900")] + /// Height of the website // URL + height: Option, +} #[tokio::main] async fn main() -> Result<(), Box> { println!("{CYAN}{}{RESET}", HXN); let cli = Cli::parse(); - run(cli.url, Some(cli.outdir), cli.tabs, cli.binary_path) + run(cli.url, Some(cli.outdir), cli.tabs, cli.binary_path, cli.width, cli.height) .await .expect("An error occurred while running :("); Ok(()) } - async fn run( url: String, outdir: Option, tabs: Option, binary_path: String, + width: Option, + height: Option, ) -> Result<(), Box> { let outdir = match outdir { Some(dir) => dir, None => "hxnshots".to_string(), }; + let viewport_width = width.unwrap_or(1440); + let viewport_height = height.unwrap_or(900); + let (browser, mut handler) = Browser::launch( BrowserConfig::builder() .no_sandbox() - .window_size(1440, 900) + .window_size(viewport_width, viewport_height) .chrome_executable(Path::new(&binary_path)) .viewport(Viewport { - width: 1440, - height: 900, + width: viewport_width, + height: viewport_height, device_scale_factor: None, emulating_mobile: false, is_landscape: false, @@ -82,7 +94,7 @@ async fn run( .build()?, ) .await?; - + let _handle = tokio::task::spawn(async move { loop { let _ = handler.next().await; From eeb55ba367c9d070728d9f37ba2511d9c346a6ee Mon Sep 17 00:00:00 2001 From: pwnwriter Date: Tue, 28 Mar 2023 08:46:54 +0545 Subject: [PATCH 05/10] testing silent,width,height options --- src/main.rs | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/main.rs b/src/main.rs index c4e5d7f..de2b5fe 100644 --- a/src/main.rs +++ b/src/main.rs @@ -50,13 +50,16 @@ struct Cli { #[arg(long, default_value = "900")] /// Height of the website // URL height: Option, + #[arg(long)] + /// Silent mode (suppress all console output) + silent: bool, } #[tokio::main] async fn main() -> Result<(), Box> { println!("{CYAN}{}{RESET}", HXN); let cli = Cli::parse(); - run(cli.url, Some(cli.outdir), cli.tabs, cli.binary_path, cli.width, cli.height) + run(cli.url, Some(cli.outdir), cli.tabs, cli.binary_path, cli.width, cli.height, cli.silent) .await .expect("An error occurred while running :("); @@ -69,6 +72,8 @@ async fn run( binary_path: String, width: Option, height: Option, + silent: bool, + ) -> Result<(), Box> { let outdir = match outdir { Some(dir) => dir, @@ -145,6 +150,13 @@ async fn run( .expect("Something went wrong while waiting for taking screenshot and saving to file"); } + + if !silent { + println!( + "{} {GREEN}Haylxon - Screenshot Utility{RESET} {}", + BAR, BAR)} + + println!("{RED} {GREEN} {YELLOW_BRIGHT}Thanks for using Haylxon {RED} {GREEN}{RESET}"); Ok(()) From 2483b0249a04d6a344e541a1ca7e2e3c62142900 Mon Sep 17 00:00:00 2001 From: pwnwriter Date: Tue, 28 Mar 2023 14:39:04 +0545 Subject: [PATCH 06/10] [ bump ]: v0.1.2 // improved code quality // add: Silent option --- src/main.rs | 41 +++++++++++++++++++++++------------------ 1 file changed, 23 insertions(+), 18 deletions(-) diff --git a/src/main.rs b/src/main.rs index de2b5fe..1b2386c 100644 --- a/src/main.rs +++ b/src/main.rs @@ -46,9 +46,9 @@ struct Cli { #[arg(long, default_value = "1440")] /// Width of the website // URL width: Option, - + #[arg(long, default_value = "900")] - /// Height of the website // URL + /// Height of the website // URL height: Option, #[arg(long)] /// Silent mode (suppress all console output) @@ -56,12 +56,22 @@ struct Cli { } #[tokio::main] async fn main() -> Result<(), Box> { - println!("{CYAN}{}{RESET}", HXN); let cli = Cli::parse(); + if !cli.silent { + println!("{CYAN}{}{RESET}", HXN); + } - run(cli.url, Some(cli.outdir), cli.tabs, cli.binary_path, cli.width, cli.height, cli.silent) - .await - .expect("An error occurred while running :("); + run( + cli.url, + Some(cli.outdir), + cli.tabs, + cli.binary_path, + cli.width, + cli.height, + cli.silent, + ) + .await + .expect("An error occurred while running :("); Ok(()) } @@ -73,7 +83,6 @@ async fn run( width: Option, height: Option, silent: bool, - ) -> Result<(), Box> { let outdir = match outdir { Some(dir) => dir, @@ -99,7 +108,7 @@ async fn run( .build()?, ) .await?; - + let _handle = tokio::task::spawn(async move { loop { let _ = handler.next().await; @@ -140,7 +149,7 @@ async fn run( for chunk in url_chunks { let n_tab = browser.new_page("about:blank").await?; - let h = tokio::spawn(take_screenshots(n_tab, chunk)); + let h = tokio::spawn(take_screenshots(n_tab, chunk, silent)); handles.push(h); } @@ -150,14 +159,7 @@ async fn run( .expect("Something went wrong while waiting for taking screenshot and saving to file"); } - - if !silent { - println!( - "{} {GREEN}Haylxon - Screenshot Utility{RESET} {}", - BAR, BAR)} - - - println!("{RED} {GREEN} {YELLOW_BRIGHT}Thanks for using Haylxon {RED} {GREEN}{RESET}"); + println!("{RED}♥ {GREEN} {YELLOW_BRIGHT}Yoo 1337!! Screenshots saved in dir {outdir}{RED} ♥ {GREEN}{RESET} "); Ok(()) } @@ -165,6 +167,7 @@ async fn run( async fn take_screenshots( page: Page, urls: Vec, + silent: bool, ) -> Result<(), Box> { for url in urls { let url = url.as_str(); @@ -195,7 +198,9 @@ async fn take_screenshots( ]) .set_tabsize(0) .make_columns(); - println!("{_info}"); + if !silent { + println!("{_info}"); + } } else { println!("{RED}[-] Timed out URL={YELLOW}{}", url); } From 4975dfce9a086ddde69637ac5d8fa41f71ecc930 Mon Sep 17 00:00:00 2001 From: pwnwriter Date: Tue, 28 Mar 2023 16:29:48 +0545 Subject: [PATCH 07/10] =?UTF-8?q?[=20beautify=20]:=20formating=20?= =?UTF-8?q?=F0=9F=92=85=20code=20with=20rustfmt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main.rs | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/src/main.rs b/src/main.rs index 1b2386c..6ae8873 100644 --- a/src/main.rs +++ b/src/main.rs @@ -56,11 +56,8 @@ struct Cli { } #[tokio::main] async fn main() -> Result<(), Box> { + println!("{CYAN}{}{RESET}", HXN); let cli = Cli::parse(); - if !cli.silent { - println!("{CYAN}{}{RESET}", HXN); - } - run( cli.url, Some(cli.outdir), @@ -188,12 +185,12 @@ async fn take_screenshots( format!("{RESET}").split('\n').collect::>(), vec![ &format!("{BLUE}{BAR}"), - &format!("{GREEN}[{CYAN}  {GREEN}] URL={GREEN}{}", url), + &format!("{GREEN}[{CYAN}  {GREEN}] URL={GREEN}{}", url), &format!( - "{BLUE}[{CYAN}  {YELLOW}] Title={GREEN}{}", + "{BLUE}[{CYAN}  {YELLOW}] Title={GREEN}{}", page.get_title().await?.unwrap_or_default() ), - &format!("{BLUE}[{CYAN}  {YELLOW}] Status={GREEN}{}", _res.status()), + &format!("{BLUE}[{CYAN} ﯜ {YELLOW}] Status={GREEN}{}", _res.status()), ], ]) .set_tabsize(0) From 9473a9da3eba0cf14ee0ea26803f9245c999aa30 Mon Sep 17 00:00:00 2001 From: pwnwriter Date: Tue, 28 Mar 2023 16:37:32 +0545 Subject: [PATCH 08/10] =?UTF-8?q?[=20bump=20]:=20v0.1.2=20=F0=9F=9A=80=20/?= =?UTF-8?q?/=20(features)=20silent,width,height=20//=20comments?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Cargo.toml | 4 ++-- src/ascii.rs | 2 +- src/colors.rs | 6 ++++-- src/main.rs | 3 +-- 4 files changed, 8 insertions(+), 7 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index f66250c..d3e9de5 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "hxn" -version = "0.1.1" +version = "0.1.2" edition = "2021" authors = [ "PwnWriter < hey@pwnwriter.xyz >" ] description = "Blazingly fast tool to grab screenshots of url/webpages from terminal." @@ -9,7 +9,7 @@ repository = "https://github.com/bytehunt/haylxon" homepage = "https://github.com/bytehunt/haylxon.git" license = "MIT" keywords = ["screenshots", "bug-bounty", "recon", "pwn", "OSINT" ] -categories = ["accessibility", "command-line-utility", "CLI" ] +categories = ["accessibility", "web-programming", "command-line" ] # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html diff --git a/src/ascii.rs b/src/ascii.rs index 9357c3d..8be98ea 100644 --- a/src/ascii.rs +++ b/src/ascii.rs @@ -6,6 +6,6 @@ pub const HXN: &str = r" ╦ ╦╔═╗╦ ╦╦ ╔═╗╔╗╔ ╠═╣╠═╣╚╦╝║ 𝖃║ ║║║║ ╩ ╩╩ ╩ ╩ ╩═╝ ╚═╝╝╚╝v0.1.2 - Shoot before the blink  + Shoot before the blink  by @PwnWriter "; diff --git a/src/colors.rs b/src/colors.rs index 839aefd..97d0eb3 100644 --- a/src/colors.rs +++ b/src/colors.rs @@ -4,9 +4,11 @@ pub const CYAN: &str = "\x1b[36m"; //( bright, light blue-green color) pub const GREEN: &str = "\x1b[32m"; //( bright, medium green color) pub const BLUE: &str = "\x1b[34m"; //( bright, medium blue color) - //pub const WHITE: &str = "\x1B[37m"; //( bright, pale gray color) pub const RED: &str = "\x1b[31m"; //( bright, medium red color) pub const YELLOW: &str = "\x1B[32m"; //( bright, medium yellow color) - //pub const MAGENTAA: &str = "\x1b[35m"; //( bright, medium pinkish-purple color) pub const YELLOW_BRIGHT: &str = "\x1B[93m"; //( very bright, light yellow color) pub const RESET: &str = "\x1B[0m"; //( resets the text color to the default) + +// unused colors rn :- + //pub const MAGENTAA: &str = "\x1b[35m"; //( bright, medium pinkish-purple color) + //pub const WHITE: &str = "\x1B[37m"; //( bright, pale gray color) diff --git a/src/main.rs b/src/main.rs index 6ae8873..c770827 100644 --- a/src/main.rs +++ b/src/main.rs @@ -169,7 +169,6 @@ async fn take_screenshots( for url in urls { let url = url.as_str(); if let Ok(Ok(_res)) = timeout(Duration::from_secs(10), get(url)).await { - // Thanks to swanandx for this let filename = url.replace("://", "-").replace('/', "_") + ".png"; page.goto(url) .await? @@ -199,7 +198,7 @@ async fn take_screenshots( println!("{_info}"); } } else { - println!("{RED}[-] Timed out URL={YELLOW}{}", url); + println!("{RED}[-] Timed out URL = {YELLOW}{}", url); } } From 31c297329df006affab0acdf35590c3b3fb4dc26 Mon Sep 17 00:00:00 2001 From: Nabeen Tiwaree Date: Tue, 28 Mar 2023 16:57:55 +0545 Subject: [PATCH 09/10] k --- README.md | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 6b17558..a3775d4 100644 --- a/README.md +++ b/README.md @@ -66,20 +66,24 @@ Built from the ground up for ease of use, performance, beautiful ui and portabil ## Hxn in action 🚀 - Help menu : - [`Hxn`](https://github.com/pwnwriter/haylxon) utilizes [`clap`](https://docs.rs/clap/latest/clap/) for argument parsing. As expected, `clap` provides a much-improved help menu. The screenshot below shows Hxn's help menu when the `--help` flag is used. + [`Hxn`](https://github.com/pwnwriter/haylxon) utilizes [`clap`](https://docs.rs/clap/latest/clap/) for argument parsing. As expected, `clap` provides a much-improved help menu. The screenshot below shows Hxn's help menu when the `-h` flag is used. -![](https://raw.githubusercontent.com/pwnwriter/haylxon/showcase/help.png) + > use `--help` for full menu. + + ![](https://raw.githubusercontent.com/pwnwriter/haylxon/showcase/v0.1.2/help.png) - - Taking ss one/many urls.🖇️ + - Taking screenshots of one/many urls.🖇️ **It doesn't matter**, if you are parsing a `single url` or a `file` containing a list of `urls`, [`Hxn`](https://github.com/pwnwriter/haylxon) will handle itself. You don't need to worry about other flags. - - - **Single URL** + + `v0.1.2` has an option to define `browser binary` [`#pr`](https://github.com/pwnwriter/haylxon/pull/8), by default it uses `/usr/bin/chrome`. + + - **Single URL** ```bash - $ hxn -u + $ hxn -b $(which ) -u ``` - ![](https://raw.githubusercontent.com/pwnwriter/haylxon/showcase/single.png) + ![](https://raw.githubusercontent.com/pwnwriter/haylxon/showcase/v0.1.2/single.png) - **File containing more than one url**. 🖇️ ```bash From fd7528e6ecdd1150701535bf77ce28d041f03b23 Mon Sep 17 00:00:00 2001 From: Nabeen Tiwaree Date: Tue, 28 Mar 2023 17:16:53 +0545 Subject: [PATCH 10/10] =?UTF-8?q?update:=20docs=20=F0=9F=93=96=20=20//=20?= =?UTF-8?q?=20v0.1.2=20imgs?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index a3775d4..597f736 100644 --- a/README.md +++ b/README.md @@ -40,7 +40,7 @@ Built from the ground up for ease of use, performance, beautiful ui and portabil You can directly download [`binary`](https://github.com/pwnwriter/haylxon/releases/) and run it. - **Source**: ```bash - $ git clone --depth=1 https://github.com/pwnwriter/haylxon + $ git clone --depth=1 https://github.com/pwnwriter/haylxon --branch=main $ cd haylxon $ cargo build --release ``` @@ -87,13 +87,22 @@ Built from the ground up for ease of use, performance, beautiful ui and portabil - **File containing more than one url**. 🖇️ ```bash - $ hxn -u -t -u -o + $ hxn -b -t -u -o ``` - ![](https://raw.githubusercontent.com/pwnwriter/haylxon/showcase/many.png) + ![](https://raw.githubusercontent.com/pwnwriter/haylxon/showcase/v0.1.2/many.png) ![-----------------------------------------------------](https://raw.githubusercontent.com/andreasbm/readme/master/assets/lines/aqua.png) + - **Define x/y** 🐣 + The latest release has an option to set `height`, `width` and `--silent` option. + + ```bash + $ hxn --height --width --silent -url + ``` + + ![](https://raw.githubusercontent.com/pwnwriter/haylxon/showcase/v0.1.2/feature.png) + @@ -134,5 +143,5 @@ Built from the ground up for ease of use, performance, beautiful ui and portabil Similar projects : [`gowitness`](https://github.com/sensepost/gowitness), [`eyewitness`](https://github.com/FortyNorthSecurity/EyeWitness)

-

Copyright © 2023 pwnwriter ☘️ +

Copyright © 2023 pwnwriter xyz ☘️