Skip to main content

A user interface for managing TextGrid projects, including import, export, and publication features.

Project description

TGPublisher

tgpublisher is a user interface (UI) designed to visually prepare TextGrid imports. It integrates with the tg_model project and provides tools for managing projects, uploading files, and publishing to TextGrid.

Features

  • Project Management: Create, edit, and delete projects.
  • TextGrid Integration: Publish projects to a TextGrid test instance.
  • XPath Support: Validate and edit XPath expressions.
  • File Uploads: Upload and manage files within a project.
  • Nextcloud Integration: Download files from Nextcloud.
  • Git Integration: Clone Git repositories directly into a project.
  • Configurable Settings: Customize the application via config.ini.

Requirements

  • Python 3.8 or higher
  • Dependencies listed in setup.py

Installation

  1. Clone the repository:

    git https://gitlab.gwdg.de/textplus/textplus-io/tgpublisher.git
    cd tgpublisher
    
  2. Create and activate a virtual environment:

    python3 -m venv venv
    source venv/bin/activate
    
  3. Install the dependencies:

    pip install .
    
  4. Configure the application:

    • Copy the example configuration file:
      cp config.ini.example config.ini
      
    • Edit config.ini to suit your environment.
  5. Run the application:

    tgp_app
    
  6. Open the application in your browser at http://localhost:5000.

Usage

Configuring the Application

Modify the config.ini file to set up:

  • TextGrid API credentials
  • File storage paths
  • Other application-specific settings

Creating Projects

  1. Navigate to the homepage.
  2. Click "Create New Project."
  3. Enter a project name and confirm.

Uploading Files

  1. Open a project.
  2. Go to the "Files" tab.
  3. Select files and click "Upload."

Publishing to TextGrid

  1. Ensure you have a valid TextGrid session ID.
  2. Select a project and click "Publish."
  3. Follow the instructions to upload the project to the TextGrid test instance.

Project Structure

The project is organized into two main subpackages:

tgp_ui

  • Contains the Flask-based user interface.
  • Includes HTML templates and static assets.

tgp_backend

  • Implements the backend logic for project management, file handling, and TextGrid API integration.

Configuration

  • config.ini: Central configuration file for the application.

License

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

Authors

  • Ralf Klammer - TU Dresden
  • Moritz Wilhelm - TU Dresden

Contributing

Contributions are welcome! Please open an issue or submit a pull request on GitLab.


Enjoy working with tgpublisher!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tgpublisher-3.1.0rc3.tar.gz (1.2 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tgpublisher-3.1.0rc3-py3-none-any.whl (1.2 MB view details)

Uploaded Python 3

File details

Details for the file tgpublisher-3.1.0rc3.tar.gz.

File metadata

  • Download URL: tgpublisher-3.1.0rc3.tar.gz
  • Upload date:
  • Size: 1.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for tgpublisher-3.1.0rc3.tar.gz
Algorithm Hash digest
SHA256 ce3764441327f8b2b43a6fe119da1622b9860181c7c7c48976ecbfe811923a59
MD5 01587a9b55343f72d9f24e96956dd9bb
BLAKE2b-256 1fe5d2bfeb4f73b5de0c0b8343c5742dc8e5e27d8d6d0173c6d5d1a5123f08a1

See more details on using hashes here.

File details

Details for the file tgpublisher-3.1.0rc3-py3-none-any.whl.

File metadata

  • Download URL: tgpublisher-3.1.0rc3-py3-none-any.whl
  • Upload date:
  • Size: 1.2 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for tgpublisher-3.1.0rc3-py3-none-any.whl
Algorithm Hash digest
SHA256 3a444e65249f9f3ce27022f4b29d06765d691c9832994b8d13916b6dd7549ea4
MD5 2bcac351ca0fdc8cda9c62dbf263d1c9
BLAKE2b-256 1af27755dbc19994a0af2ef8ba8fc0efe78359eb8224cfd84817637cc2224286

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page