No description
Find a file
Sebastian Behnisch 9662e5de3e readme added
2025-06-01 17:20:28 +02:00
src df 2025-06-01 14:42:36 +02:00
.gitignore df 2025-06-01 14:43:06 +02:00
main.py dc 2025-04-10 15:04:56 +02:00
README.md readme added 2025-06-01 17:20:28 +02:00
requirements.txt df 2025-06-01 14:42:36 +02:00
token.json df 2025-06-01 14:42:36 +02:00

Business Admin Tool

This is a Python application designed to assist with business administration tasks, including customer data management, time tracking, and Google Sheets integration. It features a graphical user interface (GUI) for easy interaction.

Features

  • Customer Data Management: Manage customer information efficiently.
  • Time Tracking: Track time spent on various tasks.
  • Google Sheets Integration: Interact with Google Sheets for data storage and retrieval.
  • Invoicing: Generate and manage invoices.
  • Travel Expenses: Track and manage travel expenses.
  • Configurable Settings: Customize application settings.
  • Theming: Support for different UI themes.

Setup

To set up and run this project, follow these steps:

  1. Clone the repository:

    git clone https://github.com/your-repo/business-admin-tool.git
    cd business-admin-tool
    
  2. Create a virtual environment (recommended):

    python -m venv .venv
    source .venv/bin/activate  # On Windows, use `.venv\Scripts\activate`
    
  3. Install dependencies:

    pip install -r requirements.txt
    
  4. Google Sheets API Setup:

    • Enable the Google Sheets API and Google Drive API in the Google Cloud Console.
    • Create a new OAuth 2.0 Client ID credentials.
    • Download the credentials.json file and rename it to token.json (or configure the path in src/config.py).
    • The application will guide you through the authentication process on first run.
  5. Run the application:

    python main.py
    

Project Structure

  • main.py: The main entry point of the application.
  • requirements.txt: Lists all Python dependencies.
  • token.json: Stores Google API authentication tokens.
  • src/: Contains the main source code.
    • src/config.py: Configuration settings for the application.
    • src/assets/: Static assets like images and icons.
    • src/core/: Core business logic and API integrations.
      • customer_data_manager.py: Manages customer-related data.
      • google_sheets_api.py: Handles interactions with Google Sheets.
      • time_tracking_data_manager.py: Manages time tracking data.
    • src/gui/: Contains the graphical user interface components.
      • base_table_logic.py: Base logic for table interactions.
      • base_table_ui.py: Base UI for tables.
      • customer_table_ui.py: UI for customer data table.
      • customer_table.py: Logic for customer data table.
      • info_popup.py: Information popup windows.
      • invoices.py: Invoice generation and management.
      • main_menu.py: Main application menu.
      • settings.py: Application settings UI.
      • start_view.py: Initial view of the application.
      • themes.py: UI theme management.
      • time_tracking_table_ui.py: UI for time tracking table.
      • time_tracking_table.py: Logic for time tracking table.
      • travel_expenses.py: Travel expenses management.

Contributing

Contributions are welcome! Please feel free to submit a pull request or open an issue.

License

This project is licensed under the MIT License. See the LICENSE file for details.