diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..1ba4722 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,15 @@ +name: CI + +on: + push: + pull_request: + +jobs: + test: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-python@v5 + with: + python-version: "3.14" + - run: pip install -e .[dev] \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..02a15a7 --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,11 @@ +[build-system] +requires = ["setuptools>=61"] +build-backend = "setuptools.build_meta" + +[project] +name = "catboxer" +version = "0.1.0" +requires-python = ">=3.9" + +[project.scripts] +catboxer = "catboxer.cli:main" \ No newline at end of file diff --git a/src/catboxer/__init__.py b/src/catboxer/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/src/catbox.py b/src/catboxer/catbox.py similarity index 100% rename from src/catbox.py rename to src/catboxer/catbox.py diff --git a/src/main.py b/src/catboxer/cli.py similarity index 94% rename from src/main.py rename to src/catboxer/cli.py index d5c00e7..1e53464 100644 --- a/src/main.py +++ b/src/catboxer/cli.py @@ -1,7 +1,7 @@ import argparse from pathlib import Path -from catbox import upload +from catboxer.catbox import upload def upload_file(args): @@ -16,7 +16,7 @@ def upload_file(args): def download_file(args): print(f"Downloading {args.file} to {args.output}") -if __name__ == '__main__': +def main(): parser = argparse.ArgumentParser(prog="catboxer") subparsers = parser.add_subparsers(title="commands", dest="command", required=True) @@ -33,4 +33,7 @@ def download_file(args): download_parser.set_defaults(func=download_file) args = parser.parse_args() - args.func(args) \ No newline at end of file + args.func(args) + +if __name__ == '__main__': + main() \ No newline at end of file