[![Contributors][contributors-shield]][contributors-url]
[![Forks][forks-shield]][forks-url] [![Stargazers][stars-shield]][stars-url]
[![Issues][issues-shield]][issues-url]
[![MIT License][license-shield]][license-url]
[![Crates.io][crates-shield]][crates-url]

An open source, programmed in rust, privacy focused tool and crate for interacting with programming resources (like stackoverflow) fast, efficiently and asynchronously/parallel using the CLI or GUI.
<a href="https://github.com/Obscurely/falion/wiki"><strong>Explore the docs »</strong></a>
<a href="https://github.com/Obscurely/falion#-video-showcase">View Demo</a>
·
<a href="https://github.com/Obscurely/falion/issues">Report Bug</a>
·
<a href="https://github.com/Obscurely/falion/issues">Request Feature</a>
Table of Contents
-
About The Project
-
🏁 Getting Started
-
🪧 Usage
- 🗾 Road Map
- 💁 Contributing
- ❓ FAQ
- 📟 Semver
- 🔰 Security
- 🪪 License
- 📧 Contact
- 📄 Template
- 🦾 Acknowledgments
🪽 About The Project
Falion is creative open-source tool created in Rust with the aim of
improving programming resource interaction. It prioritizes privacy,
speed, and efficiency, targeting sources like StackOverflow,
GitHub Gists, and more.
The project aims to solve the challenges of accessing information quickly
and privately in the programming world, using DuckDuckGo for secure,
private search results. HTTPS-only connections & no JavaScript,
plain HTML.
Falion is lightning-fast and efficient, with asynchronous result
retrieval and parallel scraping. It takes only about 1-1.5 seconds to
obtain five results from each resource. Meaning, by the time you see the
results everything is already loaded and ready to be accessed.
It offers user-centric interfaces, including a Command Line Interface (CLI)
with VIM-like key bindings (where applicable) and a Graphical User Interface
(GUI).
Cross-platform support ensures that it runs on Linux, MacOS, and
Windows.
It can be used as a standalone tool or integrated into Rust projects as a
crate, enhancing development capabilities.
Key Highlights
Privacy First: It utilizes DuckDuckGo for results, stick to HTTPS-only
connections, and keep it tracker-free.
Blazing Speed: Thanks to asynchronous result retrieval and parallel
scraping, you get your answers in a snap.
User-Centric Interfaces: Choose between a VIM-like (where applicable) CLI or
a lightweight GUI for your preferred experience.
Cross-Platform: Works seamlessly on Linux, MacOS, and Windows.
No Rate Limitations: Browsing without interruptions under normal use.
Versatile: Use it as a stand-alone tool or integrate it as a crate into your
Rust projects.
Supported Resources
These are generic resources that work for most popular languages. In the future
there will be more added + custom resources support. Also
request resources here.
- StackOverflow is a programming Q&A website.
- StackExchange is a network of community-driven
Q&A websites.
- GitHub Gists are a platform for sharing and
collaborating on code snippets.
- GeeksForGeeks is an online learning platform
for computer science and programming.
- DuckDuckGo Results are just your normal results
rendered as text, not as nice as the above, as a last resort.
If you've got any questions please give the FAQ a check.
(back to top)
💡 Features
- [x] Interact with programming resources
- [x] StackOverflow - No need to say anything
- [x] StackExchange- index of different forums
- [x] Github Gists - for code snippets and guides
- [x] GeeksForGeeks - has various good programming resources
- [x] DuckDuckGo - just so you don't need to leave the program you also
have html versions of the basic results
- [x] Privacy focused
- [x] DuckDuckGo used for results
- [x] HTTPs only requests
- [x] Only fetches HTML, no unnecessary tracking
- [x] Incredibly fast and efficient
- [x] Results are retrieved asynchronously
- [x] Resources are scraped in parallel
- [x] Instantly view a page, by the time results appear the content is
already loaded
- [x] Takes about 1 second to 1 and a half to get the results (& content). 5
results each resource
- [x] Leverages rust's performance
- [x] Many optimizations done
- [x] Ligthweight on resources (GUI and CLI)
- [x] CLI interface
- [x] Fast and render optimized interface
- [x] VIM like key binds (where applicable)
- [x] Simple and intuitive
- [x] GUI interface
- [x] Ligthweight interface
- [x] Simple
- [x] Responsive
- [x] Cross-platform
- [x] Linux
- [x] MacOS
- [x] Windows
- [x] Doesn't get you rate limited, under normal use
- [x] Project can also be used as a crate
- [ ] Results are cached for up to 7 days
- [ ] Web UI
- [ ] Custom resources support
- [ ] Configurable
- [ ] Config file editable from the program
(back to top)
🎥 Video showcase
Showcase
(back to top)
🍔 Built with
(back to top)
The stock libraries and these awesome third-party ones
(back to top)
🏁 Getting Started
🏃 Running The Program
(back to top)
🪟 Windows
Portable EXE
- Go to the Releases Tab and
download the falion-windows.exe file (might have to click show all).
- Double click the exe you just downloaded and there you go the program works.
- Might wanna take a look at the Usage Tab if you don't understand
something about it.
- Also you might wanna make a desktop shortcut and one to place in the
start-menu
Installer
- Go to the Releases Tab and
download the falion-windows-installer.exe file (might have to click show
all).
- Double click the installer and go through it as you would with any other
installer.
- If you look now in the start menu (or on the desktop if you ticked create
desktop shortcut) you are gonna see a shortcut for falion, just run it like
any other program.
- Might wanna take a look at the Usage Tab if you don't understand
something about it.
(back to top)
🐧 Linux
⚠️ Dependencies: openssl, most likely already installed.
(back to top)
Portable Bin
- Go to the Releases Tab and
download the falion-linux file.
- Double click the bin you just downloaded and there you go the program works.
- Might wanna take a look at the Usage Tab if you don't understand
something about it.
- Also you might wanna download falion-linux.tar.gz file instead and extract
linux/desktop/falion.desktop to $HOME/.local/share/applications,
linux/desktop/icons to $HOME/.local/share/icons in order to have a start-menu
shortcut and falion to /usr/bin/.
AppImage
- Go to the Releases Tab and
download the falion-linux.AppImage file.
- Double click the AppImage you download and there you go the program just
works. You may want to install
AppImageLauncher if you
don't have it already, so when you start the AppImage you'll get a prompt
asking if you want to integrate and run it and if you do so it will appear
just as if you installed it.
- Might wanna take a look at the Usage Tab if you don't understand
something about it.
AUR
The PKGs are:
- falion-bin (for precompiled, it's the only one available since building in the
pkgbuild fails for some reason)
a. if you have an AUR manager (like
paru
or yay, which
you should)
- Just like with any other AUR pkg choose your prefered type and you can run
the following command for example.
shell
paru -Sy falion-bin
- Search for falion in your app launcher