Skip to content

Android blog app built using Jetpack Compose, Room database, Ktor, Koin, Markdown etc. The app fetches blog data from a GitHub repository (used as a free backend)

Notifications You must be signed in to change notification settings

kotlang-dev/AndroidBlogs

Repository files navigation

📚 Android Blogs App

This is a beginner-friendly Android blog app built using Jetpack Compose. The app fetches blog data from a GitHub repository (used as a free backend) and displays them in a well-formatted and responsive UI. Blogs are written in Markdown and rendered beautifully in the app. The app also supports offline access using Room database.

✨ Features

  • 📰 View blog list with image thumbnails
  • 📖 Read blog content formatted with Markdown
  • 🔄 Smooth shimmer effect during loading
  • 📡 Fetch blogs remotely from GitHub
  • 💾 Offline support using local Room database
  • 🌙 Works in light and dark mode
  • 📅 Blogs are updated without any app update

This is not a static app. Blog content is dynamic and can be updated remotely via GitHub without changing the app codebase.


📸 Screenshots

Blog List Screen Blog Content Screen

🛠️ Built With

  • Jetpack Compose – for modern UI
  • Ktor Client – for network calls
  • Koin – for Dependency Injection
  • Room – for local database and offline access
  • Coil – for image loading
  • Markdown Processor – for rendering blog content
  • GitHub – used as a backend server (stores blog metadata and markdown files)

📂 Project Structure

📁 data/
│ ├── remote/ # Ktor client, DTOs, and remote data source
│ ├── local/ # Room setup, entities, DAO
│ └── repository/ # Repository implementation
📁 domain/ # Domain models and Repository interfaces
📁 presentation/ # UI components and ViewModels


📡 Blog Data Source

All blog content is stored in this repository under:

  • blogs/ – Contains .md Markdown files for blog content
  • images/ – Stores images used in the blogs.

You can easily add more blogs by:

  1. Writing a new blog in Markdown (.md)
  2. Uploading it to the blogs/ folder
  3. Updating the blogs.json file with the blog details

▶️ Tutorial Playlist

📺 Follow the complete step-by-step playlist to build this app from scratch:

🔗 Watch on YouTube (15-part series) Playlist

📝 Author 📝

Check out my Udemy Courses:

Buy Me A Coffee

Happy learning and building amazing Android apps!

About

Android blog app built using Jetpack Compose, Room database, Ktor, Koin, Markdown etc. The app fetches blog data from a GitHub repository (used as a free backend)

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages