GDB-UI/README.md
Shubh Mehta 955b457d81
Update README.md
Added design in readme.md file
2025-01-17 23:03:52 +05:30

147 lines
3.4 KiB
Markdown

# GDB-UI
**GDB-UI** is a user-friendly interface built for the GNU Debugger (GDB), providing a modern web-based UI for debugging your applications. It allows developers to monitor program execution, inspect variables, set breakpoints, and more, all through an intuitive web application.
**GitHub Repository:** [c2siorg/GDB-UI](https://github.com/c2siorg/GDB-UI)
## Project Overview
GDB-UI simplifies the debugging process by integrating the powerful features of GDB with a sleek and easy-to-use web interface. This project is particularly useful for developers working with languages like C, C++, and Ada. The interface offers a more accessible and visual approach to debugging, making it easier to identify and fix issues in your code.
## Getting Started
### Docker Setup
The quickest way to get started with GDB-UI is by using Docker. A `docker-compose.yml` file is provided to handle the entire setup.
1. Ensure Docker and Docker Compose are installed on your machine.
2. Run the following command in your terminal:
```sh
docker-compose up
```
This command will build and start both the frontend and backend services, making the application available at [http://localhost:3000](http://localhost:3000) (or your specified port).
### Manual Setup
If you prefer a manual setup or are unable to use Docker, follow these steps:
#### Prerequisites
- **Node.js:** Version 18
- **Python:** Version 3.10
#### Frontend Setup (React)
1. Navigate to the `webapp` directory:
```sh
cd webapp
```
2. Install the necessary dependencies:
```sh
npm install
```
3. Start the development server:
```sh
npm run dev
```
#### Backend Setup (Python Server)
1. Navigate to the `gdbui_server` directory:
```sh
cd gdbui_server
```
2. Install the required Python packages:
```sh
pip install -r requirements.txt
```
3. Run the backend server:
```sh
python main.py
```
## Running Tests
### Frontend Tests (Vite)
To run the frontend tests, follow these steps:
1. Navigate to the `webapp` directory:
```sh
cd webapp
```
2. Run the tests using Vite:
```sh
npm run test
```
### Backend Tests
To run the backend tests, use the following procedure:
1. Ensure your Python environment is set up as described in the manual setup.
2. Navigate to the `gdbui_server` directory:
```sh
cd gdbui_server
```
3. Run the tests using the `unittest` module:
```sh
python -m unittest discover -s tests
```
## Contributing
We welcome contributions from the community! To get started:
1. **Fork the repository at** [c2siorg/GDB-UI](https://github.com/c2siorg/GDB-UI).
2. **Clone your fork:**
```sh
git clone https://github.com/your-username/GDB-UI.git
```
3. **Create a new branch for your feature or bugfix:**
```sh
git checkout -b feature-name
```
4. **Make your changes and commit them:**
```sh
git commit -m "Description of your changes"
```
5. **Push your branch to your fork:**
```sh
git push origin feature-name
```
6. **Open a pull request** on the main repository.
**Please ensure your code adheres to our coding standards and is thoroughly tested before submitting your pull request.**
## Design
https://www.figma.com/proto/flJ4HBaH4QhF18RSKGOWwA/GDB-UI?type=design&node-id=111-1101&t=sDAc1dWc1LAfqpaT-0&scaling=min-zoom&page-id=0%3A1&starting-point-node-id=111%3A2956