lib-cemu

0.6.2 • Public • Published


logo
lib-cemu

Lightweight Node.js library for Cemu utils

Docs - Changelog - License - Features - Installation - Usage - Contributing

npm size license style
dependencies vulnerabilities

Features

lib-cemu is meant to help create Cemu utilities without having to deal with all the annoying stuff or to include huge wrappers.
I was originally planning to create a frontend with these capacities but decided to create a library instead. I think Cemu is here to stay and that the devs shouldn't have to work on these kind of features or build them into the emulator.
And if it's our job, we should have good tools to do it.

lib-cemu is

  • Lightweight. No useless dependencies, just what you need.
  • Promise based. Every function performing async operations returns a Promise. (Or you can use callbacks (but you shouldn't (learn how to use promises (you'll thank me later.))))
  • Well documented. The docs are generated automatically on every commit, so they are always complete and up-to-date.

Profiles

Create different profiles to easily store and switch between savegames and settings.

  • Create, edit and delete
  • Save and load
  • Upload and download from Google Drive

Cemu Releases

Download, install, update, manage settings and more.

  • Download and install
  • Update
  • Manage settings

Games

Manage games and get various information about them.

  • Import games from meta.xml or settings.xml
  • Launch games with a selected profile
  • Parse game information from the Cemu wiki
  • Create custom Steam shortcuts

Misc

  • Save and load shader caches (Sharing shader caches is piracy. Only use yours and do not share them.)

Suggestions

Have any suggestions or feature requests ? Just open an issue.

Installation

# If you use npm >= 5
$ npm i lib-cemu
 
# If you use npm < 5
$ npm i -S lib-cemu
 
# If you use yarn (you should)
$ yarn add lib-cemu

Usage

The library is not ready for production use yet. Check back when 1.0.0 comes out or read the docs.

Contributing

NO CONTRIBUTION RELATED TO PIRACY WILL BE ACCEPTED

Basic

  • Test everything and add test scripts when possible.

Formatting

  • This library uses the JavaScript Standard Style. It is automatically applied when committing and checked when pushing. You can run the lint command to apply it or the lint-test command to check if it is applied.
  • Everything you add should be documented using the JSDoc format and following the style already in use. You can run the docs command to automatically generate the docs. They are also automatically generated when committing.
  • Wrap long lines when possible, this makes everything much more eye-pleasing.

Logic

  • Classes should not be accessible directly but only through functions.
  • Functions containing async operations must return a Promise and accept a callback(error) function as an optional parameter for flexibility. If the function creates something that is not one of the arguments, return it with the promise and pass it to the callback (callback(value, err)).
  • There should be as few dependencies as possible. Keep it small and simple.

Contributors

Raphaël Thériault

Readme

Keywords

Package Sidebar

Install

npm i lib-cemu

Weekly Downloads

1

Version

0.6.2

License

MIT

Unpacked Size

20.7 kB

Total Files

24

Last publish

Collaborators

  • raftario