Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/fredhappyface/android.brainf

Interpreter for the 'Brainf' programming language
https://github.com/fredhappyface/android.brainf

android brainf brainfuck brainfuck-interpreter

Last synced: 2 months ago
JSON representation

Interpreter for the 'Brainf' programming language

Awesome Lists containing this project

README

        

Feature Graphic

[![GitHub top language](https://img.shields.io/github/languages/top/FredHappyface/Android.Brainf.svg?style=for-the-badge&cacheSeconds=28800)](../../)
[![Issues](https://img.shields.io/github/issues/FredHappyface/Android.Brainf.svg?style=for-the-badge&cacheSeconds=28800)](../../issues)
[![License](https://img.shields.io/github/license/FredHappyface/Android.Brainf.svg?style=for-the-badge&cacheSeconds=28800)](/LICENSE.md)
[![Commit activity](https://img.shields.io/github/commit-activity/m/FredHappyface/Android.Brainf.svg?style=for-the-badge&cacheSeconds=28800)](../../commits/master)
[![Last commit](https://img.shields.io/github/last-commit/FredHappyface/Android.Brainf.svg?style=for-the-badge&cacheSeconds=28800)](../../commits/master)
[![GitHub all releases](https://img.shields.io/github/downloads/FredHappyface/Android.Brainf/total?style=for-the-badge&cacheSeconds=28800)](../../releases)
[![Weblate project translated](https://img.shields.io/weblate/progress/brainf.svg?style=for-the-badge&cacheSeconds=28800)](https://hosted.weblate.org/engage/brainf/)

# Android.Brainf

Interpreter for the 'Brainf' programming language

- [Features](#features)
- [Screenshots](#screenshots)
- [Documentation](#documentation)
- [Installation](#installation)
- [Gradle tasks](#gradle-tasks)
- [Kotlin and Android Version](#kotlin-and-android-version)
- [Building From Source](#building-from-source)
- [Git Clone](#git-clone)
- [Using The Command Line](#using-the-command-line)
- [Using GitHub Desktop](#using-github-desktop)
- [(or) Download Zip File](#or-download-zip-file)
- [Download Android Studio](#download-android-studio)
- [Community Files](#community-files)
- [Licence](#licence)
- [Changelog](#changelog)
- [Code of Conduct](#code-of-conduct)
- [Contributing](#contributing)
- [Security](#security)
- [Support](#support)
- [Development Info](#development-info)

## Features

- **Integration with System Theme**: Brainf seamlessly integrates with the system's theme, ensuring that the app's appearance aligns with the user's device-wide design choices.

- **Effortless Code Management**: Easily create, edit, save, and execute Brainf code and text files, providing a comprehensive platform for coding endeavours.

- **Vibrant Syntax Highlighting**: Harness the power of regex-based syntax highlighting, making your code structures and elements vividly distinct for enhanced readability and comprehension.

- **Swift Navigation via Launcher Shortcuts**: Instantly access key sections like Settings, About, and New File through convenient launcher shortcuts, streamlining your interaction with the app for maximum efficiency.

- **ASCII Control Character Support:** supporting two notation types for ASCII control characters: **hexadecimal notation** (`\xNN`) and **control character notation** (`@NAME;`), allowing flexible inclusion of control sequences in input strings.

## Screenshots


Screenshot 1
Screenshot 2
Screenshot 3
Screenshot 4
Screenshot 5
Screenshot 6

## Documentation

A high-level overview of how the documentation is organized organized will help you know
where to look for certain things:

- [Tutorials](/documentation/tutorials) take you by the hand through a series of steps to get
started using the software. Start here if you’re new.

- The [Technical Reference](/documentation/reference) documents APIs and other aspects of the
machinery. This documentation describes how to use the classes and functions at a lower level
and assume that you have a good high-level understanding of the software.

## Installation

You can install the app using the following methods, Follow the link to the listing on your
preferred store by clicking on one of the badges below, then download/install:

[Get it on Obtainium](https://intradeus.github.io/http-protocol-redirector?r=obtainium://add/github.com/fredhappyface/Android.Brainf)
[Get it on F-Droid](https://f-droid.org/en/packages/com.fredhappyface.brainf/)
[Get it on Google Play](https://play.google.com/store/apps/details?id=com.fredhappyface.brainf)
[Get it on GitHub](../../releases)

### Build from Source

Follow the steps in the [Building from Source](#building-from-source) section.

## Gradle tasks

- ktlintCheck (`gradlew ktlintCheck`): run ktlint over the codebase
- genDocs (`gradlew genDocs`): generate the api reference using dokka

## Kotlin and Android Version

This app has been written in Kotlin 1.9.0 with the Android Studio IDE.

- The target SDK version is 33 (Android 13)
- The minimum SDK version is 26 (Android 8 Oreo)

## Building From Source

1. Download or clone this GitHub repository
2. (If downloaded) Extract the zip archive
3. In Android Studio click File > Open and then navigate to the project file
(Android studio defaults to the directory of the last opened file)

### Git Clone

#### Using The Command Line

1. Press the Clone or download button in the top right
2. Copy the URL (link)
3. Open the command line and change directory to where you wish to
clone to
4. Type 'git clone' followed by URL in step 2

```bash
git clone https://github.com/FredHappyface/Android.Brainf
```

More information can be found at
https://help.github.com/en/articles/cloning-a-repository

#### Using GitHub Desktop

1. Press the Clone or download button in the top right
2. Click open in desktop
3. Choose the path for where you want and click Clone

More information can be found at
https://help.github.com/en/desktop/contributing-to-projects/cloning-a-repository-from-github-to-github-desktop

### (or) Download Zip File

1. Download this GitHub repository
2. Extract the zip archive
3. Copy/ move to the desired location

### Download Android Studio

Download the Android Studio IDE from .
For Windows, double click the downloaded .exe file and follow the instructions
provided by the installer - it will download the Android emulator and the
Android SDK. Additional information can be found at

## Community Files

### Licence

MIT License
(See the [LICENSE](/LICENSE.md) for more information.)

### Changelog

See the [Changelog](/CHANGELOG.md) for more information.

### Code of Conduct

Our project welcomes individuals from diverse backgrounds and perspectives.
We are committed to providing a friendly, safe and welcoming environment for all. Please see the
[Code of Conduct](https://github.com/FredHappyface/.github/blob/master/CODE_OF_CONDUCT.md)
for more information.

### Contributing

Your contributions are valuable and help improve the project for everyone, please see the
[Contributing Guidelines](https://github.com/FredHappyface/.github/blob/master/CONTRIBUTING.md)
for more information.

### Security

If you discover a security vulnerability, we appreciate your responsible disclosure. Please see the
[Security Policy](https://github.com/FredHappyface/.github/blob/master/SECURITY.md)
for more information.

### Support

Thank you for using this project, I hope it is of use to you. Please keep in mind that
the folks working on this project are enthusiasts with various commitments such as work,
family, and other passions. See the
[Support Policy](https://github.com/FredHappyface/.github/blob/master/SUPPORT.md)
for more information.

### Development Info

Serves as a guide to various aspects of project development, including versioning, style guidelines, and recommended practices. Please see
[Development Info](https://github.com/FredHappyface/.github/blob/master/DEVELOPMENT_INFO.md)
for more information.