https://github.com/mskrasnov/f
f is very simple and stupid file manager for UNIX-based OS. Written just for learning Rust and Linux, don't take the project as something serious. It's a common student shitcode.
https://github.com/mskrasnov/f
console file-manager files linux ratatui rust shit shitty-code unix
Last synced: about 1 year ago
JSON representation
f is very simple and stupid file manager for UNIX-based OS. Written just for learning Rust and Linux, don't take the project as something serious. It's a common student shitcode.
- Host: GitHub
- URL: https://github.com/mskrasnov/f
- Owner: mskrasnov
- License: mit
- Created: 2025-02-03T20:28:19.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2025-02-11T08:27:05.000Z (about 1 year ago)
- Last Synced: 2025-02-11T09:41:15.086Z (about 1 year ago)
- Topics: console, file-manager, files, linux, ratatui, rust, shit, shitty-code, unix
- Language: Rust
- Homepage:
- Size: 260 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# f
f - very simple, stupid (yet) and bloat console file manager for UNIX systems. Written just for learning Rust and Linux, don't take the project as something serious. It's a common student craft.

## Features
- [X] View directory contents, navigates beetwen directories;
- [X] Removing files;
- [ ] Copying files;
- [ ] Moving/renaming files;
- [ ] View information about file;
- [ ] Creating directories and files;
- [ ] Formatting disks (need `root` permissions);
- [X] Color schemes;
## Interface
The interface is divided into two panels: the first panel contains a list of files in the current directory, the second panel displays information about the file and the `f` file manager.
### Usage
**Hotkeys:**
- F8 - force delete file;
- Del - delete file to recycle bin;
- F10, q, й - exit `f`;
- ~ - go to the home directory (`~`);
- / - go to the root directory (`/`);
- . - show hidden files;
## Build & install
### Dependencies
- Rust toolchain (`rustc`, `cargo`);
- `git`;
- Bash or bash-compatible shell (`/bin/sh` must be a link to it);
### Local build
- Get the source code:
```bash
git clone https://github.com/mskrasnov/f/
cd f
```
- Build:
```bash
cargo build --release
```
- Install:
```bash
export F_BIN_DIR="$HOME/.local/bin/"
cp -v ./target/release/f $F_BIN_DIR
export PATH=$PATH:$F_BIN_DIR
```
## Technology stack
- **OS:** UNIX-like (for now there are only Linux builds; support for other UNIX-like OS depending on their support for rust stdlib and some other OS-specific libraries used in `f`);
- **Programming language:** Rust; POSIX Shell;
- **User interface:** TUI via [ratatui](https://ratatui.rs);
- **User languages:** English; Russian (coming soon) via `fluent`;
## License
`f` is distributed under the MIT license.