microsoftdx / nether Goto Github PK
View Code? Open in Web Editor NEWBuilding blocks for gaming on Azure
License: MIT License
Building blocks for gaming on Azure
License: MIT License
Should be enough information for cloning, building and running.
Includes any machine dependencies that need to be installed
The build scripts currently don't track the build results for all builds, so the status of the last build is what currently determines whether the build script returns a success or failure error code.
From comments on #52:
The build task is set to build Nether.Leaderboard.Web. It should probably execute build.ps1/build.sh (depending on platform - see https://code.visualstudio.com/Docs/editor/tasks#_operating-system-specific-properties)
Setup the basic infrastructure to support incoming game events in order to support #3
Important to accomplish:
In the discussion with @krist00fer yesterday about project structure, my initial reaction was that we'd decided on the requirements and structure and should just "suck it up". I spent some time thinking about it afterwards, and now I think I've changed my mind!
A large part of the current project structure is driven by the desire to be able to run and scale each service independently. However, the split in the projects is also slowing the implementation and iteration of design, has added some extra challenges for the "clone, build, run" developer experience, adds complications for deployment (which also impacts integration testing), and potentially complicates authentication.
All of these are challenges that we will need to face, but after thinking about it last night I'm not sure whether they're challenges that we want to face now. My feeling is that we would be better of accelerating the initial implementation of the API, build & run, integration tests etc, as this will allow us to have something to share (both with other people interested in contributing and with people who we're targeting as users of nether). With a bit of thought, we should be able to set up a structure that helps to minimise the amount of code refactoring when we are ready to pick up the work of splitting the services out again.
Thoughts? :-)
Start with the example where Leaderboard need to interact with Analytics
Enable extensions to be specified in configuration and registered with DI. (According to #134 )
E.g.
What to other contributors need to know to contribute successfully?
Includes:
This would be the first implementation of the REST API for Player Management
Document the authentication process for gamedevs that do not want to use Nether client library/plugin for Unity.
Update the DI helpers to allow other dependencies to be resolved/injected
In order to support #6
Nether need to be super easy to deploy, hence deployment should be fully automated and documented. We need to figure out if using ARM Template(s) will be enough or if we even need to create some kind of configuration/deployment tool (that in the end might use ARM Templates) in order to fully automate deployment and configuration of the project.
Important things to accomplish:
Important things to accomplish:
The game publisher should be able to retrieve a list of all players using a simple web interface.
If possible we should follow the API Guidelines defined here https://github.com/Microsoft/api-guidelines
In order to support #4
Setup and implement first API to support authenticated incoming requests from game clients to publish game scores. This is the first feature in a series of more features that will all support the full high score services in Nether.
Important things to accomplish:
example of json body:
{
"gamerTag": "krist00fer",
"score": 4711,
"game-id": "space-shooter",
"ip-address": "213.88.131.129",
"country": "Sweden",
"city": "Stockholm",
"longitude": "xxx",
"latitude": "xxx"
}
Add authentication - should cover:
Create a high level planning until December 20, 2016:
Initial thoughts
Review guidance here: https://azure.microsoft.com/en-us/documentation/articles/documentdb-performance-tips/#sdk-usage
Any other thoughts/ideas ;-)
We've talked a few times about what we need to get in place before opening this up to broader involvement, so I've created this issue to discuss/track what those pieces of work are :-)
This is just a starting point for discussion ;-)
Agree/disagree?...
Current thoughts are to use IdentityServer for this with a fixed, in-memory set of users
In order to support User Story #6
We need a flexible and configurable project solution that should:
The gamedev should be able to instrument the client side code by sending pre-defined and custom game events to the server side. Those events will then be used for further analysis.
Create an ARM template for Leaderboard:
High score lists should be queryable by:
We should set up the web projects so that we have a simplt, consistent way to specify the port(s) that the server listens on.
Players should be able to sing up to the game with their existing social accounts (Facebook, Google, Amazon, LinkedIn) or by creating new credentials (email address and password, or username and password); we call the latter "local accounts."
As per #85, we need to figure out what the MVP is. This might be a scenario to demo, or the scenario for an interested partner. Having this will focus efforts on API design etc
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.