Website-downloader is a web scraping tool that downloads complete website source code including all assets such as JavaScript files, stylesheets, and images using Node.js.
The tool solves the problem of capturing entire websites for offline viewing or archival purposes. It works by wrapping the wget command-line utility with configurable parameters that enable recursive downloading, convert links to relative paths for offline compatibility, download all page requisites like stylesheets and images, and adjust file extensions based on content type. The downloaded files are then compressed using an archiver and delivered to the user through a socket channel.
The project suits developers or users who need to preserve complete websites offline, create website backups, or analyze site structure comprehensively. It requires Node.js and wget to be installed on the system, with wget being a hard dependency since the application shells out to it. The tool provides optional configuration for download size limits and timeout thresholds, making it suitable for both local development and cloud deployment. The README includes one-click deployment buttons for multiple cloud providers, indicating it is designed for easy hosting.
Development activity shows consistent maintenance with bug reports being welcomed and pull requests encouraged as contributions. The project includes code quality monitoring through automated checks and provides clear documentation of requirements and setup steps.