Giter VIP home page Giter VIP logo

Comments (4)

PeterC89 avatar PeterC89 commented on June 19, 2024 6

Definitely interested in joining discussion πŸ™‚

I don't have strong opinions about which specific technology choices to use but I would like to strongly argue in favour of technology choices that make it easy to manage in a distributed (Kubernetes like) environment where you can have multiple instances of Sofie running for redundancy as opposed to the one of everything approach that the current arrangement restricts you to.
As well as moving to a Data/API Pipe that works well across multiple languages (I.E. I can write a gateway in .net and not have to re-invent the DDP library in that language).

How very exciting!

from sofie-core.

ianshade avatar ianshade commented on June 19, 2024

I'll gladly participate on behalf of TV 2 Norge. As LSG and Stable API users we're mostly interested in the future of how Sofie can be interacted with from the outside, and how its data can be obtained in real-time (the Data/API pipe). GUI state management is also a topic where we could exchange insights.

from sofie-core.

nytamin avatar nytamin commented on June 19, 2024

I've planned a workshop on Tuesday, May 7th at 15:00 CEST (that's 14:00 BST, 9am EST) and sent out invites to the ones who have shown interest. Notes from the workshop will be posted in this thread.

If anyone else wishes to join the workshop, please email me at [email protected]

from sofie-core.

nytamin avatar nytamin commented on June 19, 2024

Notes from workshop 2024-05-07

Frontend/GUI server/bundlers

  • Webpack is a proven work horse, but seems to be quite heavy and slow during dev.
  • Vite has been a good experience in 2 recent NRK projects, it offers a fast development experience.
    Possible issue; usage of local commonjs modules in workspaces (need to be investigated).
  • Rollup, not much experience
  • Parcel, good for small projects, but is it expandable enough?

Our recommendation would be to go for Vite, or possibly Webpack.

GUI state management

  • mobx: Is generally liked by us. It is less opinionated than redux, which could be both good or bad.
  • redux: Is a more strict approach to state management than mobx. With tooling, like Redux toolkit, development is easy. With normalized data, performance can be very good.

No one had any experience with other alternatives.

GUI render framework

Recommendation: Continue with React (no one had any objections).

Data/API pipe

  • GraphQL: Isn’t primarly a realtime api, its competing with REST. Probably not that suitable for us.
  • Feather.js: Is liked by the team.
    One drawback is that it is not that well used, should we go for something more popular?
  • Socket.io: Very popular, but doesnt provide much high-level functionality.
  • asyncapi: Lacking in good generators (for nodejs at least), but is that a dealbreaker?

Open question: Is there any library that handles data-syncing across clusters or in cases of reconnections?

We ran out of time at this point.

Next workshop will be Tuesday, May 14th at 15:00 CEST (that's 14:00 BST, 9am EST). If you want to join the discussion, shoot me an email at [email protected] to get an invite.

from sofie-core.

Related Issues (20)

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.