This project is an Xbox controller tester application built using C#. It allows users to view the status of their Xbox controller in real-time, including the state of analog sticks, triggers, buttons, and motor vibrations.
- C#: The programming language used for developing the application.
- WPF (Windows Presentation Foundation): For building the graphical user interface.
- SharpDX.XInput: A library used to interact with the Xbox controller.
The project consists of the following main components:
MainWindow.xaml
: The XAML file that defines the layout of the application's user interface.MainWindow.xaml.cs
: The code-behind file that contains the logic for interacting with the Xbox controller and updating the UI.app.config
: Configuration file for application settings (if needed).
- Analog Sticks: Displays the position of the left and right analog sticks.
- Triggers: Shows the pressure applied to the left and right triggers.
- Buttons: Indicates the pressed state of all buttons (A, B, X, Y, LB, RB, Start, Back, D-Pad).
- Motor States: Displays the state of the controller's vibration motors.
-
Clone the Repository:
git clone https://github.com/Kevoyuan/JoystiX cd JoystiX
-
Open in Visual Studio: Open the solution file JoystiX.sln in Visual Studio.
-
Restore NuGet Packages: Restore the required NuGet packages, especially SharpDX.XInput.
-
Build and Run: Build the project and run the application. Ensure your Xbox controller is connected.
- The application is designed to run on a local development environment.
- The user interface should be intuitive and easy to use, with basic validations to ensure data integrity.
- ASP.NET Core API: Chosen for its efficiency in creating RESTful APIs, ease of integration, and support for essential middleware configurations.
- JavaScript: Used for dynamic manipulation of the interface, making the application more responsive and interactive.
- HTML/CSS: To ensure a semantic structure and good visual presentation of the application.
- Custom CSS styling for the interface.
- API following RESTful standards with good naming practices and proper use of HTTP methods.
This project aims to demonstrate skills in web development using C# and ASP.NET Core, along with good coding practices and code organization. The reminder system provides a solid foundation for future expansions and improvements.