Skip to content

Commit be67f08

Browse files
authored
Merge pull request #4 from jaylikesbunda/refactor
Refactor The Sequel
2 parents 2a8bbcf + 2c0b7ab commit be67f08

32 files changed

+1958
-412
lines changed

README.md

+41-27
Original file line numberDiff line numberDiff line change
@@ -1,34 +1,48 @@
1-
# Ghost ESP App
1+
# Ghost ESP 👻
2+
A Flipper Zero application for interfacing with the [Ghost ESP32 Firmware]([https://github.com/your-username/ghost_esp_firmware_repo](https://github.com/Spooks4576/Ghost_ESP)).
23

3-
A Flipper Zero application for interfacing with the the Ghost ESP32 firmware.
4+
## Preview
5+
![Ghost ESP Preview](https://github.com/user-attachments/assets/dbff6546-24ed-4d20-af6e-0e01e1643385)
46

57
## Features
68

7-
- WiFi Operations
8-
- Scan and list WiFi access points and stations
9-
- Beacon spam operations (random, rickroll, custom)
10-
- Deauthentication attacks
11-
- Packet capture (PMKID, Probe, WPS, Raw, etc.)
12-
- Evil Portal capabilities
13-
- Network connection features
14-
15-
- Bluetooth Operations
16-
- Find other Flippers
17-
- BLE spam detection
18-
- AirTag scanning
19-
- Raw Bluetooth packet capture
20-
21-
- GPS Features
22-
- Street detection
23-
- WarDriving capabilities
9+
### 📶 WiFi Operations
10+
- **Scan and List**: Discover WiFi access points and stations
11+
- **Beacon Spam**: Choose from random, rickroll, or custom beacon spamming
12+
- **Deauthentication Attacks**: Perform targeted deauthentication attacks
13+
- **Packet Capture**: Capture PMKID, Probe, WPS, Raw packets, and more
14+
- **Evil Portal**: Create a captive portal
15+
- **Network Connection**: Access comprehensive network connection features
16+
- **Printer Power Control**: Control printer power remotely
17+
18+
### 📡 Bluetooth Operations
19+
- **Flipper Discovery**: Locate other Flipper devices
20+
- **BLE Spam Detection**: Detect and manage BLE spam (COMING SOON…)
21+
- **AirTag Scanning**: Find and scan nearby AirTags
22+
- **Raw Packet Capture**: Capture raw Bluetooth packets for analysis
23+
24+
### 🌍 GPS Features (COMING SOON…)
25+
- **Street Detection**: Identify streets and routes
26+
- **WarDriving Capabilities**: Enable WarDriving for location-based data collection
27+
28+
### ⚙️ Configuration Options
29+
- **RGB LED Control**: Customize RGB LED settings
30+
- **Channel Hopping**: Adjust channel hopping behavior
31+
- **BLE MAC Randomization**: Enable MAC address randomization for Bluetooth
32+
- **Auto-Stop**: Automatically stop operations on back button press
33+
- **Clear Logs**: Easily clear stored logs
34+
- **ESP Reboot**: Reboot the ESP with a single command
35+
- **NVS Clearing**: Clear NVS data with a confirmation prompt
36+
37+
## Downloads
38+
- **Prebuilt App:** [Download from Releases](https://github.com/Spooks4576/ghost_esp_app/releases)
39+
- **Firmware:** [Ghost ESP32 Firmware Repository](https://github.com/Spooks4576/Ghost_ESP)
40+
41+
## Credits 🙏
42+
- Made by [Spooky](https://github.com/Spooks4576)
43+
- Additional contributions by [Jay Candel](https://github.com/jaylikesbunda)
2444

25-
- Configuration Options
26-
- RGB LED control
27-
- Channel hopping settings
28-
- BLE MAC randomization
29-
- Auto-stop on back button
45+
## Support
46+
For support, please open an [issue](https://github.com/Spooks4576/ghost_esp_app/issues) on the repository or contact [Jay](https://github.com/jaylikesbunda) or [Spooky](https://github.com/Spooks4576).
3047

31-
## Credits
3248

33-
- Made by [Spooky](https://github.com/Spooks4576)
34-
- Additional contributions by the community

app_state.h

+6-12
Original file line numberDiff line numberDiff line change
@@ -8,19 +8,11 @@
88
#include <gui/modules/text_input.h>
99
#include "gui_modules/mainmenu.h"
1010
#include "settings_def.h"
11+
#include "app_types.h"
12+
#include "settings_ui_types.h"
1113

12-
// Forward declare the uart types
13-
typedef struct UartContext UartContext;
1414

15-
// Settings UI Context
16-
typedef struct {
17-
Settings* settings;
18-
void (*send_uart_command)(const char* command, void* context);
19-
void* context;
20-
} SettingsUIContext;
21-
22-
// Application State
23-
typedef struct {
15+
struct AppState {
2416
// Views
2517
ViewDispatcher* view_dispatcher;
2618
MainMenu* main_menu;
@@ -30,13 +22,15 @@ typedef struct {
3022
VariableItemList* settings_menu;
3123
TextBox* text_box;
3224
TextInput* text_input;
25+
ConfirmationView* confirmation_view; // Add this
3326

3427
// UART Context
3528
UartContext* uart_context;
3629

3730
// Settings
3831
Settings settings;
3932
SettingsUIContext settings_ui_context;
33+
Submenu* settings_actions_menu;
4034

4135
// State
4236
uint8_t current_view;
@@ -45,4 +39,4 @@ typedef struct {
4539
const char* uart_command;
4640
char* textBoxBuffer;
4741
size_t buffer_length;
48-
} AppState;
42+
};

app_types.h

+9
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
#pragma once
2+
3+
// Forward declarations only
4+
typedef struct AppState AppState;
5+
typedef struct UartContext UartContext;
6+
typedef struct StorageContext StorageContext;
7+
typedef struct SettingsUIContext SettingsUIContext;
8+
typedef struct ConfirmationView ConfirmationView;
9+
typedef struct UartStorageContext UartStorageContext;

0 commit comments

Comments
 (0)