Code Monkey home page Code Monkey logo

warframe.net's Introduction

Warframe.NET

An asynchronous .NET Wrapper for Warframe's World State API.

Written in C#

License: MIT

Supported by the Warframe Community Developers Discord


Statuses

Build Status appveyor build Maintainability

warframe.net's People

Contributors

debuckj avatar elfahor avatar erlite avatar jooty avatar khaoz-topsy avatar kurtlourens-tester avatar tehpers avatar tobitenno avatar

Stargazers

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

warframe.net's Issues

[CI] Travis CI builds

Goals:

  • Build/compile to verify valid code
  • Run tests to validate good reading of the worldstate
  • Publish on good master builds

HttpClient usage

HttpClient is a weird class. The class is not intended to be instantiated per request. There's more information on the docs. As a solution, I propose making WarframeClient implement IDisposable and maintain its own instance of HttpClient for the lifetime of the object, disposing of the client when the WarframeClient is disposed of. That way the same HttpClient instance is used for all requests made through the WarframeClient rather than a new instance being created per request.

Date conversion failes

This is a really cool project but when I try to run it I only get a "Unexpected character encountered while parsing value: {. Path 'Alerts[0].Activation', line 1, position 6576."

Which points to ""Activation":{"$date":{"$numberLong":"1543679128601"}}" in the json.
So there is some error with the date conversion here or Im missing something.

Should we ignore some API properties like "asString" and "eta"?

Per the title, I wonder if we should just ignore some of the properties returned by the API. They seem to be generated by the data returned from the real Warframe API, and some of it really isn't needed as we can make it ourselves in the wrapper. This would reduce the clutter inside model classes like this:

[JsonProperty("eta")]
public string TimeRemainingString { get; private set; }

[JsonProperty("startString")]
public string TimeSinceStartString { get; private set; }

Thoughts?

Complete WorldState.Data models for the worldstate parser.

All of these models are returned by the worldstate api at api.warframestat.us, so we'll need to make C# models for every item returned to be used when deserializing from the JSON results.

  • News
  • Events
  • Alerts
  • Sorties
  • Syndicate Missions
  • Fissures
  • Global Upgrades
  • Flash Sales
  • Invasions
  • Dark Sectors (don't think these are used anymore?)
  • Void Trader
  • Daily Deals
  • Simaris
  • Conclave Challenges
  • Persistent Enemies
  • ICycle interface for cycles like Earth, Cetus and Orb Vallis.
  • Earth Cycle
  • Cetus Cycle
  • Orb Vallis Cycle. Doesn't look like it's in the docs, but iirc it's been added to the api.
  • Construction Progress for Fomorians etc.

If I missed anything please let me know.

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.