Top Related Projects
aria2 is a lightweight multi-protocol & multi-source, cross platform download utility operated in command-line. It supports HTTP/HTTPS, FTP, SFTP, BitTorrent and Metalink.
Yet Another Aria2 Webui in pure HTML/CSS/Javascirpt
The aim for this project is to create the worlds best and hottest interface to interact with aria2. Very simple to use, just download and open index.html in any web browser.
Persepolis is a download manager written in Python.
Aria2 Pro | A perfect Aria2 Docker image | 更好用的 Aria2 Docker 容器镜像
Quick Overview
AriaNg is a modern web frontend for aria2, a lightweight multi-protocol & multi-source command-line download utility. It provides a user-friendly interface for managing downloads, with features like real-time updates, responsive design, and multi-language support.
Pros
- Easy to use and intuitive interface
- Supports multiple languages and themes
- Responsive design, works well on desktop and mobile devices
- No backend required, can connect directly to aria2 through JSON-RPC
Cons
- Requires aria2 to be installed and running separately
- Limited to features supported by aria2
- May require additional setup for remote access and security
Getting Started
- Ensure aria2 is installed and running with JSON-RPC enabled.
- Download the latest release of AriaNg from the GitHub repository.
- Extract the files and host them on a web server or open
index.html
directly in a browser. - Configure AriaNg to connect to your aria2 instance by entering the appropriate RPC URL, port, and secret token (if used) in the AriaNg settings.
Example aria2 command to enable JSON-RPC:
aria2c --enable-rpc --rpc-listen-all=true --rpc-allow-origin-all
Once set up, you can start using AriaNg to manage your downloads through the web interface.
Competitor Comparisons
aria2 is a lightweight multi-protocol & multi-source, cross platform download utility operated in command-line. It supports HTTP/HTTPS, FTP, SFTP, BitTorrent and Metalink.
Pros of aria2
- Core download engine with powerful functionality and high performance
- Supports a wide range of protocols including HTTP, HTTPS, FTP, BitTorrent, and Metalink
- Command-line interface allows for easy integration into scripts and automation
Cons of aria2
- Lacks a built-in graphical user interface
- Can be complex to set up and configure for new users
- Limited visual feedback on download progress without additional tools
Code Comparison
aria2 (C++):
void HttpSkipResponseHeader() {
status_ = RECV_BODY;
if (chunkedDecoding_) {
return;
}
auto contentLength = response_->getContentLength();
if (contentLength == 0) {
// ...
}
}
AriaNg (JavaScript):
(function () {
'use strict';
angular.module('ariaNg').factory('ariaNgCommonService', ['$location', '$timeout', 'ariaNgConstants', 'ariaNgLocalizationService', function ($location, $timeout, ariaNgConstants, ariaNgLocalizationService) {
return {
// ...
};
}]);
}());
Note: AriaNg is a web frontend for aria2, so the code comparison is not directly equivalent. AriaNg provides a user-friendly interface to interact with aria2's functionality.
Yet Another Aria2 Webui in pure HTML/CSS/Javascirpt
Pros of yaaw
- Lightweight and minimalistic interface
- Supports multiple languages out of the box
- Faster initial loading time due to simpler design
Cons of yaaw
- Less actively maintained (last update in 2017)
- Fewer features and customization options
- Limited mobile device support
Code Comparison
yaaw:
var aria2 = (function() {
var jsonrpc_interface, jsonrpc_path, jsonrpc_protocol;
var auth = null;
var request = function(method, params, success, error) {
// ... (implementation details)
};
// ... (more code)
})();
AriaNg:
(function () {
'use strict';
angular.module('ariaNg').factory('aria2RpcService', ['$q', '$timeout', 'ariaNgCommonService', 'ariaNgSettingService', 'ariaNgLogService', function ($q, $timeout, ariaNgCommonService, ariaNgSettingService, ariaNgLogService) {
var rpcUrl = ariaNgSettingService.getRpcUrl();
var secret = ariaNgSettingService.getRpcSecret();
// ... (more code)
}]);
})();
The code comparison shows that yaaw uses a more traditional JavaScript approach, while AriaNg utilizes AngularJS for its implementation. AriaNg's code structure suggests a more modular and maintainable design, which aligns with its more feature-rich and actively maintained nature.
The aim for this project is to create the worlds best and hottest interface to interact with aria2. Very simple to use, just download and open index.html in any web browser.
Pros of webui-aria2
- Simpler and more lightweight interface
- Easier to set up and run, with fewer dependencies
- Supports multiple languages out of the box
Cons of webui-aria2
- Less feature-rich compared to AriaNg
- Not as actively maintained, with fewer recent updates
- Limited customization options for the user interface
Code Comparison
AriaNg uses Angular for its frontend, while webui-aria2 uses jQuery. Here's a brief comparison:
AriaNg (Angular):
@Component({
selector: 'aria-ng',
templateUrl: './aria-ng.component.html',
styleUrls: ['./aria-ng.component.css']
})
export class AriaNgComponent implements OnInit {
// Component logic
}
webui-aria2 (jQuery):
$(document).ready(function() {
// jQuery-based logic
$('#download-form').submit(function(e) {
e.preventDefault();
// Handle form submission
});
});
Both projects aim to provide a web interface for aria2, but they differ in their approach and technology stack. AriaNg offers a more modern and feature-rich experience, while webui-aria2 provides a simpler and more lightweight alternative.
Persepolis is a download manager written in Python.
Pros of Persepolis
- Full-featured download manager with a graphical user interface
- Supports multiple protocols including HTTP, FTP, and BitTorrent
- Integrates with browsers via extensions for seamless download management
Cons of Persepolis
- Larger application size and resource footprint
- Requires installation and system dependencies
- Less focused on Aria2 integration compared to AriaNg
Code Comparison
AriaNg (HTML-based interface):
<div class="row">
<div class="col-md-12">
<div class="task-table" ng-class="{'draggable': isSupportDragTask()}">
<table class="table table-hover">
<!-- Task list table content -->
</table>
</div>
</div>
</div>
Persepolis (Python-based application):
def startAria(self):
try:
if not(self.aria2_path):
self.aria2_path = findAria2()
args = [self.aria2_path, '--no-conf',
'--enable-rpc', '--rpc-listen-all',
'--rpc-listen-port=' + str(self.port),
'--rpc-max-request-size=2M',
'--rpc-secret=' + self.aria2_secret]
# Additional configuration and startup logic
except Exception as e:
# Error handling
Summary
AriaNg is a lightweight, web-based frontend for Aria2, while Persepolis is a full-featured download manager with broader protocol support and a native GUI. AriaNg focuses on Aria2 integration, while Persepolis offers a more comprehensive download management solution at the cost of increased complexity and resource usage.
Aria2 Pro | A perfect Aria2 Docker image | 更好用的 Aria2 Docker 容器镜像
Pros of Aria2-Pro-Docker
- Comes pre-configured with optimized settings for better performance
- Includes additional features like auto-update and HTTPS support
- Easier to deploy and manage in containerized environments
Cons of Aria2-Pro-Docker
- Less flexible for users who want to customize their setup
- May have a larger footprint due to additional features
- Potentially more complex for users unfamiliar with Docker
Code Comparison
AriaNg (HTML-based configuration):
<aria-ng-setting option="maxConcurrentDownloads" default-value="5" min="1" max="16" required></aria-ng-setting>
Aria2-Pro-Docker (Docker-based configuration):
environment:
- PUID=1000
- PGID=1000
- RPC_SECRET=your_secret
- LISTEN_PORT=6888
Summary
AriaNg is a lightweight, web-based frontend for Aria2, offering flexibility and ease of use. Aria2-Pro-Docker, on the other hand, provides a more comprehensive solution with pre-configured optimizations and additional features, but may be less customizable. The choice between the two depends on the user's specific needs, Docker familiarity, and desired level of control over the configuration.
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
AriaNg
Introduction
AriaNg is a modern web frontend making aria2 easier to use. AriaNg is written in pure html & javascript, thus it does not need any compilers or runtime environment. You can just put AriaNg in your web server and open it in your browser. AriaNg uses responsive layout, and supports any desktop or mobile devices.
Features
- Pure Html & Javascript, no runtime required
- Responsive design, supporting desktop and mobile devices
- User-friendly interface
- Sort tasks (by name, size, progress, remaining time, download speed, etc.), files, bittorrent peers
- Search tasks
- Retry tasks
- Adjust task order by dragging
- More information of tasks (health percentage, client information of bt peers, etc.)
- Filter files by specified file types (videos, audios, pictures, documents, applications, archives, etc.) or file extensions
- Tree view for multi-directory task
- Download / upload speed chart for aria2 or single task
- Full support for aria2 settings
- Dark theme
- Url command line api support
- Download finished notification
- Multi-languages support
- Multi aria2 RPC host support
- Exporting and Importing settings support
- Less bandwidth usage, only requesting incremental data
Screenshots
Desktop
Mobile Device
Installation
AriaNg now provides three versions, standard version, all-in-one version and AriaNg Native. Standard version is suitable for deployment in the web server, and provides on-demand loading. All-In-One version is suitable for local using, and you can download it and just open the only html file in browser. AriaNg Native is also suitable for local using, and is no need for browser.
Prebuilt release
Latest Release: https://github.com/mayswind/AriaNg/releases
Latest Daily Build (Standard Version): https://github.com/mayswind/AriaNg-DailyBuild/archive/master.zip
Building from source
Make sure you have Node.js, NPM and Gulp installed. Then download the source code, and follow these steps.
Standard Version
$ npm install
$ gulp clean build
All-In-One Version
$ npm install
$ gulp clean build-bundle
The builds will be placed in the dist directory.
Usage Notes
Since AriaNg standard version loads language resources asynchronously, you may not open index.html directly on the local file system to run AriaNg. It is recommended that you can use the all-in-one version or deploy AriaNg in a web container or download AriaNg Native that does not require a browser to run.
Translating
Everyone is welcome to contribute translations. All translations files are put in /src/langs/
. You can just modify and commit a new pull request.
If you want to translate AriaNg to a new language, you can add language configuration to /src/scripts/config/languages.js
, then copy /i18n/en.sample.txt
to /src/langs/
and rename it to the language code to be translated, then you can start the translation work.
Documents
Demo
Please visit http://ariang.mayswind.net/latest
Third Party Extensions
There are some third-party applications based on AriaNg, so you can use AriaNg in more scenarios or devices. Please visit Third Party Extensions for more information.
License
Top Related Projects
aria2 is a lightweight multi-protocol & multi-source, cross platform download utility operated in command-line. It supports HTTP/HTTPS, FTP, SFTP, BitTorrent and Metalink.
Yet Another Aria2 Webui in pure HTML/CSS/Javascirpt
The aim for this project is to create the worlds best and hottest interface to interact with aria2. Very simple to use, just download and open index.html in any web browser.
Persepolis is a download manager written in Python.
Aria2 Pro | A perfect Aria2 Docker image | 更好用的 Aria2 Docker 容器镜像
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot