{"id":22025890,"url":"https://github.com/adi3g/nox-cli","last_synced_at":"2025-10-19T00:05:23.133Z","repository":{"id":254482021,"uuid":"846678843","full_name":"Adi3g/nox-cli","owner":"Adi3g","description":"A versatile Python tool that automates everyday tasks for developers and sysadmins, including network operations, encryption, and Docker management.","archived":false,"fork":false,"pushed_at":"2025-01-15T19:15:24.000Z","size":171,"stargazers_count":8,"open_issues_count":11,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-30T06:09:27.898Z","etag":null,"topics":["cli","docker","nox","python","s3"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Adi3g.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-08-23T18:06:30.000Z","updated_at":"2025-01-15T19:15:26.000Z","dependencies_parsed_at":"2024-09-10T20:48:27.056Z","dependency_job_id":"d5912c44-f4b6-4aee-bcac-1dab6a1cb93b","html_url":"https://github.com/Adi3g/nox-cli","commit_stats":null,"previous_names":["adi3g/nox"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Adi3g%2Fnox-cli","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Adi3g%2Fnox-cli/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Adi3g%2Fnox-cli/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Adi3g%2Fnox-cli/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Adi3g","download_url":"https://codeload.github.com/Adi3g/nox-cli/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252852559,"owners_count":21814378,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","docker","nox","python","s3"],"created_at":"2024-11-30T07:20:35.757Z","updated_at":"2025-10-19T00:05:23.034Z","avatar_url":"https://github.com/Adi3g.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://nestjs.com/\" target=\"blank\"\u003e\u003cimg src=\"https://github.com/user-attachments/assets/981464b6-d547-480c-b889-3a72ccc9ba0e\" width=\"120\" alt=\"Nox Logo\" /\u003e\u003c/a\u003e\n\u003c/p\u003e\n\nNox is a Python CLI tool designed to automate and streamline various day-to-day tasks commonly performed by software engineers. It provides functionalities like JWT management, encryption/decryption, interaction with AWS S3, database operations, Docker management, and more.\n\n## Table of Contents\n\n- [Features](#features)\n- [Usage](#usage)\n  - [JWT Management](#jwt-management)\n  - [Encryption and Decryption](#encryption-and-decryption)\n  - [S3 File Management](#s3-file-management)\n  - [Database Operations](#database-operations)\n  - [Docker Management](#docker-management)\n  - [Network Operations](#network-operations)\n  - [Secrets Management](#secrets-management)\n  - [File and Directory Operations](#file-and-directory-operations)\n  - [UUID Generation](#uuid-generation)\n  - [Hashing Utilities](#hashing-utilities)\n  - [Environment Management](#environment-management)\n  - [Service Management](#service-management)\n  - [Template Generation](#template-generation)\n  - [Time and Date Utilities](#time-and-date-utilities)\n  - [Cloud Operations](#cloud-operations)\n- [Plugins](#plugins)\n- [Contributing](#contributing)\n- [License](#license)\n\n## Features\n\n- **JWT Management**: Generate and verify JWT tokens for different environments.\n- **Encryption/Decryption**: Encrypt and decrypt text or files using various algorithms.\n- **S3 File Management**: List, upload, and remove files from AWS S3 buckets.\n- **Database Operations**: Run queries and manage database migrations.\n- **Docker Management**: Build and run Docker containers with ease.\n- **Network Operations**: Perform network-related tasks like ping, traceroute, and DNS lookups.\n- **Secrets Management**: Store and retrieve secrets securely.\n- **File and Directory Operations**: Search for files, calculate directory sizes, and more.\n- **UUID Generation**: Generate UUIDs for various purposes.\n- **Hashing Utilities**: Hash text or files using algorithms like SHA-256, MD5, etc.\n- **Environment Management**: Manage environment variables by setting, getting, and listing them.\n- **Service Management**: Start, stop, and check the status of system services.\n- **Template Generation**: Generate boilerplate code for projects or components.\n- **Time and Date Utilities**: Work with dates and times, convert timezones, etc.\n- **Cloud Operations**: Deploy and manage applications on cloud providers.\n\n## [![Repography logo](https://images.repography.com/logo.svg)](https://repography.com) / Recent activity [![Time period](https://images.repography.com/54868595/Adi3g/nox-cli/recent-activity/0bdCu61BTSZLmgTWnKjefwC3r7W3VPhJTZ_NE2VYbq0/8GKWUmVqldQq9KP597PaNdFZ4EIIiRWfHwIk0AvTaXg_badge.svg)](https://repography.com)\n[![Timeline graph](https://images.repography.com/54868595/Adi3g/nox-cli/recent-activity/0bdCu61BTSZLmgTWnKjefwC3r7W3VPhJTZ_NE2VYbq0/8GKWUmVqldQq9KP597PaNdFZ4EIIiRWfHwIk0AvTaXg_timeline.svg)](https://github.com/Adi3g/nox-cli/commits)\n[![Issue status graph](https://images.repography.com/54868595/Adi3g/nox-cli/recent-activity/0bdCu61BTSZLmgTWnKjefwC3r7W3VPhJTZ_NE2VYbq0/8GKWUmVqldQq9KP597PaNdFZ4EIIiRWfHwIk0AvTaXg_issues.svg)](https://github.com/Adi3g/nox-cli/issues)\n[![Pull request status graph](https://images.repography.com/54868595/Adi3g/nox-cli/recent-activity/0bdCu61BTSZLmgTWnKjefwC3r7W3VPhJTZ_NE2VYbq0/8GKWUmVqldQq9KP597PaNdFZ4EIIiRWfHwIk0AvTaXg_prs.svg)](https://github.com/Adi3g/nox-cli/pulls)\n[![Trending topics](https://images.repography.com/54868595/Adi3g/nox-cli/recent-activity/0bdCu61BTSZLmgTWnKjefwC3r7W3VPhJTZ_NE2VYbq0/8GKWUmVqldQq9KP597PaNdFZ4EIIiRWfHwIk0AvTaXg_words.svg)](https://github.com/Adi3g/nox-cli/commits)\n[![Top contributors](https://images.repography.com/54868595/Adi3g/nox-cli/recent-activity/0bdCu61BTSZLmgTWnKjefwC3r7W3VPhJTZ_NE2VYbq0/8GKWUmVqldQq9KP597PaNdFZ4EIIiRWfHwIk0AvTaXg_users.svg)](https://github.com/Adi3g/nox-cli/graphs/contributors)\n[![Activity map](https://images.repography.com/54868595/Adi3g/nox-cli/recent-activity/0bdCu61BTSZLmgTWnKjefwC3r7W3VPhJTZ_NE2VYbq0/8GKWUmVqldQq9KP597PaNdFZ4EIIiRWfHwIk0AvTaXg_map.svg)](https://github.com/Adi3g/nox-cli/commits)\n\n\n## Usage\n\nNox provides a variety of commands. Here are some examples:\n\n### JWT Management\n\nGenerate a JWT for a specific environment:\n\n```bash\nnox jwt generate --env prod --key /path/to/key.pem --claims claims.json\n```\n\nVerify a JWT token:\n\n```bash\nnox jwt verify --token your.jwt.token --key /path/to/public.pem\n```\n\n### Encryption and Decryption\n\nEncrypt a file using Base64 encryption:\n\n```bash\nnox encrypt base64 --input /path/to/file --output /path/to/output\n```\n\nDecrypt a file:\n\n```bash\nnox decrypt base64 --input /path/to/encrypted_file --output /path/to/decrypted_file\n```\n\n### S3 File Management\n\nList files in an S3 bucket:\n\n```bash\nnox s3 list --bucket my-bucket --region us-west-2\n```\n\n### Database Operations\n\nBackup a PostgreSQL database:\n\n```bash\nnox db backup --db \"postgresql://user:password@localhost:5432/mydb\" --output /path/to/backup.sql\n```\n\nRestore a PostgreSQL database:\n\n```bash\nnox db restore --db \"postgresql://user:password@localhost:5432/mydb\" --input /path/to/backup.sql\n```\n\n### Docker Management\n\nClean up unused Docker containers, images, and volumes:\n\n```bash\nnox docker clean\n```\n\nTail logs for a Docker container:\n\n```bash\nnox docker logs --container container_name\n```\n\n### Network Operations\n\nPing a host:\n\n```bash\nnox net ping --host google.com\n```\n\nPerform a DNS lookup:\n\n```bash\nnox net dns --domain example.com\n```\n\n### Secrets Management\n\nEncrypt a secret:\n\n```bash\nnox secrets encrypt --secret \"mysecret\" --key /path/to/key.pem\n```\n\nDecrypt a secret:\n\n```bash\nnox secrets decrypt --secret \"encrypted_secret\" --key /path/to/key.pem\n```\n\n### File and Directory Operations\n\nCompress a directory:\n\n```bash\nnox file compress --input /path/to/directory --output /path/to/output.zip --algorithm zip\n```\n\nDecompress a file:\n\n```bash\nnox file decompress --input /path/to/file.zip --output /path/to/output_directory\n```\n\n### UUID Generation\n\nGenerate a new UUID:\n\n```bash\nnox uuid generate\n```\n\n### Hashing Utilities\n\nHash a text using SHA-256:\n\n```bash\nnox hash --text \"your text\" --algorithm sha256\n```\n\nHash a file:\n\n```bash\nnox hash --file /path/to/file --algorithm sha256\n```\n\n### Environment Management\n\nSet environment variables from a file:\n\n```bash\nnox env set --file /path/to/.env\n```\n\nRetrieve the value of an environment variable:\n\n```bash\nnox env get --name ENV_VAR_NAME\n```\n\n### Service Management\n\nStart a system service:\n\n```bash\nnox service start --name docker\n```\n\nCheck the status of a system service:\n\n```bash\nnox service status --name docker\n```\n\n### Template Generation\n\nCreate a new project template:\n\n```bash\nnox template create --type flask-app --name my_project\n```\n\n### Time and Date Utilities\n\nDisplay the current date and time in ISO format:\n\n```bash\nnox time now --format iso\n```\n\n### Cloud Operations\n\nDeploy an application to a cloud provider:\n\n```bash\nnox cloud deploy --provider aws --config deploy_config.json\n```\n\nCheck the status of a deployed application:\n\n```bash\nnox cloud status --provider aws --app my_app\n```\n\n## Plugins\n\nNox supports a plugin system that allows you to extend its functionality without modifying the core codebase.\n\n### Creating a Plugin\n\nTo create a plugin, follow these steps:\n\n1. Create a new Python file in the `nox/plugins/` directory.\n2. Implement the `NoxPlugin` interface.\n\n```python\n# nox/plugins/my_plugin.py\n\nimport click\nfrom nox.plugins import NoxPlugin\n\nclass MyPlugin(NoxPlugin):\n    def register_commands(self, cli):\n        @cli.command()\n        def my_command():\n            \"\"\"Command provided by MyPlugin.\"\"\"\n            click.echo(\"This is a command from MyPlugin!\")\n\nplugin = MyPlugin()\n```\n\n3. Your plugin will be automatically discovered and loaded when you run Nox.\n\n### Loading External Plugins\n\nTo load plugins distributed as separate packages, ensure they are installed in the same environment as Nox, and they will be discovered automatically.\n\n\n## Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request. Before contributing, please ensure you have read the [Contributing Guidelines](CONTRIBUTING.md).\n\n## License\n\nThis project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadi3g%2Fnox-cli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fadi3g%2Fnox-cli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadi3g%2Fnox-cli/lists"}