Giter Site home page Giter Site logo

sauljabin / kaskade Goto Github PK

View Code? Open in Web Editor NEW
592.0 592.0 10.0 3.72 MB

kaskade is a text user interface for kafka, which allows you to interact and consume topics from your terminal in style!

Home Page: https://github.com/sauljabin/kaskade

License: MIT License

Python 99.91% Dockerfile 0.09%
cli kafka kafka-cli kafka-tools kafka-tui kafka-ui kafka-utils python tui

kaskade's Introduction

Hi there, I'm Saúl Piña

  • 🧑🏽‍💻 I'm a Software Engineer
  • 🐎 I’m currently working at LittleHorse
  • 🪶 I have extensive experience in Apache Kafka
  • 🦦 and some in Kafka Streams
  • ☕ I develop on Java
  • 🐍 and Python
  • 🏗️ I'm passionate about Github Actions, Kubernetes, ArgoCD, Terraform and Docker
  • 🐧 I use Ubuntu
  • 🚀 My personal Open-source project is kaskade
  • 🧙🏾‍♂️ I like D&D
  • 🎮 I love playing video games

kaskade donate linkedin littlehorse

kaskade's People

Contributors

sauljabin avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

kaskade's Issues

Implementing security scanning

As developer,
I want the project scanned when committing new changes and in github actions
So that ensure that the repo does not have vulnerabilities

Acceptance Criteria:

  • talisman pre-commit
  • github action scanner

Consumer mode

As user,
I want consume the messages inside a topic
So that I can see the message consume in main tui panel

Can't install Aplication

Describe the bug
Can't install on my mac m1.

To Reproduce
Steps to reproduce the behavior:

  1. pip install kaskade
    Error:
Defaulting to user installation because normal site-packages is not writeable
Collecting kaskade
  Using cached kaskade-1.1.8-py3-none-any.whl (38 kB)
Collecting PyYAML<6.0.0,>=5.4.1 (from kaskade)
  Using cached PyYAML-5.4.1.tar.gz (175 kB)
  Installing build dependencies ... done
  Getting requirements to build wheel ... error
  error: subprocess-exited-with-error

  × Getting requirements to build wheel did not run successfully.
  │ exit code: 1
  ╰─> [48 lines of output]
      running egg_info
      writing lib3/PyYAML.egg-info/PKG-INFO
      writing dependency_links to lib3/PyYAML.egg-info/dependency_links.txt
      writing top-level names to lib3/PyYAML.egg-info/top_level.txt
      Traceback (most recent call last):
        File "/Users/razuvajaleksej/Library/Python/3.10/lib/python/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
          main()
        File "/Users/razuvajaleksej/Library/Python/3.10/lib/python/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
          json_out['return_val'] = hook(**hook_input['kwargs'])
        File "/Users/razuvajaleksej/Library/Python/3.10/lib/python/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 118, in get_requires_for_build_wheel
          return hook(config_settings)
        File "/private/var/folders/hw/nvzq554j1fs0cgkjk1wcts_m0000gq/T/pip-build-env-vziuwn4_/overlay/lib/python3.10/site-packages/setuptools/build_meta.py", line 325, in get_requires_for_build_wheel
          return self._get_build_requires(config_settings, requirements=['wheel'])
        File "/private/var/folders/hw/nvzq554j1fs0cgkjk1wcts_m0000gq/T/pip-build-env-vziuwn4_/overlay/lib/python3.10/site-packages/setuptools/build_meta.py", line 295, in _get_build_requires
          self.run_setup()
        File "/private/var/folders/hw/nvzq554j1fs0cgkjk1wcts_m0000gq/T/pip-build-env-vziuwn4_/overlay/lib/python3.10/site-packages/setuptools/build_meta.py", line 311, in run_setup
          exec(code, locals())
        File "<string>", line 271, in <module>
        File "/private/var/folders/hw/nvzq554j1fs0cgkjk1wcts_m0000gq/T/pip-build-env-vziuwn4_/overlay/lib/python3.10/site-packages/setuptools/__init__.py", line 103, in setup
          return distutils.core.setup(**attrs)
        File "/private/var/folders/hw/nvzq554j1fs0cgkjk1wcts_m0000gq/T/pip-build-env-vziuwn4_/overlay/lib/python3.10/site-packages/setuptools/_distutils/core.py", line 185, in setup
          return run_commands(dist)
        File "/private/var/folders/hw/nvzq554j1fs0cgkjk1wcts_m0000gq/T/pip-build-env-vziuwn4_/overlay/lib/python3.10/site-packages/setuptools/_distutils/core.py", line 201, in run_commands
          dist.run_commands()
        File "/private/var/folders/hw/nvzq554j1fs0cgkjk1wcts_m0000gq/T/pip-build-env-vziuwn4_/overlay/lib/python3.10/site-packages/setuptools/_distutils/dist.py", line 969, in run_commands
          self.run_command(cmd)
        File "/private/var/folders/hw/nvzq554j1fs0cgkjk1wcts_m0000gq/T/pip-build-env-vziuwn4_/overlay/lib/python3.10/site-packages/setuptools/dist.py", line 963, in run_command
          super().run_command(command)
        File "/private/var/folders/hw/nvzq554j1fs0cgkjk1wcts_m0000gq/T/pip-build-env-vziuwn4_/overlay/lib/python3.10/site-packages/setuptools/_distutils/dist.py", line 988, in run_command
          cmd_obj.run()
        File "/private/var/folders/hw/nvzq554j1fs0cgkjk1wcts_m0000gq/T/pip-build-env-vziuwn4_/overlay/lib/python3.10/site-packages/setuptools/command/egg_info.py", line 321, in run
          self.find_sources()
        File "/private/var/folders/hw/nvzq554j1fs0cgkjk1wcts_m0000gq/T/pip-build-env-vziuwn4_/overlay/lib/python3.10/site-packages/setuptools/command/egg_info.py", line 329, in find_sources
          mm.run()
        File "/private/var/folders/hw/nvzq554j1fs0cgkjk1wcts_m0000gq/T/pip-build-env-vziuwn4_/overlay/lib/python3.10/site-packages/setuptools/command/egg_info.py", line 551, in run
          self.add_defaults()
        File "/private/var/folders/hw/nvzq554j1fs0cgkjk1wcts_m0000gq/T/pip-build-env-vziuwn4_/overlay/lib/python3.10/site-packages/setuptools/command/egg_info.py", line 589, in add_defaults
          sdist.add_defaults(self)
        File "/private/var/folders/hw/nvzq554j1fs0cgkjk1wcts_m0000gq/T/pip-build-env-vziuwn4_/overlay/lib/python3.10/site-packages/setuptools/command/sdist.py", line 112, in add_defaults
          super().add_defaults()
        File "/private/var/folders/hw/nvzq554j1fs0cgkjk1wcts_m0000gq/T/pip-build-env-vziuwn4_/overlay/lib/python3.10/site-packages/setuptools/_distutils/command/sdist.py", line 251, in add_defaults
          self._add_defaults_ext()
        File "/private/var/folders/hw/nvzq554j1fs0cgkjk1wcts_m0000gq/T/pip-build-env-vziuwn4_/overlay/lib/python3.10/site-packages/setuptools/_distutils/command/sdist.py", line 336, in _add_defaults_ext
          self.filelist.extend(build_ext.get_source_files())
        File "<string>", line 201, in get_source_files
        File "/private/var/folders/hw/nvzq554j1fs0cgkjk1wcts_m0000gq/T/pip-build-env-vziuwn4_/overlay/lib/python3.10/site-packages/setuptools/_distutils/cmd.py", line 107, in __getattr__
          raise AttributeError(attr)
      AttributeError: cython_sources
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: subprocess-exited-with-error

× Getting requirements to build wheel did not run successfully.
│ exit code: 1
╰─> See above for output.

note: This error originates from a subprocess, and is likely not a problem with pip.

Desktop (please complete the following information):

  • OS: 14.1.2
  • Version [23B92]
  • Python 3.10.5

Error calling self.tui.handle_exception funtion from consumer_mode

2022-07-24 20:45:06,904 ERROR    Error in runtime: <ContextVar name='active_app' at 0x108518f90>
2022-07-24 20:45:06,904 ERROR    <ContextVar name='active_app' at 0x108518f90>
Traceback (most recent call last):
  File "/Users/saulpina/Workspace/sauljabin/kaskade/kaskade/widgets/consumer_mode.py", line 66, in background_execution
    self.tui.handle_exception(Exception("hola"))
  File "/Users/saulpina/Workspace/sauljabin/kaskade/kaskade/widgets/tui_widget.py", line 12, in tui
    return cast("Tui", self.app)
  File "/Users/saulpina/Library/Caches/pypoetry/virtualenvs/kaskade-DgFrHyFV-py3.9/lib/python3.9/site-packages/textual/message_pump.py", line 59, in app
    return active_app.get()
LookupError: <ContextVar name='active_app' at 0x108518f90>

Add config option for passing bootstrap server(s)

Is your feature request related to a problem? Please describe.
I'm always frustrated when I want to run kaskade in k8s because I can't just pass it the boostrap servers instead of fiddling with volumes and config files

Describe the solution you'd like
A CLI config option to pass in a hostname:port bootstrap server

Failed to get committed offsets: Local: Unknown group

Describe the bug
When i try to start kaskade shows an error:

🤔 A problem has occurred "Failed to get committed offsets: Local: Unknown group"

To Reproduce

my kaskade.yml is like this:

kafka:
bootstrap.servers: SERVER
security.protocol: SASL_SSL
sasl.mechanisms: PLAIN
sasl.username: SASL_USERNAME
sasl.password: SASL_PASSWORD
session.timeout.ms: 45000
kaskade:
debug: on

Expected behavior
Kaskade does not start

Desktop (please complete the following information):
docker run --rm -it --network kafka
--volume $(pwd):/kaskade
sauljabin/kaskade:latest

Additional context
I am trying connect to confluent cloud cluster

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.