Mobile client for official Nextcloud News App written as Kotlin Multiplatform Project

Overview

GitHub Codacy grade Liberapay receiving

Newsout

Android and iOS mobile client for Nextcloud news App. The Android client is already available to download in the Play Store. F-Droid and Apple App Store will hopefully come soon.

Download

Project structure

This project shares the Database, Api, Models and Serialization code. Only the interaction with the UI is done separately for iOS and Android.

Android

iOS

Features

  • Sync of feeds and unread marker
  • List all starred/unread items
  • Change sorting order
  • Add new feeds
  • Rename feeds/folders
  • Delete feeds/folders
  • Star/unstar items
  • Mark all feeds or a single feed as read
  • Explore popular feeds
  • Search for items inside feeds

TODOS

  • Coroutines refactoring
  • Finalize iOS UI
  • System settings enabled dark mode
  • Multi platform localization
  • Empty state screen when no search results

Pull requests are very welcome. Let me know before you start working on a fundamental change.

XCODE DEBUGGING

To debug kotlin files in Xcode install the following Xcode plugin: https://github.com/touchlab/xcode-kotlin

Misc

Compare Dropbox/Google Drive/Nextcloud: https://nextcloud.com/compare

Acknowledgments

https://kotlinlang.org, https://ktor.io, https://github.com/cashapp/sqldelight, https://touchlab.co, https://soywiz.com, https://bumptech.github.io/glide, https://nextcloud.com, https://github.com/nextcloud/news and everyone else I missed to mention.

You might also like...
Gradle plugin for simplify Kotlin Multiplatform mobile configurations
Gradle plugin for simplify Kotlin Multiplatform mobile configurations

Mobile Multiplatform gradle plugin This is a Gradle plugin for simple setup of Kotlin Multiplatform mobile Gradle modules. Setup buildSrc/build.gradle

KaMP Kit by Touchlab is a collection of code and tools designed to get your mobile team started quickly with Kotlin Multiplatform.
KaMP Kit by Touchlab is a collection of code and tools designed to get your mobile team started quickly with Kotlin Multiplatform.

KaMP Kit Welcome to the KaMP Kit! About Goal The goal of the KaMP Kit is to facilitate your evaluation of Kotlin Multiplatform (aka KMP). It is a coll

Playground for learning Kotlin Multiplatform Mobile
Playground for learning Kotlin Multiplatform Mobile

This is a playground for learning KMP (KMM Plugin for android studio). Requirements Android Studio Canary 8 Architecture Thanks https://twitter.com/jo

Ethereum Web3 implementation for mobile (android & ios) Kotlin Multiplatform development

Mobile Kotlin web3 This is a Kotlin MultiPlatform library that ... Table of Contents Features Requirements Installation Usage Samples Set Up Locally C

Location Service Manager for Kotlin Multiplatform Mobile iOS and android
Location Service Manager for Kotlin Multiplatform Mobile iOS and android

Location Service Manager for Kotlin Multiplatform Mobile iOS and android Features Provides simple permission settings Dramatically reduce the amount o

A local storage management library for Kotlin Multiplatform Mobile iOS and android
A local storage management library for Kotlin Multiplatform Mobile iOS and android

A local storage management library for Kotlin Multiplatform Mobile iOS and android Features iOS and Android local storage in one interface Provides ge

Kotlin Multiplatform Mobile version of Tisdagsgolfen... yet another version.

TheCube in Kotlin Multiplatform Experimenting with KMM, and Kotlin, Jetpack, SwiftUI, and all the other new stuff... https://kotlinlang.org/docs/kmm-g

Kotlin Multiplatform Mobile application built using that consumes WakaTime API
Kotlin Multiplatform Mobile application built using that consumes WakaTime API

Kotlin Multiplatform Mobile application built using that consumes WakaTime API ⏱️ to display user's coding stats such as day's or day's of weeks coding time, coding time for various programming languages or worked on projects etc. on various platforms.

🍭 GithubSearchKMM - Github Repos Search - Android - iOS - Kotlin Multiplatform Mobile using Jetpack Compose, SwiftUI, FlowRedux, Coroutines Flow, Dagger Hilt, Koin Dependency Injection, shared KMP ViewModel, Clean Architecture
🍭 GithubSearchKMM - Github Repos Search - Android - iOS - Kotlin Multiplatform Mobile using Jetpack Compose, SwiftUI, FlowRedux, Coroutines Flow, Dagger Hilt, Koin Dependency Injection, shared KMP ViewModel, Clean Architecture

GithubSearchKMM Github Repos Search - Kotlin Multiplatform Mobile using Jetpack Compose, SwiftUI, FlowRedux, Coroutines Flow, Dagger Hilt, Koin Depend

Comments
  • Xcode debugging

    Xcode debugging

    I didn't want to submit a PR as I have no idea if you want this, but I wanted to test setting up Xcode debugging on another project.

    If you want to see Xcode debugging on your project, I have a fork branch with everything set up. More info about Kotlin Xcode debugger: https://hackernoon.com/kotlin-xcode-plugin-64f52ff8dc2a

    https://github.com/kpgalligan/Newsout/tree/kpg/add_xcode_debugging

    opened by kpgalligan 4
  • Breaking change in News 15.1.0

    Breaking change in News 15.1.0

    Brief description of the issue.

    With news 15.1.0 we have a change in the feed attribute "folderId", if the feed is in the root folder the id will be "null" instead of 0.

    See https://github.com/nextcloud/news/issues/939

    How to reproduce the bug?

    1. Install 15.1.0-rc2
    2. sync
    3. ...

    What was the expected result?

    Accept both 0 and null as a value at least for a while to allow for a smooth transition.

    opened by Grotax 0
  • F-Droid

    F-Droid

    It would be great to see this Android app on F-Droid!

    F-Droid is an Android app store specifically for free/libre open-source apps. It would be great if your app could be released there, as it is the number one for getting FLOSS Android apps for many people. F-Droid also builds all apps from source (optionally even reproducible), so downloads from there can be trusted.

    The app developer FAQ or the quick start guide may help you to get started.

    opened by rugk 0
  • "Could not connect" during Nextcloud login

    Hello, I try to login on my Nextcloud account through your app. However, I cannot connect to my server, and the error message is Could not connect. We can find this error message here, but I don't know what to do with it.

    Please, is there any url format I should respect ? I have tried several IP address like

    1. XX.XXX.XXX.XX
    2. XX.XXX.XXX.XX:XXX (with port)
    3. https://XX.XXX.XXX.XX
    4. https://XX.XXX.XXX.XX:XXX (with port)
    

    Could you help please ? Thank you very much

    opened by prog-amateur 1
Owner
Simon Schubert
I'm all in for Kotlin/Kotlin Multiplatform
Simon Schubert
KMM RSS Reader: an open-source, mobile, cross-platform application built with Kotlin Multiplatform Mobile.

KMM RSS Reader This is an open-source, mobile, cross-platform application built with Kotlin Multiplatform Mobile. It's a simple RSS reader, and you ca

Kotlin 1.4k Jan 4, 2023
Kotlin Multiplatform is an SDK for cross-platform mobile development, which enables teams to use the same business logic in both Android and iOS client applications.

Kotlin Multiplatform is an SDK for cross-platform mobile development, which enables teams to use the same business logic in both Android and iOS client applications.

Chris Russell 1 Feb 11, 2022
A sample project that helps to start building a Mobile Kotlin Multiplatform application

Mobile Kotlin multiplatform project template A sample project that helps to start building a Mobile Kotlin Multiplatform application. It establishes a

Dizel 0 Oct 16, 2021
Kotlin-client-dsl - A kotlin-based dsl project for a (Client) -> (Plugin) styled program

kotlin-client-dsl a kotlin-based dsl project for a (Client) -> (Plugin) styled p

jackson 3 Dec 10, 2022
An app architecture for Kotlin/Native on Android/iOS. Use Kotlin Multiplatform Mobile.

An app architecture for Kotlin/Native on Android/iOS. Use Kotlin Multiplatform Mobile. 项目架构主要分为原生系统层、Android/iOS业务SDK层、KMM SDK层、KMM业务逻辑SDK层、iOS sdkfra

libill 4 Nov 20, 2022
Crunch-Mobile - A Food Delivery Mobile App which uses Modern App Architecture Pattern, Firebase And a Simple Restful Api

Crunch-Mobile This is a Food Delivery Mobile App which uses Modern App Architect

Bright Ugwu 1 Jan 1, 2022
Kotlin Multiplatform Mobile App Template

KMMT : Kotlin Multiplatform Mobile Template Kotlin Multiplatform Mobile Development Simplified KMMT is a KMM based project template designed to simpli

Jitty Andiyan 207 Jan 4, 2023
Kotlin Multiplatform Mobile demo for Android and iOS - app for viewing Cat pictures

CatViewerDemo Android demo iOS demo Kotlin Multiplatform Mobile demo for Android and iOS. App for viewing Cat pictures from Cats API. This sample show

Martin Rajniak 111 Dec 18, 2022
MangaKu App Powered by Kotlin Multiplatform Mobile, Jetpack Compose, and SwiftUI

MangaKu ?? Introduction MangaKu App Powered by Kotlin Multiplatform Mobile, Jetpack Compose, and SwiftUI Module core: data and domain layer iosApp: io

Uwais Alqadri 132 Jan 8, 2023
Opinionated Redux-like implementation backed by Kotlin Coroutines and Kotlin Multiplatform Mobile

CoRed CoRed is Redux-like implementation that maintains the benefits of Redux's core idea without the boilerplate. No more action types, action creato

Kittinun Vantasin 28 Dec 10, 2022