semvec/pypi-packages huggingface dataset:
useshortcut 0.0.8
A REST client for the Shortcut REST API
Requires Python: >=3.9
Keywords: shortcut, api, client, rest, project-management, clubhouse

# useshortcut

A python REST API Client for the v3 of the Shortcut API.

## Installation

You can install `useshortcut` using pip:

```bash
pip install useshortcut
```

Or if you're using pipenv:

```bash
pipenv install useshortcut
```

## Quick Start

```python
import os
from useshortcut.client import APIClient
import useshortcut.models as models

client = APIClient(api_token=os.environ.get("SHORTCUT_API_TOKEN"))

# Get the current user
current_member = client.get_current_member()

# Find all the stories that I own
search_params = models.SearchInputs(
    query=f"owner:{current_member.mention_name}",
)
# Print all the story ids that I own.
stories = client.search_stories(search_params)
for story in stories.data:
    print(story.id)
```

## Development

### Setting up the development environment

1. Clone the repository:
```bash
git clone https://github.com/your-username/useshortcut-py.git
cd useshortcut-py
```

2. Install pipenv if you haven't already:
```bash
pip install pipenv
```

3. Install development dependencies:
```bash
pipenv install --dev
```

4. Activate the virtual environment:
```bash
pipenv shell
```

### Running Tests

There are several ways to run the tests:

Using invoke:
```bash
pipenv run invoke test
```


Using pipenv directly:
```bash
pipenv run pytest
```

To run tests with coverage:
```bash
pipenv run pytest --cov=useshortcut
```

### Environment Variables

You'll need to set up the following environment variable for development:

- `SHORTCUT_API_TOKEN`: Your Shortcut API token

You can create a `.env` file in the project root (it will be ignored by git):
```bash
SHORTCUT_API_TOKEN=your_api_token_here
```

## License

This project is licensed under the MIT License - see the LICENSE file for details.
pytwee 0.3.3
A parser for the twee format
Requires Python: >=3.7
Keywords: twine, twinery, twee, twee2, twee3, story

pytwee
######

|pylint-action| |test-action| |pypi-action|

|pypi-version| |pypi-python| |pypi-status|

|docs-badge|


Features
********

- Parse the **.twee** file with `twee 3 spec <https://github.com/iftechfoundation/twine-specs/blob/master/twee-3-specification.md>`_
    - **StoryTitle**
    - **StoryData**
    - Special Tags: **script**, **stylesheet**
- Convert the **Story** to `twine 2 HTML spec <https://github.com/iftechfoundation/twine-specs/blob/master/twine-2-htmloutput-spec.md>`_
- Convert the **Story** to `twine 2 JSON doc <https://github.com/iftechfoundation/twine-specs/blob/master/twine-2-jsonoutput-doc.md>`_
- Run as a command


Use
***

::

    # Install by pip
    $ python -m pip install pytwee

::

    # Run in console
    $ python -m pytwee tests/t001.tw
    $ pytwee tests/t001.tw

::

    # Import as a module
    import pytwee

    story = pytwee.story.Story()

    with open('my-story.tw', 'rt') as f:
        parser = pytwee.twee3.Parser(story)
        for line in iter(f.readline, ''):
            parser(line.rstrip('\n'))
        del parser #<- very important

    print('story:', story)


License
*******

|license|



.. |pylint-action| image:: https://img.shields.io/github/actions/workflow/status/jixingcn/pytwee/pylint.yml?label=pylint
    :alt: pylint workflow Status
    :target: https://github.com/jixingcn/pytwee/actions/workflows/pylint.yml


.. |test-action| image:: https://img.shields.io/github/actions/workflow/status/jixingcn/pytwee/test.yml?label=test
    :alt: test workflow Status
    :target: https://github.com/jixingcn/pytwee/actions/workflows/test.yml


.. |pypi-action| image:: https://img.shields.io/github/actions/workflow/status/jixingcn/pytwee/pypi.yml?label=pypi
    :alt: pypi workflow Status
    :target: https://github.com/jixingcn/pytwee/actions/workflows/pypi.yml


.. |pypi-version| image:: https://img.shields.io/pypi/v/pytwee
    :alt: PyPI - Version
    :target: https://pypi.org/project/pytwee


.. |pypi-status| image:: https://img.shields.io/pypi/status/pytwee
    :alt: PyPI - Status
    :target: https://pypi.org/project/pytwee


.. |pypi-python| image:: https://img.shields.io/pypi/pyversions/pytwee
    :alt: PyPI - Python Version
    :target: https://pypi.org/project/pytwee


.. |docs-badge| image:: https://img.shields.io/readthedocs/pytwee/latest
    :alt: Read the Docs (version)
    :target: https://pytwee.readthedocs.io

 
.. |license| image:: https://img.shields.io/badge/license-MIT-green
    :alt: Static Badge
    :target: https://github.com/jixingcn/pytwee/blob/main/LICENSE
Banz-i18n-codegenerator 1.1.0
Package to generate java constants for provided i18n.properties files.
Requires Python: >=3.9

# i18n file generator

Provided multiple i18n.properties files, this will generate three Java classes Constants, Messages and ValidationMessages to link to the strings.

## Usage

call generator.runGenerator(files: list, Ressource: str, targetPath: str, i18nPackagePath:str = null).

- files: List of i18n files to be considered (e.g. ['i18n.properties', 'i18n_de.properties'])
- resourcePath: path to the resource directory where the i18n files are stored (e.g. r'.\backend\domain\src\main\resources')
- targetPath: path to the target Directory where the Java classes should be created (e.g. r'.\backend\domain\src\main\java\org\derbanz\app\domain\i18n')
- i18nPackagePath: path to the I18N class handling the Translation. If left null, getter methods are not auto generated (e.g. 'org.derbanz.app.domain.base.I18N')

The Directory paths can be either absolute or relative, and they can be either raw or escaped (e.g. r'.\backend\domain\src\main\resources', r'D:\Development\app\backend\domain\src\main\resources', '.\\\\backend\\\\domain\\\\src\\\\main\\\\resources')

## Example

```
from Banz_i18n_codegenerator import generator

# with getter methods
generator.run(['i18n_de.properties', 'i18n_en.properties'], 'D:\\\\Development\\\\app\\\\backend\\\\domain\\\\src\\\\main\\\\resources', r'.\backend\domain\src\main\java\org\derbanz\app\domain\i18n', 'org.derbanz.app.domain.base.I18N')

# without getter methods
generator.run(['i18n_de.properties', 'i18n_en.properties'], 'D:\\\\Development\\\\app\\\\backend\\\\domain\\\\src\\\\main\\\\resources', r'.\backend\domain\src\main\java\org\derbanz\app\domain\i18n')
```