A fast and efficient website downloader written in Rust.
- 📥 Download HTML pages
- 📦 Download and organize assets (CSS, JS, Images)
- 🗂️ Automatic directory structure creation
- 🎯 URL path correction for local viewing
- 📊 Progress bar for asset downloads
- 🎨 Colorful terminal output
- ⚡ Fast and concurrent downloads
Make sure you have Rust installed, then run:
cargo build --release
# With arguments
./f2web -p Google -t https://google.com
# Or on Linux/Mac
./f2web -p Google -t https://google.com
Simply run the executable without arguments and it will ask for:
- Project name (folder name)
- Target URL
./f2web
-p, --project <PROJECT_NAME>
: Project name (folder name for downloaded files)-t, --target <URL>
: Target website URL to download-h, --help
: Show help information-V, --version
: Show version
-
Creates Project Structure: Sets up organized folders:
ProjectName/ ├── index.html ├── css/ ├── js/ ├── images/ └── assets/
-
Downloads Main Page: Fetches the HTML content from the target URL
-
Extracts Assets: Parses HTML to find:
- CSS stylesheets (
<link rel="stylesheet">
) - JavaScript files (
<script src="">
) - Images (
<img src="">
)
- CSS stylesheets (
-
Downloads Assets: Downloads all found assets with progress tracking
-
Processes HTML: Updates asset paths to point to local files
-
Saves Everything: Creates a local copy ready for offline viewing
# Download Google's homepage
./f2web -p Google -t https://google.com
# Download a website interactively
./f2web
📁 Enter project name: MyWebsite
🌐 Enter target URL: https://example.com
The tool will create a folder with your project name containing:
index.html
- The main page with corrected asset pathscss/
- All stylesheetsjs/
- All JavaScript filesimages/
- All images (PNG, JPG, GIF, SVG, WebP)assets/
- Other assets
Open source - feel free to use and modify!