Development Guidelines - Touch-N-Stars/Touch-N-Stars GitHub Wiki

Prerequisites

For Android Development

You'll need the following tools and software to develop the Android version of Touch-N-Stars:

Java JDK - Required for Android development with the latest Android API level 34

Node.js 22 - For running the JavaScript/TypeScript codebase

VSCode - Recommended IDE for development

Ionic Extension for VSCode - For Ionic framework support

Android Studio - For Android-specific development and building

For Web App Development

Node.js 22+ - Required for building and running the web application

Getting Started

Clone the Repository

git clone https://github.com/Touch-N-Stars/Touch-N-Stars cd Touch-N-Stars

Android Development Setup

Install Required Software

Install Node.js 22

Install Java JDK

    Ensure JAVA_HOME environment variable is set correctly

    You can verify your installation with java -version

Install VSCode

Install Ionic Extension for VSCode

Install Android Studio

Install Node Packages

bash npm install

Open in VSCode & Build

Open the project in VSCode

Click the Ionic Icon

Under Project, click:

    Build → Build static assets

    Sync → sync build assets into the Android Project

    Open in Android Studio

Configure Android Studio

Make sure Android Studio is using the correct JDK version:

Go to File → Settings → Build, Execution, Deployment → Build Tools → Gradle

Set Gradle JDK to JDK 17

Web App Development

Ensure Node.js 22+ is installed

node -v # Check installed version

Clone the Repository (if not already done)

git clone https://github.com/Touch-N-Stars/Touch-N-Stars cd Touch-N-Stars

Install Dependencies

npm install

Development Build

npm run serve

Production/Test Build

npm run testbuild

This will build the project and copy it into: %LOCALAPPDATA%\NINA\Plugins\3.0.0\Touch 'N' Stars\app\


Troubleshooting

If you encounter JDK-related issues:

Verify that your JAVA_HOME environment variable is correctly set

Ensure Android Studio is configured to use JDK

Check that Gradle is using the correct JDK version in Android Studio settings