@igor.dvlpr/aria
v2.3.1
Published
🧬 Meet Aria, an efficient Adblock filter list compiler, with many features that make your maintenance of Adblock filter lists a breeze! 🦖
Downloads
7
Maintainers
Readme
Aria 🪅
Adblock template (ADBT
) compiler
🕵🏼♂️ Install
Install it by executing:
Global install
npm i -g "@igor.dvlpr/aria"
Local install
npm i "@igor.dvlpr/aria"
🤹🏼♂️ Usage
💡 This file only documents Aria CLI
-related API.
You should read the official ADBT API documentation for more information on how ADBT works, its syntax and usage.
🪄 Arguments
<None>
File
Compile the input ADBT template file.
Short: -f
Long: --file
Accepts: path: string
Required: yes
Example
aria -f './my-template.adbt'
💡 Template files should end with the
.adbt
extension.
Root
Set the root directory (CWD).
Short: -r
Long: --root
Accepts: path: string
Required: no
Example
aria -f './my-template.adbt' --root 'D:\my-filter'
💡 Useful when passing an absolute template path or when working from a directory that's not the directory where the template file is stored.
Versioning
The versioning to use, can be:
auto
: default, letAria
decide which versioning system to use.
If the resulting file already exists, i.e.Aria
already compiled the template before, it will re-use the versioning found in the file, otherwise it will usesemver
,semver
: use valid SemVer versioning when exporting the filter file, e.g.v1.0.0
,v2.199.222
, etc.
If no version is found the counting starts withv1.0.0
,timestamp
: use current UNIX timestamp, e.g.1690409508
.
Short: -v
Long: --versioning
Accepts: auto
, semver
, timestamp
Required: no
Example
aria -f './my-template.adbt' -v semver
ℹ️ Versioning in Adblock filters
Take this snippet from my AdVoid filter list:
! Title: AdVoid.Core
! Description: ✈ AdVoid is an efficient AdBlock filter that blocks ads! 👾
! Version: 1.8.1082
Aria
takes care of the versioning, the last line you see in the snippet above - so you don't have to!
❗When using SemVer as the versioning system,
Aria
will always increase only thepatch
component of the version.
🪅 Flags
Dry
Do a dry-run and print the resulting AST.
Short: -d
Long: --dry
Accepts: N/A
Required: no
Example
aria -f './my-template.adbt' -d
💡 The template will not be compiled;
Aria
will only print out the log.
❗ If you want to both compile and print the log, then use the
log
flag.
Tree
Will print the resulting AST.
Short: -t
Long: --tree
Accepts: N/A
Required: no
Example
aria -f './my-template.adbt' -t
💡 This will compile and print out the resulting AST.
🤔 What is AST?
In computer science, an abstract syntax tree (AST), or just syntax tree, is a tree representation of the abstract syntactic structure of text (often source code) written in a formal language. Each node of the tree denotes a construct occurring in the text. – Wikipedia
Log
Enable compilation logging.
Short: -l
Long: --log
Accepts: N/A
Required: no
Example
aria -f './my-template.adbt' -l
💡 The template will be compiled and
Aria
will log while compiling.
❗ If you only want to do a dry-run and don't compile the template, then use the
dry
flag.
Help
Show the welcome + help screen.
Short: -h
Long: --help
Accepts: N/A
Required: no
Example
aria --help
💡 This flag works the same as calling
aria
on its own - with 0 arguments.
📝 Changelog
✨ Changelog is available here: CHANGELOG.md.
🪪 License
Licensed under the MIT license which is available here, MIT license.
🧬 Related
📜 Provides ADBT (Adblock template) support in Visual Studio Code. 🪅
@igor.dvlpr/adblock-filter-counter
🐲 A dead simple npm module that counts Adblock filter rules.🦘
🎡 Parse, manage, compare and output SemVer-compatible version numbers. 🧮
💊 NormalizedString provides you with a String type with consistent line-endings, guaranteed. 📮
🐌 Zing is a C# style String formatter for JavaScript that empowers Strings with positional arguments. 🚀
✈ AdVoid is an efficient AdBlock filter that blocks ads, trackers, malware and a lot more if you want it to! 👾
Provided by Igor Dimitrijević (@igorskyflyer).