{"id":23922534,"url":"https://github.com/prakash-aryan/bashcanvas","last_synced_at":"2026-04-12T18:33:19.744Z","repository":{"id":254073117,"uuid":"843671825","full_name":"prakash-aryan/bashcanvas","owner":"prakash-aryan","description":"BashCanvas is a custom bash profile manager that allows you to switch between different themed terminal environments easily. It provides a more personalized and enjoyable command-line experience with visually appealing prompts and useful functions.","archived":false,"fork":false,"pushed_at":"2024-08-21T07:31:41.000Z","size":27,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-05T17:14:27.318Z","etag":null,"topics":["bash","bash-script","debian","terminal","ubuntu"],"latest_commit_sha":null,"homepage":"","language":"Shell","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/prakash-aryan.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":"2024-08-17T04:24:16.000Z","updated_at":"2024-09-04T13:37:29.000Z","dependencies_parsed_at":"2024-08-21T08:45:08.644Z","dependency_job_id":"b238bfa2-55bf-4e1d-8d0e-47749da8b537","html_url":"https://github.com/prakash-aryan/bashcanvas","commit_stats":null,"previous_names":["prakash-aryan/bashcanvas"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prakash-aryan%2Fbashcanvas","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prakash-aryan%2Fbashcanvas/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prakash-aryan%2Fbashcanvas/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prakash-aryan%2Fbashcanvas/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/prakash-aryan","download_url":"https://codeload.github.com/prakash-aryan/bashcanvas/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240386755,"owners_count":19793232,"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":["bash","bash-script","debian","terminal","ubuntu"],"created_at":"2025-01-05T17:14:40.319Z","updated_at":"2025-11-14T18:03:05.842Z","avatar_url":"https://github.com/prakash-aryan.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# BashCanvas\n\nBashCanvas is a custom bash profile manager that allows you to switch between different themed terminal environments easily. It provides a more personalized and enjoyable command-line experience with visually appealing prompts and useful functions.\n\n## Features\n\n- Multiple themed profiles (Cosmic Explorer, Cyberpunk Hacker, Oceanic Dream)\n- Easy switching between profiles using a GUI\n- Customizable prompts with Git integration\n- Themed ASCII art and animations\n\n## Screenshots\n\n### Cosmic Explorer\n![Screenshot from 2024-08-21 11-12-46](https://github.com/user-attachments/assets/f199f5f7-3dce-44eb-a18d-652c6c971988)\n\n### Cyberpunk Hacker\n![Screenshot from 2024-08-21 11-13-12](https://github.com/user-attachments/assets/9bf3171b-3c37-4a27-9eca-1caf37b4f897)\n\n### Forest Dweller\n![Screenshot from 2024-08-21 11-15-12](https://github.com/user-attachments/assets/557750b2-983e-4ee1-8290-7e06491736de)\n\n### Oceanic Dream\n![Screenshot from 2024-08-21 11-13-43](https://github.com/user-attachments/assets/86425c90-d6de-47d8-99db-ca82f87fba75)\n\n\n## Installation\n\n1. Clone the repository:\n   ```bash\n   git clone https://github.com/prakash-aryan/bashcanvas.git ~/BashCanvas\n   ```\n\n2. Install the required package:\n   ```bash\n   sudo apt install libncurses-dev\n   ```\n\n3. Make the scripts executable:\n   ```bash\n   chmod +x ~/BashCanvas/*.sh ~/BashCanvas/profiles/*.sh\n   ```\n\n4. Edit your `~/.bashrc` file:\n   ```bash\n   nano ~/.bashrc\n   ```\n   Add the following at the end of the file:\n   ```bash\n   # BashCanvas Profile Loading\n   if [ -f \"$HOME/.current_profile\" ]; then\n       current_profile=$(cat \"$HOME/.current_profile\")\n       profile_file=\"$HOME/BashCanvas/profiles/${current_profile}.sh\"\n       if [ -f \"$profile_file\" ]; then\n           source \"$profile_file\"\n       fi\n   fi\n   ```\n\n5. Source your `.bashrc`:\n   ```bash\n   source ~/.bashrc\n   ```\n\n## Usage\n\n1. Navigate to the BashCanvas directory:\n   ```bash\n   cd ~/BashCanvas\n   ```\n\n2. Compile the GUI:\n   ```bash\n   gcc -o bashcanvas_gui bashcanvas_gui.c -lncurses\n   ```\n\n3. Run the GUI:\n   ```bash\n   ./bashcanvas_gui\n   ```\n\n4. Use the arrow keys to navigate, Enter to select a profile, and 'q' to quit.\n\n5. After selecting a profile, open a new terminal or source your `.bashrc` for the changes to take effect:\n   ```bash\n   source ~/.bashrc\n   ```\n   and open a new terminal to see the changes\n\n## Uninstallation\n\nTo remove BashCanvas and its settings:\n\n1. Remove the BashCanvas directory:\n   ```bash\n   rm -rf ~/BashCanvas\n   ```\n\n2. Edit your `~/.bashrc` file:\n   ```bash\n   nano ~/.bashrc\n   ```\n   Remove the BashCanvas Profile Loading block.\n\n3. Remove the current profile file:\n   ```bash\n   rm ~/.current_profile\n   ```\n\n4. Source your `.bashrc` to apply changes:\n   ```bash\n   source ~/.bashrc\n   ```\n   and open a new terminal to see the changes\n\n## Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request.\n\n## License\n\nThis project is licensed under the GNU General Public License v3.0 - see the [LICENSE](LICENSE) file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprakash-aryan%2Fbashcanvas","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fprakash-aryan%2Fbashcanvas","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprakash-aryan%2Fbashcanvas/lists"}