Skip to content

UniverseKing4/GitCode

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

13 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

GitCode - Professional Mobile IDE for Android

A fully-featured, professional mobile IDE for Android with GitHub integration, advanced code editing, large file support, and modern development tools.

Latest Release License Android

Download APK β€’ Report Bug β€’ Request Feature


🌟 Overview

GitCode transforms your Android device into a powerful development environment. Write, edit, and manage code projects of any size with professional-grade features including syntax highlighting, intelligent large file handling, GitHub integration, and polished UI/UX.

✨ Key Features

🎨 Advanced Code Editor

  • Multi-Language Syntax Highlighting - Support for Java, JavaScript, Python, C/C++, Go, Rust, PHP, Ruby, Swift, Kotlin, HTML, CSS, and more
  • Smart Line Numbers - Dynamic, perfectly aligned line numbers that scale with your code
  • Large File Support - Intelligent chunking for files >10KB or 1000+ lines with seamless navigation
  • Bracket Matching - Click any bracket to highlight its matching pair
  • Auto-Indent & Auto-Brackets - Intelligent code formatting as you type
  • Customizable Font Size - Adjustable from 10sp to 30sp for comfortable coding
  • Word Wrap - Toggle word wrapping for long lines
  • Undo/Redo - Full undo/redo support with visual feedback
  • Go to Line/Part - Jump to any line or file section instantly

πŸ“‘ Tabbed Interface

  • Open multiple files simultaneously
  • Horizontal scrolling for unlimited tabs
  • Quick tab switching with visual indicators
  • Individual close buttons on each tab
  • Active tab highlighting
  • Seamless file navigation

πŸ”— GitHub Integration

  • Clone Repositories - Clone any public/private GitHub repository via URL
  • Smart Push - Automatically detects and pushes only modified files
  • Pull Changes - Sync your local project with remote repository
  • File Deletion Detection - Automatically removes deleted files from GitHub
  • Multiple Profiles - Switch between different GitHub accounts with ease
  • Secure Authentication - Personal Access Token support with encrypted storage

πŸ“ Project Management

  • Create and manage multiple projects
  • Organize files and folders with intuitive UI
  • Rename, delete, and move files/folders
  • File selection mode with batch operations
  • Project statistics (file count, folder count, lines of code, character count)
  • Recent projects list on home screen
  • Auto-save functionality

🎯 Developer Tools

  • Find & Replace - Search and replace text across files with occurrence tracking
  • Auto-Save - Never lose your work with automatic saving
  • Keyboard Shortcuts - Efficient coding with shortcuts
  • File Browser - Expandable/collapsible folder tree with drawer navigation
  • Welcome Messages - Helpful prompts when no files are open
  • Toast Notifications - Clear feedback for all operations

πŸŒ™ Modern UI/UX

  • Dark Mode - Eye-friendly dark theme (default) with consistent styling
  • Light Mode - Clean light theme option
  • Themed Dialogs - All dialogs match your selected theme
  • Compact Toolbar - Efficient use of screen space with emoji icons
  • Responsive Design - Optimized for all screen sizes
  • Smooth Animations - Polished user experience with no lag
  • Professional Layout - Clean, intuitive interface

πŸ“Έ Screenshots

(Coming soon)

πŸš€ Getting Started

Installation

Option 1: Download Pre-built APK (Recommended)

  1. Go to Releases
  2. Download the latest app-release-signed.apk
  3. Install on your Android device
  4. Grant necessary permissions when prompted

Option 2: Build from Source

# Clone the repository
git clone https://github.com/UniverseKing4/GitCode.git
cd GitCode

# Build with Gradle
./gradlew assembleRelease

# APK will be at: app/build/outputs/apk/release/

First-Time Setup

  1. Launch GitCode - Open the app after installation
  2. Create a Project - Tap "New Project" and enter a name
  3. Set Up GitHub (Optional)
    • Tap "πŸ‘€ GitHub Profiles"
    • Add your GitHub username and Personal Access Token
    • Save the profile

Creating a GitHub Personal Access Token

  1. Visit GitHub Settings β†’ Tokens
  2. Click "Generate new token" β†’ "Generate new token (classic)"
  3. Give it a descriptive name (e.g., "GitCode Mobile")
  4. Select scopes:
    • βœ… repo (Full control of private repositories)
  5. Click "Generate token"
  6. Copy the token immediately (you won't see it again!)
  7. Paste it into GitCode when adding a profile

πŸ“– Usage Guide

Creating Your First Project

  1. Tap "New Project" on the home screen
  2. Enter a project name
  3. Tap "Create"
  4. Start coding!

Working with Files

  • Create File: Tap "File" β†’ Enter filename with extension
  • Create Folder: Tap "Folder" β†’ Enter folder name
  • Open File: Tap any file in the file browser
  • Rename: Long-press file β†’ Select "Rename"
  • Delete: Long-press file β†’ Select "Delete"
  • Select Multiple: Tap "Select" β†’ Check files β†’ Tap "Actions"

GitHub Workflow

Clone a Repository

  1. Tap "Clone Repository" on home screen
  2. Enter full GitHub URL (e.g., https://github.com/username/repo)
  3. Select your GitHub profile
  4. Tap "Clone"

Push Changes

  1. Make changes to your files
  2. Tap πŸ’Ύ Save (or auto-save handles it)
  3. Tap πŸš€ Push
  4. Enter commit message
  5. Changes are pushed to GitHub

Pull Changes

  1. Open your project
  2. Tap Menu (☰) β†’ "Pull from GitHub"
  3. Select your profile
  4. Local files sync with remote repository

Customizing Settings

  1. Tap "βš™ Settings" on home screen
  2. Adjust Font Size with slider (10-30sp)
  3. Toggle Theme between Dark/Light mode
  4. Tap "Save" to apply changes

🎨 Supported Languages

Syntax highlighting is automatically applied for:

Language Extensions
Java .java
JavaScript .js, .jsx
TypeScript .ts, .tsx
Python .py
HTML .html, .htm
CSS .css, .scss, .sass
C/C++ .c, .cpp, .h, .hpp
Go .go
Rust .rs
PHP .php
Ruby .rb
Swift .swift
Kotlin .kt
JSON .json
YAML .yaml, .yml
XML .xml

Plain text files (.txt, .md, etc.) display without syntax highlighting.

βš™οΈ Technical Details

Requirements

  • Android Version: 5.0 (Lollipop) or higher
  • Permissions:
    • INTERNET - GitHub API communication
    • READ_EXTERNAL_STORAGE - File access
    • WRITE_EXTERNAL_STORAGE - File operations
    • MANAGE_EXTERNAL_STORAGE - Project management

Architecture

  • Language: Java
  • UI Framework: Native Android Views
  • Storage: SharedPreferences for settings, local filesystem for projects
  • API: GitHub REST API v3
  • Build System: Gradle
  • CI/CD: GitHub Actions (automatic APK builds and releases)

Security

  • Credentials stored locally using Android SharedPreferences
  • Personal Access Tokens never logged or transmitted except to GitHub API
  • HTTPS-only communication with GitHub
  • No third-party analytics or tracking

πŸ”§ Development

Project Structure

GitCode/
β”œβ”€β”€ app/src/main/
β”‚   β”œβ”€β”€ java/com/github/actions/
β”‚   β”‚   β”œβ”€β”€ ProjectsActivity.java    # Home screen & project management
β”‚   β”‚   β”œβ”€β”€ IDEActivity.java         # Main code editor
β”‚   β”‚   └── GitHubAPI.java           # GitHub integration
β”‚   β”œβ”€β”€ res/
β”‚   β”‚   β”œβ”€β”€ drawable/                # Icons and graphics
β”‚   β”‚   β”œβ”€β”€ mipmap-*/                # Launcher icons
β”‚   β”‚   └── layout/                  # XML layouts
β”‚   └── AndroidManifest.xml
β”œβ”€β”€ .github/workflows/
β”‚   └── android.yml                  # CI/CD pipeline
└── README.md

Building Locally

Prerequisites:

  • Android Studio Arctic Fox or later
  • JDK 11 or higher
  • Android SDK 30+

Steps:

  1. Open project in Android Studio
  2. Sync Gradle files
  3. Build β†’ Build Bundle(s) / APK(s) β†’ Build APK(s)
  4. APK location: app/build/outputs/apk/release/

Contributing

Contributions are welcome! Please:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

πŸ› Known Issues

  • GitHub API rate limits apply (60 requests/hour unauthenticated, 5000/hour authenticated)

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ™ Acknowledgments

  • Built with ❀️ for mobile developers
  • Inspired by professional desktop IDEs
  • Thanks to the Android and GitHub communities

πŸ“ž Support


Made with ❀️ for developers who code on the go

⭐ Star this repo if you find it useful!

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Packages

 
 
 

Contributors