Giter Club home page Giter Club logo

snowflake's Introduction

Snowflake

Build Status

Windows Linux codecov codefactor lgtm license
Windows Build status Linux Codecov CodeFactor Total alerts License

Latest Version

MyGetFeed NuGet version

Snowflake is a framework for building flexible and beautiful emulator frontends. With features such as advanced configuration generation and an intelligent scraping system, Snowflake provides a powerful set of tools to manage, play, and organize your games when designing your dream frontend using the language of your choice.

Features

Snowflake features innovative solutions to many problems with current emulator frontends.

  • Full cross-patform support through .NET Core.
  • Dynamic and flexible tree-based game scraping.
  • Programmatic per-game emulator configuration generation and input management.
  • Multi-disc and multi-file capable relational games database.

At its core, Snowflake is designed to be moddable and easy to develop for, with a comprehensive C# API for extensibility and GraphQL interface for frontend UIs.

  • Language-agnostic GraphQL interface for communicating with the Snowflake framework.
  • Plugin API to extend the framework with C# plugins.
  • Module-based runtime extensibility.
  • Stone platform, controller, and canonical ROM file mimetype compliant.
  • Dedicated CLI to help you get started quickly and easily.

Star this repository and bookmark our website at http://snowflakepowe.red to keep up with Snowflake's development. We'll have something new in store for you soon!

Getting Started

Snowflake does not currently have a well defined install process for end-users, but it is easy to set up a development environment. You will need the .NET 6 SDK to get started.

$ git clone --recursive https://github.com/SnowflakePowered/snowflake/
$ cd snowflake
$ dotnet run --project build -- Bootstrap
$ cd out
$ dotnet snowflake install-all

This command will build and install all support modules required for Snowflake to be functional to your application data directory (%appdata%\snowflake\modules or ~/.snowflake/snowflake/modules on Linux). Note that you may have to delete the installed module assembly.Snowflake.Framework.Test.InvalidComposable, which is designed deliberately to error on load, however this is not necessary.

As well, input management APIs are currently only available on Windows. Attempting to use these APIs on Linux will fail to enumerate any device.

Legal

Snowflake is licensed under the Mozilla Public License 2.0 (MPL2). Since May 1, 2016, this license is retroactively applied to all prior copies of Snowflake's source code which may have been licensed under different terms.

Snowflake does not in any way facilitate the download of illegal ROM images or warez of any kind.

snowflake's People

Contributors

chyyran avatar dependabot-preview[bot] avatar dependabot-support avatar dependabot[bot] avatar gitter-badger avatar

Watchers

James Cloos avatar  avatar

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.