Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/matthew-matvei/freeman
A free, extensible, cross-platform file manager for power users
https://github.com/matthew-matvei/freeman
electron filemanager minimalist pty typescript xterm
Last synced: 3 months ago
JSON representation
A free, extensible, cross-platform file manager for power users
- Host: GitHub
- URL: https://github.com/matthew-matvei/freeman
- Owner: matthew-matvei
- License: gpl-3.0
- Archived: true
- Created: 2017-11-11T17:36:42.000Z (about 7 years ago)
- Default Branch: develop
- Last Pushed: 2020-10-01T01:24:58.000Z (over 4 years ago)
- Last Synced: 2024-08-02T02:14:27.446Z (6 months ago)
- Topics: electron, filemanager, minimalist, pty, typescript, xterm
- Language: TypeScript
- Size: 2.14 MB
- Stars: 291
- Watchers: 20
- Forks: 39
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- Contributing: .github/CONTRIBUTING.md
- License: LICENSE
- Code of conduct: .github/CODE_OF_CONDUCT.md
Awesome Lists containing this project
- awesome-starred - matthew-matvei/freeman - A free, extensible, cross-platform file manager for power users (electron)
- awesome-electron-zh - FreeMAN - File manager for power users. (Apps / Open Source)
- awesomeelectron - FreeMAN - File manager for power users. (Apps / Open Source)
README
# FreeMAN
[![Travis-CI build status](https://travis-ci.org/matthew-matvei/freeman.svg?branch=develop)](https://travis-ci.org/matthew-matvei/freeman)
[![AppVeyor build status](https://ci.appveyor.com/api/projects/status/a919pf573a0tv0fg/branch/develop?svg=true)](https://ci.appveyor.com/project/matthew-matvei/freeman)
[![Dependencies](https://david-dm.org/matthew-matvei/freeman.svg)](https://david-dm.org/matthew-matvei/freeman)
[![Dev Dependencies](https://david-dm.org/matthew-matvei/freeman/dev-status.svg)](https://david-dm.org/matthew-matvei/freeman#info=devDependencies)
[![Maintainability](https://api.codeclimate.com/v1/badges/962d19a24fb074a1df39/maintainability)](https://codeclimate.com/github/matthew-matvei/freeman/maintainability)
[![First contributions welcome](http://img.shields.io/badge/first--contributions-welcome-green.svg?style=flat-square)](.github/CONTRIBUTING.md)A free, extensible, cross-platform file manager for power users
---
![FreeMAN with open integrated terminal](./resources/using-the-app.gif)
## Features
* Quick, clean, dual-paned file-system navigation with a strong keyboard-led
focus
* Integrated terminal per navigation pane for those things a file explorer just
can't do
* Focus on customisability to tailor it to the user's whims
* Quick navigation with a *Go To* box### Future
* Tighter integration between navigation and integrated terminals
* Further behaviour to be customisable
* Extending usefulness of the *Go To* and *Commands* boxes## Roadmap
* Core application ready for beta use
* Out-of-the-box plugins ready for beta use
* Core application ready for production use
* Out-of-the-box plugins ready for production useThe core application is ready for beta use, supporting Linux and Windows OS's. Feel free to set up
`electron-builder` for MacOS and make a PR.## Getting started
npm install
npm startIf you want, you can add user-specific settings files, e.g. `freeman.keys.json`
like so:touch {userData}/freeman.keys.json
`{userData}` above refers to Electron's `app.getPath("userData")` location, *(which
depends on whether the application is running in a development or production
environment)*. Example files can be found in the `./resources/` folder.## Packaging
If you would like to package / install the program, on Windows and Linux you can:
npm run package
Then run the appropriate built executable.
## Running
During development, after compiling you can:
npm run start
After packaging, you can run the system-dependent executable outputted by
`electron-builder` in the `./dist/` folder.## Developing
An overview of the codebase can be found in the [docs](docs/CODE_STRUCTURE.md).
If you find it helpful, you can `npm run docs` and open the generated
`docs/generated/index.html` file. Please let me know if you find this useful.## Debugging
Providing the `--verbose` or `-V` command-line argument will make the application
log in more detail, helping trace execution when using the packaged app. Logs of
warnings and errors can be found at `{appData}/log.log`.## How to contribute
Contributions are welcome! Work on the core application is still under way. There are
numerous areas with room for improvement in usability and stability. My
priorities for development are currently:* Core functionality
* Plugin functionality (starting with out-of-the-box ones)
* AppearanceI'll take whatever pull requests, issues, contributors and PMs I can get! Please
have a look at the [Contributing Guidelines](./.github/CONTRIBUTING.md) before
submitting a PR.