Bear-Shell is a shell based in the terminal or command prompt.

Overview

Bear-Shell logo


What IS Bear-Shell?

Bear-Shell is a command-line based shell developed by Michael. This shell specializes in high efficiency and ease of use.

Quick Find

Why should I use Bear-Shell?

I do not expect Bear-Shell to be used for real life applications, as it requires python 3 to be ran. In the future, I will more than likely be adding things like running commands as root, cd'ing into directories, and lots more. As of right now, it basically has the bare minimum to be used as, technically an os. With the new addition of the ls, and pwd command, you can now navigate even inside of the terminal.

Running and installing

To run/install the shell, run the command: make start To uninstall the shell, run the command: make uninstall

Compatibility

As of now, Bear-Shell is compatible with Windows and Linux. No plans have been made to make Macintosh compatibility.

Known Unstable Branch Bugs

Right now, I am currently working on an updater so that a user doesnt have to clone the repo, cd into the directory, and all of that, but instead make an option for it in the menu. However, this has come with some bugs though. I'm currently having trouble installing the Github library so I can read files from a repo, which I need to check if the users current version is the same as the one in the repo. Make sure on startup you answer 'n' to the prompt when it asks you to install PyGitHub!!

Prerequisites

To use Bear-Shell, you'll need to install:

  • Python 3.*
  • Tkinter (pip3 install tk)
  • Curses (Go to here to install it.)
  • This goes into more depth on how to install it.
  • If you are on linux, curses is included with python and wont need to be installed.
  • Vim 8.2

Upcoming Ideas

I have many plans for this Shell. Right now, the biggest thing is the cd command, as it will allow you to stay inside of the Shell without having to leave to navigate to other folders.

Some other ideas:

  • Sudo
  • Cosmetics
  • Flavors?

By cosmetics I mean when typing a number in the menu for example, if the number is the same as one of the numbers on the screen, it will be green, but if it is one of the numbers that aren't listed in the menu, it will show as red.

By flavors I mean making new flavors of Bear-Shell, like Ubuntu is a flavor of Debian, and such.

Newest Updates

Disclaimer! Patches will not be shown here! This area is for big releases only! The fourth digit is for patches, and those are pretty much always bug fixes, so they wont be put here.
In the most recent update, version 1.3.3, I added the calculator, import verification, and better command handling for the root testing. Root testing is accessable by typing in the password, 'testing' and then once in the framework, type 'test' then you can test the one line commands, that are being tested. (e.g. 'ls /home' 'cd /home')

  • calculator: allows you to add, subtract, divide, and multiply two nums.
  • import verification: checks if the user has the correct libraries installed to run Bear-Shell
  • better command handling: allows for two word, and one word commands to work in the root testing.

I wanted to add this feature because I thought about Bear-Shell's whole point, which is to be fast, efficient, and easy. Which before this update, you had to manually install some of the libraries/packages. Which isn't very easy, and efficient, so I made it so that all the user has to do is start the shell. (e.g. via make)

Newest Patches

The newest patch is v1.3.3

The newest patch includes A LOT of things. Mostly just for debugging and some extra small things. In this patch, I added the frame to start on github branch changing, better import verficiation, a counter that counts missing imports, the ability to see what github branch you are using for your copy of the shell, the frame for the updater (allows user to update their ENTIRE bear-shell installation from the menu), and I fixed a bios bug.

Newest Framework Updates

This are the new Framework updates. The framework can be accessed by typing 'testing' in for the password in the login page. Then, type the command 'test' to be taken to the root test terminal

The newest framework patch/update is 13023a. This update adds vim support for windows and linux.

Newest Changes

This is just an area for what the most recent changes are, not updates or patches. In the most recent commit, I made less confusing version numbers. Previously, I was making the numbers have 4 digits, instead there should've only been 3. I figured this caused confusion, so I removed the 3rd number in the previous version numbers.

Older Updates

  • Ver 1.3.2.2 (Patch)
  • Ver 1.3.2.1
  • Ver 1.3.1.1
  • Ver 1.3.0.1
  • Ver 1.3.0
  • Ver 1.2.9
  • |
  • Ver 1.2.1
  • Ver 0.2.1
  • Ver 0.0.1

To see previous updates, you can go here, or you can run the shell and when in the menu, and go to the update log. (Hit 7 and then Enter)

Current Commands

The current commands that can be used in the included terminal are as listed:

  • root
  • python3
  • ls (When the prompt asks for the directory you want to look through, you can type 'ls' to view the contents of the current directory)
  • pwd
  • clear
  • exit
  • userinfo
  • cd
  • neofetch
  • apt-get
  • cat
  • git

Additional Resources Used:

(Text Editor, and Soon, Web Browser) Bear-Utils: Created by Michael

Everything else has been created by me, terminal, menu, etc.

Guide for Developers

If you're a dev looking to play around with this the developer mode passwords are:

  • 559907: Opens up to dev menu
  • 559908: Goes right to dev console

Framework Info

If you'd like to view to documentation for the framework included with Bear-Shell read the docs here.

Extras

Disclaimer: Updates come out randomly and aren't scheduled.

Updates will also be a little slow, as I suck at organizing my code, so it takes a while for me to find code, update and change things, but I will definitely still be pushing updates out as fast as possible.

If you'd like to contact me, shoot me a DM on discord at MicBearr#5816

You might also like...
 A super simple terminal command shortener 🐟
A super simple terminal command shortener 🐟

pcmd A super simple terminal command shortener 🐟 Source code : https://github.com/j0fiN/pcmd Documentation : https://j0fin.github.io/pcmd About Durin

Python3 library for multimedia functions at the command terminal
Python3 library for multimedia functions at the command terminal

TERMINEDIA This is a Python library allowing using a text-terminal as a low-resolution graphics output, along with keyboard realtime reading, and a co

A simple command line chat app to communicate via the terminal.

A simple command line chat app to communicate via the terminal. I'm new to networking so sorry if some of my terminology or code is messed up.

CLTools provides various tools and command to use in the terminal.
CLTools provides various tools and command to use in the terminal.

CLTools provides various tools and command to use in the terminal. As of date, CLTools is only able to generate temporary email addresses and receive emails. There are plans to integrate more tools and options in the future.

Booky - A command line utility for bookmarking files on your terminal!

Booky A command line utility for bookmarking files for quick access With it you can: Bookmark and delete your (aliases of) files at demand Launch them

Simple CLI prompt for easy I/O with OpenAI's API

openai-cli-prompt Simple CLI prompt for easy I/O with OpenAI's API Quickstart Create a .env file with: OPENAI_API_KEY=Your OpenAI API Key Configure

Yet another bash/zsh prompt script
Yet another bash/zsh prompt script

Here we have yet another script for Git-aware customization of the command prompt in Bash and zsh. Unlike all the other scripts, I wrote this one, so

CLabel is a terminal-based cluster labeling tool that allows you to explore text data interactively and label clusters based on reviewing that data.
CLabel is a terminal-based cluster labeling tool that allows you to explore text data interactively and label clusters based on reviewing that data.

CLabel is a terminal-based cluster labeling tool that allows you to explore text data interactively and label clusters based on reviewing that

A cd command that learns - easily navigate directories from the command line

NAME autojump - a faster way to navigate your filesystem DESCRIPTION autojump is a faster way to navigate your filesystem. It works by maintaining a d

Releases(v2.5.5)
Owner
MichaelBear
13 Year Old Programmer Boi
MichaelBear
Make tree planting a part of your daily workflow. 🌳

Continuous Reforestation Make tree planting a part of your daily workflow. 🌳 A GitHub Action for planting trees within your development workflow usin

protontypes 168 Dec 22, 2022
Terminal-based keyboard testing

kbdtest kbdtest is a simple Python program that tests keyboard input using an interactive, terminal-based, visual keyboard display. It was originally

Ruunyox 12 Jul 19, 2022
Pynavt is a cli tool to create clean architecture app for you including Fastapi, bcrypt and jwt.

Pynavt _____ _ | __ \ | | | |__) | _ _ __ __ ___ _| |_ | ___/ | | | '_ \ / _` \ \ / /

Alejandro Castillo 1 Dec 13, 2021
An easy-to-bundle GTK terminal emulator.

EasyTerm An easy-to-bundle GTK terminal emulator. This project is meant to be used as a dependency for other

Bottles 4 May 15, 2022
Dart Version Manager CLI implemented with Python and Typer.

Dart Version Manager CLI implemented with Python and Typer.

EducUp 6 Jun 26, 2022
Chat with Rem in Terminal!

Chat with Rem in Terminal!

bariscodefx 1 Dec 19, 2021
vimBrain is a brainfuck-based vim-inspired esoteric programming language.

vimBrain vimBrain is a brainfuck-based vim-inspired esoteric programming language. vimBrainPy Currently, the only interpreter available is written in

SalahDin Ahmed 3 May 08, 2022
Wordle-textual - Play Wordle from the CLI, using Textual

Wordle, playable from the CLI This project seeks to emulate Wordle in your shell

PhenoM4n4n 3 Mar 29, 2022
Python Processing Tool for Vasp Ipnut/Output

PivotPy A Python Processing Tool for Vasp Input/Output. A CLI is available in Powershell, see Vasp2Visual. stylea{text-decoration: none !important;c

Abdul Saboor 5 Aug 16, 2022
A library for creating text-based graphs in the terminal

tplot is a Python package for creating text-based graphs. Useful for visualizing data to the terminal or log files.

Jeroen Delcour 164 Dec 14, 2022
CLI tool to show the current crypto balance

CryptoBoard The simple python CLI tool for one currency to show the current crypto balance yours purchases. That's all. Data source is from https://ww

John 2 Nov 18, 2021
A dashboard for your Terminal written in the Python 3 language,

termDash is a handy little program, written in the Python 3 language, and is a small little dashboard for your terminal, designed to be a utility to help people, as well as helping new users get used

Rebecca White 2 Dec 03, 2021
Palm CLI - the tool-belt for data teams

Palm CLI: The extensible CLI at your fingertips Palm is a universal CLI developed to improve the life and work of data professionals. Palm CLI documen

Palmetto 41 Dec 12, 2022
A CLI messenger for the Signum community.

A CLI messenger for the Signum community. Built for people who like using terminal for their work and want to communicate with other users in the Signum community.

Jush 5 Mar 18, 2022
A helper program to play wordle

A helper program to play wordle

1 Jan 22, 2022
Ros command - Unifying the ROS command line tools

Unifying the ROS command line tools One impairment to ROS 2 adoption is that all

37 Dec 15, 2022
Dynamically Generate GitHub Stats as like Terminal Interface

GitHub Stats Terminal Style Dynamically Generate GitHub Stats as like Terminal Interface Usage Create a New Repository using this Template or click he

YOGESHWARAN R 63 Jan 03, 2023
A command-line tool to upload local files and pastebin pastes to your mega account, without signing in anywhere

A command-line tool to upload local files and pastebin pastes to your mega account, without signing in anywhere

ADI 4 Nov 17, 2022
A python Ethereum utilities command-line tool.

peth-cli A python Ethereum utilities command-line tool. After wasting the all day trying to install seth and failed, I took another day to write this.

Moon 55 Nov 15, 2022
CmdTube is a Python CLI library for searching, downloading, and watching YouTube tutorials

CmdTube is a Python CLI library for searching, downloading, and watching YouTube tutorials. This library was made with programmers in mind and it's dedicated to every programmer who watches YouTube v

Samuel Ayomide Ogunleke 2 Aug 22, 2022