{"id":22733013,"url":"https://github.com/atharva-naik/figui","last_synced_at":"2025-04-14T01:53:56.630Z","repository":{"id":116081175,"uuid":"402095675","full_name":"atharva-naik/FigUI","owner":"atharva-naik","description":"FIG: Fig Is a Gui. As the acronym states, FIG is indeed a GUI.","archived":false,"fork":false,"pushed_at":"2021-12-18T06:57:29.000Z","size":30742,"stargazers_count":5,"open_issues_count":0,"forks_count":7,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-14T01:53:46.801Z","etag":null,"topics":["codemirror","css","html","javascript","linux-desktop-app","pyqt5","pyqt5-desktop-application","python","toast-ui-image-editor"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/atharva-naik.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-09-01T14:42:51.000Z","updated_at":"2023-08-20T17:00:59.000Z","dependencies_parsed_at":null,"dependency_job_id":"8d98a5ed-f1df-4097-b7bf-4c2cd2f41a1b","html_url":"https://github.com/atharva-naik/FigUI","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/atharva-naik%2FFigUI","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/atharva-naik%2FFigUI/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/atharva-naik%2FFigUI/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/atharva-naik%2FFigUI/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/atharva-naik","download_url":"https://codeload.github.com/atharva-naik/FigUI/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248809032,"owners_count":21164895,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["codemirror","css","html","javascript","linux-desktop-app","pyqt5","pyqt5-desktop-application","python","toast-ui-image-editor"],"created_at":"2024-12-10T20:12:35.902Z","updated_at":"2025-04-14T01:53:56.613Z","avatar_url":"https://github.com/atharva-naik.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# FigUI: The pythonic file UI\n\nThe aim of FigUI is to provide a single desktop application to view, edit, process and convert various file types - images, videos, audio files, 3D model files, binary files, log files, code files, pdf, excel, ppt files etc. You get the picture :P . This is just a passion project and don't expect this to be a replacement for gnome apps, VSCode or VLC :|\n\n## File formats to be supported:\n\n1) **Text:** (txt, md, rst, log)\n2) **Code:** (most coding languages: think python, Javascript, C, C++, Java, Perl, Ruby, anything code mirror can highlight :P, JSON, JSONL, pickle files, github flavored markdown, html, css, scss, less etc.)\n3) **Audio:** (mp3, wav, ogg etc.)\n4) **Document:** ppt/ CSVs\n5) **Image:** (still images formats such as png, jpg, svg (technically they are more like html files though :P), ico, bmp etc. as well as more dynamic formats such as gif)\n6) **Video:** (mp4, mov, webm etc.)\n7) **Archives:** (zip, 7zip etc)\n\n## Credits to some really great JS and Python repos/code snippets:\nSome of the many stack overflow answers, github repos and \n(This list is incomplete I keep adding to it periodically, however since the repo is highly unstable and I am constantly changing up stuff, if your code was used, but you weren't credited, please let me know)\n\n1. [rolling selector](https://codepen.io/Shikkediel/pen/qpjGyq)\n2. [toast-ui image editor](https://ui.toast.com/tui-image-editor)\n\n## Attributions for icons \n**coming soon!**\nFor now, see: [attributions.md](FigUI/assets/attributions.md)\n\n## Screenshots of the UI:\n\n1) App Launcher\n![App Launcher](screenshots/launcher.png?raw=true \"App Launcher\")\n2) File Viewer\n![File Viewer](screenshots/file-viewer1.png?raw=true \"File Viewer 1\")\n\u003c!-- ![File Viewer 2](screenshots/file-viewer2.png?raw=true \"File Viewer 2\")\n![File Viewer 3](screenshots/file-viewer3.png?raw=true \"File Viewer 3\")\n![File Viewer 4](screenshots/file-viewer4.png?raw=true \"File Viewer 4\")\n![File Viewer 5](screenshots/file-viewer5.png?raw=true \"File Viewer 5\")\n![File Viewer 6](screenshots/file-viewer6.png?raw=true \"File Viewer 6\")\n![File Viewer 7](screenshots/file-viewer7.png?raw=true \"File Viewer 7\")\n![File Viewer 8](screenshots/file-viewer8.png?raw=true \"File Viewer 8\") --\u003e\n3) Bashrc Editor\n![Bashrc Editor](screenshots/bashrc-editor.png?raw=true \"Bashrc Editor\")\n4) Code Editor\n![Code Editor](screenshots/code-editor.png?raw=true \"Code Editor\")\n5) Image Viewer\n![Image Viewer](screenshots/image-viewer.png?raw=true \"Image Viewer\")\n6) Image Editor\n![Image Editor](screenshots/image-editor.png?raw=true \"Image Editor\")\n7) File Formats \n![File Formats](screenshots/file-formats.png?raw=true \"File Formats\")\n8) PDF Reader\n![PDF Reader](screenshots/pdf-reader.png?raw=true \"PDF Reader\")\n9) Pickle Viewer\n![Pickle Viewer](screenshots/pickle-viewer.png?raw=true \"Pickle Viewer\")\n10) Text Editor\n![Text Editor](screenshots/text-editor.png?raw=true \"Text Editor\")\n11) Embedded xterm Emulator\n![Embedded xterm Emulator](screenshots/embedded-xterm.png?raw=true \"Embedded xterm Emulator\")\n12) File Explorer Sidebar\n![Hierarchical file explorer sidebar](screenshots/file-explorer-sidebar.png?raw=true \"Hierarchical file explorer sidebar\")\n13) Licence Generator\n![License generator](screenshots/license-generator.png?raw=true \"License generator\")\n14) Task Viewer\n![Task Viewer: horizontal mode](screenshots/task-view.png?raw=true \"Task Viewer: horizontal mode\")\n![Task Viewer: vertical mode](screenshots/task-view-alternate.png?raw=true \"Task Viewer: vertical mode\")\n15) Clock\n![Clock](screenshots/clock.png?raw=true \"clock\")\n16) Embedded Chromium Browser\n![Browser](screenshots/embedded-chromium-browser.png?raw=true \"Browser\")\n\n\n## How to install\nInstallation instructions for fig.\n\n### From source (only way available currently)\n1) clone the repository: ```git clone https://github.com/atharva-naik/FigUI ```\n2) Install dependencies ``` pip install -r requirements.txt ```\n\n### Setting up fig as a desktop application\n1) Modify python shebang in main.py: \u003cbr\u003e\nChange the ```#!/home/atharva/anaconda3/envs/figui/bin/python``` to ```#!\u003cyour_python_path\u003e```, where your_python_path is the output of the command ```which python```.\n2) [change nautilus settings](https://stackoverflow.com/questions/22262073/execute-python-script-from-linux-desktop/26439671) to allow running of main.py python script from the launcher sidebar.\n\u003c!-- ## Package Structure\nhandler -\u003e Modality -\u003e ext -\u003e [formatter, highlighter, linter, parser, processor, AI, editor, widgets] \nsubSystem -\u003e storage // storage management APIs (for files and databases)\nsubSystem -\u003e system -\u003e [camera, gpu, cpu, battery, display, time, logging]\nutils \nsubSystem -\u003e Auth\nsubSystem -\u003e Email\nsubSystem -\u003e [Chat, VidCall]\nsubSystem -\u003e Browser\nsubsystem -\u003e PassMan\nsubsystem -\u003e WinMan\nsubSystem -\u003e Scrape\nsubSystem -\u003e API\nFigUI\n```\n.\n├── basic.ics\n├── datetime.pkl\n├── example.feature\n├── FigUI\n│   ├── assets\n│   │   ├── attributions.md\n│   │   ├── fonts\n│   │   │   ├── OMORI_GAME2.ttf\n│   │   │   └── OMORI_GAME.ttf\n│   │   ├── icons\n│   │   │   ├── back.svg\n│   │   │   ├── blockview.svg\n│   │   │   ├── bookmark.svg\n│   │   │   ├── bottombar\n│   │   │   ├── browser\n│   │   │   ├── case-sensitive.svg\n│   │   │   ├── close.svg\n│   │   │   ├── copy.svg\n│   │   │   ├── cut.svg\n│   │   │   ├── decrypt.svg\n│   │   │   ├── delete.svg\n│   │   │   ├── email.svg\n│   │   │   ├── encrypt.svg\n│   │   │   ├── file_share.svg\n│   │   │   ├── forward.svg\n│   │   │   ├── hide.svg\n│   │   │   ├── launcher\n│   │   │   ├── launcher.png\n│   │   │   ├── listview.svg\n│   │   │   ├── logo.png\n│   │   │   ├── maximize.svg\n│   │   │   ├── minimize.svg\n│   │   │   ├── new_file.svg\n│   │   │   ├── new_folder.svg\n│   │   │   ├── open_in_terminal.svg\n│   │   │   ├── open.svg\n│   │   │   ├── paste.svg\n│   │   │   ├── permissions.svg\n│   │   │   ├── pizza.gif\n│   │   │   ├── properties.svg\n│   │   │   ├── redo.svg\n│   │   │   ├── regex_search.svg\n│   │   │   ├── rename.svg\n│   │   │   ├── search.svg\n│   │   │   ├── sidebar\n│   │   │   ├── sort_ascending.svg\n│   │   │   ├── sort_descending.svg\n│   │   │   ├── stepback.svg\n│   │   │   ├── sysbar\n│   │   │   ├── undo.svg\n│   │   │   ├── unhide.svg\n│   │   │   ├── user_permissions.svg\n│   │   │   ├── whole-word.svg\n│   │   │   └── zip.svg\n│   │   └── icons_license.pdf\n│   ├── conf\n│   │   └── theme.json\n│   ├── handler\n│   │   ├── Archives\n│   │   │   ├── pkl.py\n│   │   │   ├── pt.py\n│   │   │   ├── __pycache__\n│   │   │   └── zip.py\n│   │   ├── Audio\n│   │   │   ├── aiff\n│   │   │   ├── mp3\n│   │   │   ├── ogg\n│   │   │   └── wav\n│   │   ├── Code\n│   │   │   ├── bashrc.py\n│   │   │   ├── c\n│   │   │   ├── cpp\n│   │   │   ├── css\n│   │   │   ├── html\n│   │   │   ├── __init__.py\n│   │   │   ├── java\n│   │   │   ├── js\n│   │   │   ├── LICENSE\n│   │   │   ├── py\n│   │   │   ├── __pycache__\n│   │   │   ├── QtColorPicker\n│   │   │   ├── scala\n│   │   │   └── static\n│   │   ├── Document\n│   │   │   ├── csv\n│   │   │   ├── doc\n│   │   │   ├── pdf\n│   │   │   ├── ppt\n│   │   │   └── xls\n│   │   ├── Image\n│   │   │   ├── bmp\n│   │   │   ├── convert.py\n│   │   │   ├── gif\n│   │   │   ├── ico\n│   │   │   ├── __init__.py\n│   │   │   ├── jpg\n│   │   │   ├── png\n│   │   │   ├── __pycache__\n│   │   │   ├── static\n│   │   │   ├── svg\n│   │   │   └── tiff\n│   │   ├── __init__.py\n│   │   ├── __pycache__\n│   │   │   └── __init__.cpython-37.pyc\n│   │   ├── Text\n│   │   │   ├── log\n│   │   │   ├── md\n│   │   │   ├── rst\n│   │   │   └── txt\n│   │   └── Video\n│   │       ├── __init__.py\n│   │       ├── mov\n│   │       ├── mp4\n│   │       ├── __pycache__\n│   │       ├── static\n│   │       └── webm\n│   ├── __pycache__\n│   │   └── utils.cpython-37.pyc\n│   ├── subSystem\n│   │   ├── Calendar\n│   │   │   ├── __init__.py\n│   │   │   └── static\n│   │   ├── Chat\n│   │   ├── Email\n│   │   ├── News\n│   │   ├── PassMan\n│   │   ├── __pycache__\n│   │   │   └── Shell.cpython-37.pyc\n│   │   ├── Scrape\n│   │   ├── Shell.py\n│   │   ├── system\n│   │   │   ├── brightness.py\n│   │   │   └── __pycache__\n│   │   └── Weather\n│   ├── utils.py\n│   └── widgets\n│       ├── DELETE.py\n│       ├── FileViewer.py\n│       ├── Launcher.py\n│       ├── __pycache__\n│       │   ├── FileViewer.cpython-37.pyc\n│       │   ├── Launcher.cpython-37.pyc\n│       │   ├── Tab.cpython-37.pyc\n│       │   ├── Tabs.cpython-37.pyc\n│       │   ├── Theme.cpython-37.pyc\n│       │   └── Window.cpython-37.pyc\n│       ├── Tab.py\n│       ├── Theme.py\n│       ├── Toolbar.py\n│       └── Window.py\n├── FigUI.desktop\n├── figui_wallpaper_1631225129.6073387.jpg\n├── gay.sass\n├── hello.ts\n├── LICENSE\n├── logo.png\n├── logs\n│   └── 10_Sep_2021_04_41_53.log\n├── main.py\n├── pickle.pkl\n├── pom.xml\n├── README.md\n├── requirements.txt\n└── TODO\n\n74 directories, 90 files\n``` --\u003e","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fatharva-naik%2Ffigui","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fatharva-naik%2Ffigui","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fatharva-naik%2Ffigui/lists"}