Categorygithub.com/emad-elsaid/debugger
modulepackage
0.0.0-20230714205757-ae768a3b5dc2
Repository: https://github.com/emad-elsaid/debugger.git
Documentation: pkg.go.dev

# README

DEBUGGER

Golang debugger graphical user interface. Built on Delve debugger. It aims to provide a similar user experience to Chrome developer tools.

Features

  • Source code view
  • Breakpoints (Add, remove, activate, deactivate)
  • Disassmbly panel
  • Watches
  • List of functions
  • List of types
  • List of Open files by the process
  • Show Process ID
  • Shows Process current working directory
  • Compiles go module executable or tests
  • Recompile and restart the process when changes are detected
  • Stack trace panel, listing all go routines
  • List of packages, and links to package documentation
  • List of source files
  • Memory statistics

Supported OSs

  • Linux: tested on Archlinux machine with go-1.19/amd64

Installation

Prerequisites

  • Project depends on Gio package. make sure you install it's dependencies https://gioui.org/doc/install
  • Install debugger latest version using go install
go install github.com/emad-elsaid/debugger@latest

Getting Started

Debug binary

debugger run <package-path> <compile-arguments> -- <runtime-argument>
  • arguments before -- is passed to go build command.
  • arguments after -- is passed to your program.

Examples:

Compile and debug the package in current directory

debugger run .

Compile and debug package in cmd/cli/ directory

debugger run ./cmd/cli/

Compile and debug current package and pass --secure=false to the program

debugger run . -- --secure=false

Test binary

debugger test <package-path> <compile-arguments> -- <runtime-argument>

Dependencies

  • fsnotify
  • Delve
  • Gioui

Contributing

Code contributions

  • Fork
  • Branch
  • Add proof of concept for your feature to get the conversation started
  • Open Pull request with your changes
  • Discuss the idea and the POC
  • Continue until the PR is in a good shape for merging

Feature requests

  • Open an issue with the idea state the following:
    • Problem statement
    • List of solutions
    • Preferred solution
    • Why this solution was choosen?

License

This project is published under the MIT license

# Packages

No description provided by the author

# Functions

No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author

# Constants

No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author

# Variables

No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author

# Structs

No description provided by the author
Boolean widget.
No description provided by the author
Chan widget.
Complex numbers widget.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
Func widget.
Interface widget.
No description provided by the author
Map widget.
No description provided by the author
Numbers widget like int, float, uint...
No description provided by the author
No description provided by the author
Pointer widget.
No description provided by the author
Slice of values.
No description provided by the author
No description provided by the author
No description provided by the author
String widget.
Struct widget.
No description provided by the author
No description provided by the author
Rest of variables widgets.

# Interfaces

No description provided by the author

# Type aliases

No description provided by the author
No description provided by the author