sa-mw-dach / opendj Goto Github PK
View Code? Open in Web Editor NEWApply Open Source principles to the Dance Floor! MOVED TO https://github.com/opendj/opendj
Home Page: https://github.com/opendj/opendj
License: GNU General Public License v3.0
Apply Open Source principles to the Dance Floor! MOVED TO https://github.com/opendj/opendj
Home Page: https://github.com/opendj/opendj
License: GNU General Public License v3.0
The PartyOwner needs to registry with his spotify credentials, go through the spotify auth flow as describe https://developer.spotify.com/documentation/web-api/quick-start/ and https://github.com/spotify/web-api-auth-examples
The resulting access and refresh tokens need to be persistet so we do not loose them on container restart.
Needs new endpoint in spotify backend component ("initiateSpotifyLogin()"), and also a new view on the front-end side.
OpenDJ conflicts with the directory server project also found on github
We need to decide if we stay with the current name and risk the conflict when going really public, or decide on an alternative name.
We need to decide on Project Tooling used for:
created by Michael Leibfried
Which roles do we need, and who has which roles?
Candiates:
depends on #15
Instead of the Playback Controller polling the Playlist for the first track, the Playlist should submit an event what the first track is which the Playback controller reacts upon. This would make it easier to handle multiple playbacks in parallel (because the playback controller needs no awareness which playlists exist/are active, it just reacts on events.
This is usually done via some data store, i.e. there's concepts to perform leader election using MongoDB, Zookeeper or etcd. Each choice introduces new technical dependencies, maybe there's a concept for leader election using messaging?
We need an OpenShift Cluster that is easily available, without VPN.
Options:
A: Employee OpenShift
B: OpenShift4 on AWS
The design and MVP* included a moerator view with the option to reorder items
UI needs a backend endpoint to vote songs up and down
We need a nice slick UX Design, consistent colors etc.
For example create the swagger definition of an API first before then implementing it in a separate micro service.
Make sure we have decent domain names for public access.
Such as Zuul CI or others. Prerequisite is a repo where not everyone can push to master but master is owned by the project gating system and a pull request is then evaluated by the gating system and merged or rejected
This could be install of the finished application at first, the install/setup of a complete dev+qa+prod environment incl. CI/CD second, and a more complex lifecycle third.
E.G. Apache Kafka / AMQ Streams or AMQ Pub/Sub
For HTTP interfaces, we can use a Swagger/OpenAPI definition, which can be rendered into a Test UI and used for scaffolding of implementations and client code. Can we use something equivalent for event bus based interfaces(#16)?
functionality is commented out in the services for whatever reasons.
there are several options to sort the array of subdocuments.
I do suggest to focus on the drag and drop capability of the UI. ie. the UI will send the things being changed and we do an atomic update in the database.
prerequisites: Moderator View
Decide on how to use git.
Options:
a: collective code ownership
no forking branching, single master branch where everybody pushes to
b: forking/branching with maintainers
Every ticket / feature / story is developed on a branch / fork and then merged into central master repo by the maintainers
OpenDJ needs several screens. To facilitate communication between UX design and implementation, a tool would be good.
In the long term, we will need to decide on how/where we persist states (Playlists, Auth Tokens).
Github is complaining about nodejs sec vuls in various components. That should be fixed!
Thats not good, makes it impossible to move to different environments.
Example:
OpenDJ/frontend/app/src/app/home/home.page.ts:
...
const playlistUrl = 'http://playlist-dfroehli-opendj dev.apps.ocp1.hailstorm5.coe.muc.redhat.com/api/v1/';
...
I see Tdd relevant on two different but related areas:
We need a good way to organize
To allow easy showcase/demo/testing/partying, but also to comply with our defintion of done, we need to re-deploy to a different (public) openshift instance.
AsyncAPI is an extension/variation of OpenAPI by adding async/event handling capabilities.
AsyncAPI .
Could be a good way to describe async interfaces, but needs more investigation / experimentation.
I think we should experiment with this, e.g. define a simple async api, use it to generate prducer/consumer code against kafka and see how it works.
Derived from: #24 (comment)_
For easy testing / showcases, until we fixed the Outh Flow issue, the spotify backend should have a mock, responding with some track data.
Not sure if full REST actually solves problems for us or creates new problems:
right now we only show a playlist and play the first item in it.
the design wasn't that precisely about which items will be in the list. (will it include the current song or is this being popped out as soon we are playing it ie. the list would be next tracks. and the model might need a redesign),
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.