Create a simple UI for interfacing with Kafka and gRPC using protobufs. This is a tool, not an example of a perfect js app.
A user should be able to...
- Upload their proto files.
- From a JSON body, send messages to Kafka or call gRPC service methods.
- Be cool.
To run with host networking docker run -d --network host mickoallen/super-probugr:latest
. This is recommended since it makes calling back to your local gRPC services and Kafka broker simpler, but only works in environments where host networking is supported, such as linux.
To run without host networking docker run -d -p 5052:5052 mickoallen/super-probugr:latest
.
Upload proto files:
Connect to gRPC server:
Send messages to kafka:
Requires Node >=8.0, NPM >=5
npm install
- Start mongodb
cd mongodb
+docker-compose up
npm run dev:serve
or debugsuper-probugr/bin/www
with env var PORT=5052 in Intellij to start the server.npm run dev:client
to start the UI with hot reload
- NodeJS
- Express
- VueJS
- Vuetify Material Design Framework
- MongoDB
Code was based on this template - https://github.com/aturingmachine/mevn-stack
Lot's of cleanup needs to happen, naming, organization etc.
Feature | Status |
---|---|
Change json input and display boxes to a json formatted component | todo |
Remember user preferences for theme select | todo |
- Hover and click states doesn't work with the 'Select Proto Files' button in the upload dialogue.
- Occasional race conditions trying to start the container.
- Enum values in the JSON must be represented by their index as defined in the proto, no the associating value.
yourmom