<h1 align="center">
    <img src="https://github.com/tomlin7/Biscuit/assets/70792552/0ea8e958-92de-4659-b1c9-ab5a72f05d7d" width=500><br>
    <a href=https://github.com/tomlin7/Biscuit/actions/workflows/nightly.yml> 
        <img src="https://img.shields.io/github/actions/workflow/status/tomlin7/biscuit/nightly.yml?style=for-the-badge"> 
    </a> 
    <img alt="Project License" src="https://img.shields.io/github/license/tomlin7/Biscuit?style=for-the-badge"> 
    <a href=https://github.com/tomlin7/Biscuit/releases> 
        <img alt="Download Latest" src="https://img.shields.io/github/v/release/tomlin7/biscuit?style=for-the-badge"> 
    </a>
    <img alt="GitHub closed pull requests" src="https://img.shields.io/github/issues-pr-closed-raw/tomlin7/Biscuit?style=for-the-badge">
</h1>

A lightweight, fast code editor with extensions, semantic code completions, refactoring features, symbol references tracker, and more. Features include breakpoint-based code debugging, AI-assisted workflow, fast workspace search, and built-in Git support. Scroll down to see [biscuit in action](https://github.com/tomlin7/Biscuit/tree/main?tab=readme-ov-file#features).

![image](https://github.com/user-attachments/assets/d20a0ded-04a9-4f27-9729-3b41f1a70e92)


- 🎀 **Explore all community-made extensions and their authors at the [Biscuit Extension Center](https://tomlin7.github.io/biscuit-extensions/)**
- 🪛 For contributing/user guides or API reference, check the [documentation here](https://tomlin7.github.io/biscuit)
- 🌟 Scroll down to the [features section](https://github.com/tomlin7/biscuit?tab=readme-ov-file#features) for a list of all features

## Installing

You can install the latest release from PyPI by running:

```bash
$ pip install biscuit-editor
```

Try running `biscuit --version` in your terminal to check if the installation was successful.
> [!IMPORTANT]
> Linux distribtions require some system packages to be installed prior to the poetry installation.
>
> For Debian based distributions,
> ```bash
> $ sudo apt install python3-dev tcl-dev tk-dev \
>    fontconfig libfontconfig1 libfontconfig1-dev \
>    cmake cmake-data extra-cmake-modules build-essential
> $ python -m pip install scikit-build
> ```
>
> For Arch Linux based distributions,
> ```bash
> $ sudo pacman -Sy
> $ sudo pacman -S base-devel cmake extra-cmake-modules \
>    fontconfig tcl tk
> $ python -m pip install scikit-build
> > $ python -m pip install tkextrafont

### Standalone Builds

- Grab the latest stable build from [**releases page**](https://github.com/tomlin7/Biscuit/releases)
- Unstable nightly builds from [GitHub actions](https://github.com/tomlin7/Biscuit/actions)

For compiling from source code, please check the [installation guide](https://github.com/tomlin7/Biscuit/tree/main/scripts).

## Contributing ❤️

Your contributions are very much appreciated!
Have a peek at the [contributing guide](https://github.com/tomlin7/Biscuit/blob/main/CONTRIBUTING.md) for a quick tour on project structure and to setup the environment. To contribute a new extension, check the [extension docs](https://github.com/tomlin7/biscuit-extensions).

<a href="https://github.com/tomlin7/biscuit/graphs/contributors">
  <img src="https://opencollective.com/biscuit/contributors.svg" />
</a><br>

- For opening feature requests and bug reports, use the [issue tracker](https://github.com/tomlin7/Biscuit/issues)
- Community made extensions are published at the [extensions repository](https://github.com/tomlin7/biscuit-extensions)

## Features

- **Language Server Support** for code completions, refactoring, symbol references, and more

![peek](https://github.com/tomlin7/biscuit/assets/70792552/be132f5b-776c-4045-8a62-c9d29d463762)

<table>
    <tr>
        <img src=https://github.com/tomlin7/biscuit/assets/70792552/36589a2d-8f5f-4196-bc88-5b1800492076 height=270>
    </tr>
    <tr> 
        <img src=https://github.com/tomlin7/biscuit/assets/70792552/68a26ccb-b309-4c21-b75e-3e5cf5fa6500 height=270>
    </tr>
</table>

<hr>

- **Breakpoint-based Code Debugging** with variable inspection, call stack, and more

![peek](https://github.com/tomlin7/biscuit/assets/70792552/29541b9e-e084-42bc-85b2-4d7c54cd8d34)

<hr>

- **AI Assisted Workflow** for refactoring, code generation, and more

![peek](https://github.com/tomlin7/biscuit/assets/70792552/97913c12-5493-4783-b1f0-ee904f67ff2d)

<hr>

- **Fast Workspace Search** with regex support and file preview

![peek](https://github.com/tomlin7/biscuit/assets/70792552/de0540b2-2b34-4be6-aa86-97e17a20d47d)

<hr>

- **Built-in Git Support** for version control and diff viewer

![image](https://github.com/tomlin7/biscuit/assets/70792552/ad650048-7e74-420b-bd3a-d0c059ff69cd)

## License

Biscuit is released under the MIT License; for more information, see [LICENSE](https://github.com/tomlin7/Biscuit/blob/main/LICENSE.md).
