A Java wrapper/implementation for the SwitchBlade UI API
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.



A Java wrapper/implementation for the SwitchBlade UI API

Built using the SwitchBlade UI SDK from Razer.

Based on the SharpBlade library.

This library is under development and not currently usable (as of 2014-01-24).


Contributors are very welcome! If you got code fixes, please submit a pull request here on GitHub.

If you want to join the development team, please contact Sharparam on GitHub.

All authors and contributors are listed in the AUTHORS file.

Please read the wiki page about contributing before submitting pull requests.


Copyright © 2014 by Adam Hellberg and Brandon Scott.

This project is licensed under the MIT license, please see the file LICENSE for more information.

Images in res/images are created by Graham Hough.

Razer is a trademark and/or a registered trademark of Razer USA Ltd. All other trademarks are property of their respective owners.

This project is in no way endorsed, sponsored or approved by Razer.


JBlade depends on the SwitchBlade UI SDK (RzSwitchbladeSDK2.dll).

SwitchBlade UI SDK is provided by Razer and can be obtained from their website.

JBlade depends on the JNA and jna-platform libraries, both version 4.0.0. JNA and the platform library can be found in Maven repositories (net.java.dev.jna:jna:4.0.0 and net.java.dev.jna:jna-platform:4.0.0).

JBlade depends on the log4j library, version 2.0-beta9. log4j can be found in Maven repositories (org.apache.logging.log4j:log4j-api:2.0-beta9 and org.apache.logging.log4j:log4j-core:2.0-beta9).

Debugging / Logging

log4j (the logging library that JBlade uses) outputs log information to the standard output stream by default, if it fails to detect any log4j config information in the classpath.

If you want log4j to output to a file, you can put the following in your classpath (working directory of the application should work):

<?xml version="1.0" encoding="UTF-8" ?>
<Configuration status="warn" name="JBlade">
    <File name="File" fileName="app.log" append="false"> <!-- Change filename if desired -->
      <PatternLayout pattern="%d{ISO8601} [%t] %-5level %logger{36} - %msg%n" />
    <Root level="info"> <!-- Change "info" to "debug" to make logging more verbose -->
      <AppenderRef ref="File" />

This will cause log output to be saved in a file named "app.log" in the same directory as the application.


Current projects utilizing this or modified versions of this library:

  • None

(If you want your project listed, just contact Sharparam or Brandon)