<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Nagodip</title>
    <description>The latest articles on DEV Community by Nagodip (@nagodip_d219dc4e3a7f8cbb3).</description>
    <link>https://dev.to/nagodip_d219dc4e3a7f8cbb3</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3994894%2F110a1238-57a7-439a-99e6-8bb940a78f1a.png</url>
      <title>DEV Community: Nagodip</title>
      <link>https://dev.to/nagodip_d219dc4e3a7f8cbb3</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/nagodip_d219dc4e3a7f8cbb3"/>
    <language>en</language>
    <item>
      <title>Build Native Android Java/XML Apps Without Android Studio</title>
      <dc:creator>Nagodip</dc:creator>
      <pubDate>Sun, 21 Jun 2026 05:09:33 +0000</pubDate>
      <link>https://dev.to/nagodip_d219dc4e3a7f8cbb3/build-native-android-javaxml-apps-without-android-studio-4pej</link>
      <guid>https://dev.to/nagodip_d219dc4e3a7f8cbb3/build-native-android-javaxml-apps-without-android-studio-4pej</guid>
      <description>&lt;h2&gt;
  
  
  I built Oviora Builder: a lightweight native Android Java/XML CLI builder
&lt;/h2&gt;

&lt;p&gt;Android Studio is powerful, but for many beginners it is also heavy.&lt;/p&gt;

&lt;p&gt;If you are using a low-spec PC, Android Studio can become slow before you even start building your first app. Indexing, Gradle sync, emulator setup, and the deep Android folder structure can make native Android development feel difficult.&lt;/p&gt;

&lt;p&gt;So I built &lt;strong&gt;Oviora Builder&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;Oviora Builder is a lightweight command-line tool for creating real native Android Java/XML projects without opening the Android Studio GUI.&lt;/p&gt;

&lt;p&gt;Website: &lt;a href="https://oviora-builder.netlify.app/" rel="noopener noreferrer"&gt;https://oviora-builder.netlify.app/&lt;/a&gt;&lt;br&gt;
NPM: &lt;a href="https://www.npmjs.com/package/oviora-builder" rel="noopener noreferrer"&gt;https://www.npmjs.com/package/oviora-builder&lt;/a&gt;&lt;br&gt;
GitHub: &lt;a href="https://github.com/nagodip7-sys/oviora-builder" rel="noopener noreferrer"&gt;https://github.com/nagodip7-sys/oviora-builder&lt;/a&gt;&lt;/p&gt;


&lt;h2&gt;
  
  
  What is Oviora Builder?
&lt;/h2&gt;

&lt;p&gt;Oviora Builder is a Node.js CLI tool that creates and manages native Android projects.&lt;/p&gt;

&lt;p&gt;It uses:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Java&lt;/li&gt;
&lt;li&gt;XML layouts&lt;/li&gt;
&lt;li&gt;Android SDK&lt;/li&gt;
&lt;li&gt;Gradle&lt;/li&gt;
&lt;li&gt;ADB&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;It creates a real Android project, builds the APK, installs it on a connected Android phone, and launches the app.&lt;/p&gt;

&lt;p&gt;It is not a WebView builder.&lt;/p&gt;

&lt;p&gt;It is not Cordova.&lt;br&gt;
It is not Capacitor.&lt;br&gt;
It is not Flutter.&lt;br&gt;
It is not React Native.&lt;/p&gt;

&lt;p&gt;It generates real native Android Java/XML project files.&lt;/p&gt;


&lt;h2&gt;
  
  
  Install
&lt;/h2&gt;


&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npm &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;-g&lt;/span&gt; oviora-builder
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Create your first app
&lt;/h2&gt;


&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;oviora create MyApp
&lt;span class="nb"&gt;cd &lt;/span&gt;MyApp
oviora br
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;p&gt;That single &lt;code&gt;oviora br&lt;/code&gt; command will:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Sync your beginner workspace&lt;/li&gt;
&lt;li&gt;Build the debug APK&lt;/li&gt;
&lt;li&gt;Install it on your connected Android phone&lt;/li&gt;
&lt;li&gt;Launch the app&lt;/li&gt;
&lt;/ol&gt;


&lt;h2&gt;
  
  
  Why I built it
&lt;/h2&gt;

&lt;p&gt;A normal native Android project has folders like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;app/src/main/java/...
app/src/main/res/layout/...
app/src/main/res/drawable/...
app/src/main/AndroidManifest.xml
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;For beginners, this can feel complex.&lt;/p&gt;

&lt;p&gt;Oviora Builder gives a simpler workspace:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;oviora/
  layout/
  java/
  images/
  firebase/
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The beginner edits files inside &lt;code&gt;oviora/&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;The builder syncs them into the real Android project automatically.&lt;/p&gt;

&lt;p&gt;So you get the simplicity of a beginner workspace while still keeping the output native.&lt;/p&gt;




&lt;h2&gt;
  
  
  The main idea
&lt;/h2&gt;

&lt;p&gt;Android Studio is a full IDE.&lt;/p&gt;

&lt;p&gt;Oviora Builder is not trying to replace all of Android Studio.&lt;/p&gt;

&lt;p&gt;The goal is different:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Make native Android Java/XML development easier for beginners and possible on low-spec PCs.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;It removes the heavy IDE layer but keeps the native Android build system.&lt;/p&gt;




&lt;h2&gt;
  
  
  Comparison
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Tool&lt;/th&gt;
&lt;th&gt;Language&lt;/th&gt;
&lt;th&gt;Output&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;React Native&lt;/td&gt;
&lt;td&gt;JavaScript / TypeScript&lt;/td&gt;
&lt;td&gt;Native UI through JS bridge&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Flutter&lt;/td&gt;
&lt;td&gt;Dart&lt;/td&gt;
&lt;td&gt;Skia-rendered UI&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Cordova / Capacitor&lt;/td&gt;
&lt;td&gt;HTML / CSS / JS&lt;/td&gt;
&lt;td&gt;WebView wrapper&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Android Studio&lt;/td&gt;
&lt;td&gt;Java / Kotlin + XML / Compose&lt;/td&gt;
&lt;td&gt;Native Android&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Oviora Builder&lt;/td&gt;
&lt;td&gt;Java + XML&lt;/td&gt;
&lt;td&gt;Native Android&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Oviora Builder is focused on one specific use case:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;native Java/XML Android apps from a simple CLI workflow.&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  Current commands
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;oviora
oviora doctor
oviora create MyApp
oviora &lt;span class="nb"&gt;sync
&lt;/span&gt;oviora build
oviora run
oviora br
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  &lt;code&gt;oviora doctor&lt;/code&gt;
&lt;/h3&gt;

&lt;p&gt;Checks your system:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;oviora doctor
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;It checks tools like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Node.js&lt;/li&gt;
&lt;li&gt;npm&lt;/li&gt;
&lt;li&gt;Java&lt;/li&gt;
&lt;li&gt;ADB&lt;/li&gt;
&lt;li&gt;Gradle&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  &lt;code&gt;oviora create&lt;/code&gt;
&lt;/h3&gt;

&lt;p&gt;Creates a new Android project:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;oviora create MyApp
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  &lt;code&gt;oviora br&lt;/code&gt;
&lt;/h3&gt;

&lt;p&gt;Build + run shortcut:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;oviora br
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This is the main beginner command.&lt;/p&gt;




&lt;h2&gt;
  
  
  Example workflow
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npm &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;-g&lt;/span&gt; oviora-builder
oviora doctor
oviora create MyFirstApp
&lt;span class="nb"&gt;cd &lt;/span&gt;MyFirstApp
oviora br
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;After that, edit files inside:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;oviora/layout/
oviora/java/
oviora/images/
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Then run again:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;oviora br
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  Who is this for?
&lt;/h2&gt;

&lt;p&gt;Oviora Builder is useful for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Beginners learning Android development&lt;/li&gt;
&lt;li&gt;Students with low-spec laptops&lt;/li&gt;
&lt;li&gt;Developers who want native Java/XML output&lt;/li&gt;
&lt;li&gt;People who do not want WebView-based apps&lt;/li&gt;
&lt;li&gt;People who want to build and install APKs from the terminal&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Current status
&lt;/h2&gt;

&lt;p&gt;Current version:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;v0.1.0
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Working:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Project creation&lt;/li&gt;
&lt;li&gt;Workspace generation&lt;/li&gt;
&lt;li&gt;Java/XML native project structure&lt;/li&gt;
&lt;li&gt;APK debug build&lt;/li&gt;
&lt;li&gt;APK install using ADB&lt;/li&gt;
&lt;li&gt;App launch on connected phone&lt;/li&gt;
&lt;li&gt;Basic error helper&lt;/li&gt;
&lt;li&gt;NPM global install&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;NPM package:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;npm &lt;span class="nb"&gt;install&lt;/span&gt; &lt;span class="nt"&gt;-g&lt;/span&gt; oviora-builder
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  Current limitations
&lt;/h2&gt;

&lt;p&gt;Oviora Builder is still early.&lt;/p&gt;

&lt;p&gt;Current v0.1 does not yet include:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Automatic Android SDK installation&lt;/li&gt;
&lt;li&gt;Automatic JDK installation&lt;/li&gt;
&lt;li&gt;Release APK signing&lt;/li&gt;
&lt;li&gt;AAB generation&lt;/li&gt;
&lt;li&gt;Plugin system&lt;/li&gt;
&lt;li&gt;Visual XML designer&lt;/li&gt;
&lt;li&gt;Auto camera/microphone generators&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The current goal is simple:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Create → Sync → Build → Install → Launch
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  Why this matters
&lt;/h2&gt;

&lt;p&gt;Many beginner developers want to build Android apps, but their machines cannot comfortably run Android Studio.&lt;/p&gt;

&lt;p&gt;A lightweight CLI can make the first step easier.&lt;/p&gt;

&lt;p&gt;Oviora Builder keeps the output native, but makes the workflow simpler.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;oviora create MyApp
&lt;span class="nb"&gt;cd &lt;/span&gt;MyApp
oviora br
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;That is the main idea.&lt;/p&gt;




&lt;h2&gt;
  
  
  Links
&lt;/h2&gt;

&lt;p&gt;Website: &lt;a href="https://oviora-builder.netlify.app/" rel="noopener noreferrer"&gt;https://oviora-builder.netlify.app/&lt;/a&gt;&lt;br&gt;
NPM: &lt;a href="https://www.npmjs.com/package/oviora-builder" rel="noopener noreferrer"&gt;https://www.npmjs.com/package/oviora-builder&lt;/a&gt;&lt;br&gt;
GitHub: &lt;a href="https://github.com/nagodip7-sys/oviora-builder" rel="noopener noreferrer"&gt;https://github.com/nagodip7-sys/oviora-builder&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If you try it, feedback is welcome.&lt;/p&gt;

</description>
      <category>android</category>
      <category>opensource</category>
      <category>java</category>
      <category>cli</category>
    </item>
  </channel>
</rss>
