Skip to content

DogSoulDev/soulfetch

Repository files navigation

SoulFetch Logo

SoulFetch

SoulFetch is a modern, robust API client for Windows 11 and Linux (Debian). It features a professional dark theme and advanced tools for API development, testing, and automation.

Directory Structure

├── backend/                # FastAPI backend (Hexagonal architecture)
│   ├── adapters/           # Routers: collections, history, environments, request_exec, mock_server
│   ├── application/
│   ├── domain/
│   └── main.py
├── frontend/               # PySide6 frontend (MVC)
│   ├── controllers/
│   ├── models/
│   ├── views/
│   └── main.py
├── db/                     # SQLite database
│   └── soulfetch.db
├── tests/                  # Automated tests for all modules
├── assets/                 # Icons and static assets
│   └── soulfetch_icon.png
├── .github/copilot-instructions.md # Architecture and execution guidelines
├── README.md
└── requirements.txt        # Python dependencies

Architecture

  • Frontend: PySide6, MVC pattern, dark theme, professional UX
  • Backend: FastAPI, Hexagonal architecture, modular routers
  • Persistence: SQLite local database
  • Testing: Full test suite in tests/ (pytest)

Main Features

  • Request builder (dynamic endpoint, all HTTP methods)
  • Response viewer (raw, formatted, diff)
  • Terminal/log panel with scroll and auto-expansion
  • History and collections (import/export)
  • Environment variable manager (preview/edit)
  • Auth tab (advanced authentication)
  • Mock server (hidden if endpoint is unavailable)
  • Test runner
  • Plugin manager (scripting, extensions)
  • Scheduler/monitor
  • Gemini tab (AI features)
  • Privacy mode (toggle from status bar)
  • Tab reordering and closability (drag, close tabs)
  • Theme selector (dark/light, status bar)
  • Keyboard shortcuts (global)
  • Advanced response visualization
  • Contextual menus, global variables, folders
  • Cloud sync (bi-directional, backend API)
  • Multi-language code generation (Python, JS, Go, Java, C#)
  • Accessibility & i18n (high contrast, language switch)
  • User management (add/remove/list users)
  • Advanced visualization (aggregated stats, method counts)
  • Workspace collaboration (real-time sync, team features)

Keyboard Shortcuts

  • Send request: Ctrl+Enter, Enter (in URL or Body), Ctrl+R
  • Save body: Ctrl+S
  • Copy response: Ctrl+Shift+C
  • Next tab: Ctrl+Tab
  • Previous tab: Ctrl+Shift+Tab

Principles

  • SOLID, DRY, KISS
  • Professional UX: clear status, error, response, and logs in all panels
  • Modular, maintainable, and extensible code

Usage

  1. Install dependencies:
    pip install -r requirements.txt
  2. Run SoulFetch (backend + frontend):
    python run_soulfetch.py
  3. Run tests:
    pytest --disable-warnings --tb=short --cov=frontend --cov=backend --cov-report=term-missing
  4. Explore all tabs:
    • Request (real requests, shortcuts, external templates)
    • History (requires backend, hidden if not responding)
    • Test Runner (real scripts, hidden if no logic)
    • Environments (variable management and preview)
    • Auth (advanced authentication)
    • Response Visualizer (depends on response)
    • Scheduler/Monitor (hidden if no logic)
    • Plugins/Scripting (hidden if not running scripts)
    • Accessibility/i18n (contrast, language)
    • User Management (user management)
    • Mock Server, Cloud Sync, CodeGen, Visualization, Workspace Collaboration (only visible if endpoint responds and has real logic)

Debugging & Recommendations

  • If a tab, button, or menu has no real logic, it is automatically hidden.
  • All errors are shown in the log/terminal panel.
  • For advanced debugging, see copilot-instructions.md and the technical guide.

Compatibility

  • Windows 11
  • Linux (Debian)

Screenshots

Main Window

SoulFetch Tabs Overview

  • Request: Build and send API requests (GET, POST, etc.), with templates for pentesting and programming.
  • History: View, export, and import the history of all requests and responses.
  • Test Runner: Run and edit Python scripts to validate responses, with preloaded security/programming templates.
  • Environments: Manage, encrypt, and preview environment variables; import/export in multiple formats.
  • Auth: Advanced authentication options (Bearer, Basic, custom).
  • Response Visualizer: View responses in raw, pretty, diff, and chart formats.
  • Scheduler/Monitor: Schedule and monitor endpoints, with alerts and status table.
  • Plugins/Scripting: Import, export, and run Python plugins or custom scripts.
  • User Management: Add, remove, and list users, fully integrated with backend.
  • Cloud Sync: Real bi-directional sync with backend, preview data and sync history.
  • Visualization: Aggregated stats, method counts, and advanced data visualization.
  • Accessibility/i18n: Toggle high contrast, change language, and improve usability.
  • Mock Server, CodeGen, Workspace Collaboration: Only visible if backend endpoints are available.

Documentation & Contribution

  • This README and the entire project are in English for international accessibility and contribution.
  • For Spanish-speaking users, a complete technical guide is available: see TECHNICAL_GUIDE.md.
  • For architecture and execution guidelines, see .github/copilot-instructions.md.
  • All code follows SOLID, DRY, and KISS principles with professional UX.

License

SoulFetch is open source under the MIT license with attribution. You may use, modify, and distribute it freely, provided you credit the author:

Created by DogSoulDev (https://dogsouldev.github.io/Web/)

Status

All tests pass. Full coverage on controllers, backend, mocks, and main features. Ready for production and deployment.

About

Modern, robust API client for Windows 11(Postman Example)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages