MCPcopy Index your code
hub / github.com/Obscurely/falion

github.com/Obscurely/falion @v1.0.3-stable

Chat with this repo
repository ↗ · DeepWiki ↗ · release v1.0.3-stable ↗ · + Follow
98 symbols 253 edges 31 files 18 documented · 18%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

[![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]

Logo

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

  1. About The Project
  2. 🏁 Getting Started
  3. 🪧 Usage
  4. 🗾 Road Map
  5. 💁 Contributing
  6. ❓ FAQ
  7. 📟 Semver
  8. 🔰 Security
  9. 🪪 License
  10. 📧 Contact
  11. 📄 Template
  12. 🦾 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

Platform Versions
Windows 7 and above
Linux Anything really
MacOS 10.15 and above
All Platforms All the above

(back to top)


🪟 Windows

Portable EXE

  1. Go to the Releases Tab and download the falion-windows.exe file (might have to click show all).
  2. Double click the exe you just downloaded and there you go the program works.
  3. Might wanna take a look at the Usage Tab if you don't understand something about it.
  4. Also you might wanna make a desktop shortcut and one to place in the start-menu

Installer

  1. Go to the Releases Tab and download the falion-windows-installer.exe file (might have to click show all).
  2. Double click the installer and go through it as you would with any other installer.
  3. 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.
  4. 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

  1. Go to the Releases Tab and download the falion-linux file.
  2. Double click the bin you just downloaded and there you go the program works.
  3. Might wanna take a look at the Usage Tab if you don't understand something about it.
  4. 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

  1. Go to the Releases Tab and download the falion-linux.AppImage file.
  2. 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.
  3. 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)

  1. 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

  1. Search for falion in your app launcher

Core symbols most depended-on inside this repo

client_with_special_settings
called by 19
src/search/util.rs
get_ui
called by 18
src/ui/util.rs
slint_event_loop_panic
called by 15
src/ui/util.rs
redisplay_result
called by 12
src/ui/results/display.rs
clear_terminal
called by 9
src/cli/util.rs
clean
called by 7
src/cli/util.rs
get_links
called by 6
src/search/ddg.rs
try_up_index
called by 6
src/ui/results/index.rs

Shape

Function 53
Method 30
Class 8
Enum 7

Languages

Rust95%
Python3%
Ruby2%

Modules by API surface

src/search/stackoverflow.rs9 symbols
src/search/stackexchange.rs9 symbols
src/search/github_gist.rs9 symbols
src/search/geeksforgeeks.rs9 symbols
src/search/ddg_search.rs9 symbols
src/search/ddg.rs9 symbols
src/search/util.rs4 symbols
src/cli/util.rs4 symbols
src/util.rs3 symbols
src/ui/results/mod.rs3 symbols
src/ui/results/index.rs3 symbols
src/cli/print.rs3 symbols

For agents

$ claude mcp add falion \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact