Giter Club home page Giter Club logo

godot-very-simple-twitch's People

Contributors

laurick avatar rothiotome 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

Watchers

 avatar  avatar

Forkers

laurick belzecue

godot-very-simple-twitch's Issues

Disconnect functionality

Why

Will be usefull get a disconect function for scenes/moments where you don't need waste resources in a node receiving messages. Maybe a disconect function in vsc is a good feature.

Now we can disconect removing the node and adding a new one. Its too shabby and only works on anon login

How

In a non auth flow we must send the close the websocket properly. Must be careful becuase on a auth flow you must free all the resources not only the websocket. The thing is, after login a channeld and logout we can lauch another login to the same channel or another one without problems. I don't see any LEAVE command or something like that but...

[Feature]: Add send_message feature to chat dock

Description

The add_message feature was added to the addon days ago and I think it's a good idea add that fuctionality to the chat dock to be tested and used for everyone

Current Behavior

The feature is not implemented in the chat dock

How

The front can be a line_edit with a button with the new functionality attached to send the message.

Maybe it's a cool idea hide the line edit and the button until its needed to keep the chat/dock clean :)

Contributing, code of conduct, author files and templates

Why

There is no files about the author ( rothio ), coc and contributing stuff and I think is important as a free software. Also that makes super profesional look :)

For template files i think will be nice to get the same as vsc unity edition to keep the docs nice, with all the information and clean like: #1. We can add or remove parts and stuff.

How

Adding the files:

  • Authors
  • Issues template
  • PR template
  • "CoC" Code of counduct
  • Contributing

Which can be copied from another rothio's repo after a check.

Notes

Maybe this must be some separated issues but I decided to group them. And for some reason I cant put labels on this so read this like a discussion

Add github action

Why

I think a github action ziping the addon folder and uploading to github relases is a good feature for these reasons:

  • It's cool
  • Will be usefull for more badges on docs ๐Ÿ‘€
  • Someone who only wants the addon dont need the examples
  • Doesn't affect the asset store on godot.
  • It's automatic

How

My proposal its to make a github action to make a zip with the addon folder only on "v*.." tags so in each tag a version will be realeases with that versioning

[Feature]: Add a testing framework

Description

In order to be VST a "production ready" addon we need tests

Current Behavior

There is no test framework neither testing suite

How

Gut seems to be a good testing famework ( https://gut.readthedocs.io/en/latest/ ) The idea is to add the framework as first step with a dummy test. The next step will be a series of small refactors to extract methods and test them

It's seems also we can attach it to PRs in order to keep the project robust and merge only the "safe" ones

[Feature]: Add api errors

Description

In order to get more information about the failure flow at the api calls we need to return an error object with the information parsed to app

Current Behavior

The api client returns nulls with no information about the error itself.

How

Since Godot is not static typed we can use it to return an response ( like an 'ok' for timeouts) or an object error (VSTError?) with the following params:

  • errorCode:int - Usefull to track errors and pick out easly
  • errorDescription:String - A human readeable description in english

In the other hand if we took this aproach every response from the api must be casted to response or the error class. I think that add a lot of overhead so we can:

  1. Parse all the responses to objects that will inherit from another one called VSTError and only check the errorCode ( much faster and ligther )
  2. Refactor a little bit the api script to add in every call 2 Callables one to be called when the api call was success and the other when the call was a failure ( Example -> "func add_vip(user_to_vip_id: String, on_success_callback:Callable = null, on_failure_callback:Callable = null)")
  3. Make a big refactor and make a "ApiRequest" class and using Builder pattern to add all the data and the callbacks.

[Feature]: Add addon errors

Description

VST return no errors so far in some flows like joining a chat or raising the local server to the app

Current Behavior

If you tries to connect to a empty chat or the IRC server returns an error the app/game doesn't get notify properly

How

Wa can use the same data object as described in #9 with the same structure for return the errors. The way to return the errors can be a new signal called on_plugin_error (TBD) and notify error through that.

We can change also the name of the other signals to match the godot code style taking advantage of these and being good (girl|boy)scauts o7

[Feature]: Add gdLinter to project

Description

To keep the same style in all files at project and to make it easier for everyone follow the gdscript style, maybe its a good idea to use a linter such as gdLint

Current Behavior

There is no linter in project

How

Adding the addon and make a simple how to/install doc file in docs

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.