Skip to main content

Installation Guide

This guide will walk you through setting up TecMeli on your local machine. The process is straightforward and should take about 10-15 minutes.

Prerequisites

Before you begin, ensure you have the following installed:

Required Software

1

Android Studio

Download and install Android Studio Ladybug | 2026.1.1 or later.TecMeli uses the latest Android development tools and requires a recent version of Android Studio.
2

JDK 11 or Higher

TecMeli requires Java 11 for compilation. Android Studio typically includes a compatible JDK.Verify your Java version:
java -version
The project’s build configuration specifies:
build.gradle.kts
compileOptions {
    sourceCompatibility = JavaVersion.VERSION_11
    targetCompatibility = JavaVersion.VERSION_11
}
3

Git

Install Git for version control:
git --version

System Requirements

ComponentMinimumRecommended
RAM8 GB16 GB or more
Disk Space4 GB8 GB or more
OSWindows 10, macOS 10.14, LinuxLatest stable release
The Gradle build system will download additional dependencies automatically during the first build. Ensure you have a stable internet connection.

Clone the Repository

Clone the TecMeli repository to your local machine:
Terminal
git clone https://github.com/yourusername/tecmeli.git
cd tecmeli
If you plan to contribute to the project, consider forking the repository first and cloning your fork.

Project Structure Overview

After cloning, you’ll see the following structure:
tecmeli/
├── app/                    # Main application module
│   ├── src/
│   │   ├── main/
│   │   │   ├── java/       # Kotlin source files
│   │   │   └── res/        # Android resources
│   │   └── test/           # Unit tests
│   └── build.gradle.kts    # App-level build configuration
├── gradle/                 # Gradle wrapper and version catalog
│   └── libs.versions.toml  # Centralized dependency versions
├── build.gradle.kts        # Project-level build configuration
├── settings.gradle.kts     # Project settings
├── local.properties        # Local configuration (you'll create this)
└── README.md               # Project documentation

SDK Configuration

TecMeli targets the latest Android SDK versions:
app/build.gradle.kts
android {
    namespace = "com.alcalist.tecmeli"
    compileSdk = 36

    defaultConfig {
        applicationId = "com.alcalist.tecmeli"
        minSdk = 26        // Android 8.0 (Oreo)
        targetSdk = 36
        versionCode = 1
        versionName = "1.0"
    }
}

Install Required SDK Components

1

Open Android Studio

Launch Android Studio and open the cloned TecMeli project
2

SDK Manager

Navigate to Tools → SDK Manager or click the SDK Manager icon in the toolbar
3

Install SDK Platform 36

In the SDK Platforms tab, check:
  • Android API 36 (latest)
  • Android 8.0 (Oreo) API 26 (minimum supported)
4

Install Build Tools

In the SDK Tools tab, ensure you have:
  • Android SDK Build-Tools
  • Android SDK Platform-Tools
  • Android SDK Command-line Tools
  • Android Emulator (if you don’t have a physical device)

Gradle Sync

Android Studio will automatically trigger a Gradle sync when you open the project. This process:
  1. Downloads all dependencies specified in libs.versions.toml
  2. Configures the build system
  3. Indexes the codebase

Key Dependencies

The project uses these major dependencies (from gradle/libs.versions.toml):
libs.versions.toml
[versions]
kotlin = "2.3.10"
composeBom = "2026.02.01"
hilt = "2.59.2"
retrofit = "3.0.0"
okhttp = "4.11.0"

[libraries]
# Jetpack Compose
androidx-compose-bom = { group = "androidx.compose", name = "compose-bom", version.ref = "composeBom" }
androidx-compose-material3 = { group = "androidx.compose.material3", name = "material3" }

# Dependency Injection
hilt-android = { group = "com.google.dagger", name = "hilt-android", version.ref = "hilt" }
hilt-compiler = { group = "com.google.dagger", name = "hilt-compiler", version.ref = "hilt" }

# Networking
retrofit = { group = "com.squareup.retrofit2", name = "retrofit", version.ref = "retrofit" }
retrofit-converter-gson = { group = "com.squareup.retrofit2", name = "converter-gson", version.ref = "retrofit" }
okhttp = { group = "com.squareup.okhttp3", name = "okhttp", version.ref = "okhttp" }
The first Gradle sync may take 5-10 minutes depending on your internet connection. Gradle will download hundreds of megabytes of dependencies.

Build Plugins

TecMeli uses several Gradle plugins configured in app/build.gradle.kts:
app/build.gradle.kts
plugins {
    alias(libs.plugins.android.application)
    alias(libs.plugins.kotlin.compose)
    alias(libs.plugins.hilt)
    alias(libs.plugins.ksp)                    // Kotlin Symbol Processing for Hilt
    kotlin("plugin.serialization") version "2.0.21"
    jacoco                                      // Code coverage
}

Plugin Responsibilities

  • android.application: Core Android app plugin
  • kotlin.compose: Kotlin compiler plugin for Compose
  • hilt: Dependency injection code generation
  • ksp: Annotation processing for Hilt (faster than kapt)
  • serialization: JSON serialization support
  • jacoco: Test coverage reporting

Verify Installation

After Gradle sync completes successfully, verify your installation:

1. Build the Project

Terminal
./gradlew build
This command:
  • Compiles all Kotlin source files
  • Processes annotations for Hilt
  • Runs lint checks
  • Executes unit tests
On Windows, use gradlew.bat instead of ./gradlew

2. Run Tests

Run the unit test suite to ensure everything is working:
Terminal
./gradlew test
TecMeli includes tests for:
  • Repository implementations
  • Use cases
  • ViewModels
  • Network layer (with MockWebServer)

3. Generate Test Coverage Report

Terminal
./gradlew jacocoTestReport
The custom Jacoco task will show coverage information:
📊 COVERAGE REPORT
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
✓ Coverage data found:
  Path: app/build/jacoco/testDebugUnitTest.exec
  Size: 12345 bytes

✓ Test execution completed successfully

Troubleshooting

Gradle Sync Fails

Solution: Ensure you’re using JDK 11 or higher.In Android Studio:
  1. Go to File → Project Structure → SDK Location
  2. Set the JDK location to a Java 11+ installation
Solution: Check your internet connection and Gradle cache.
./gradlew clean --refresh-dependencies
Solution: Update your Gradle version.The project uses KSP version 2.0.21-1.0.27 which requires Gradle 8.0+

Build Fails

Solution: Ensure build features are enabled in app/build.gradle.kts:
buildFeatures {
    compose = true
    buildConfig = true
}

Next Steps

Now that you have TecMeli installed, you need to configure your Mercado Libre API credentials:

Configuration

Learn how to set up API credentials and configure the application
Join the community! If you encounter any issues during installation, check the GitHub Issues or open a new issue.

Build docs developers (and LLMs) love