The Free & Open Source Android Application for reading (Light) Novels

Overview

Dev Status Master Status

logo Shosetsu

The Free & Open Source Android Application for reading (Light) Novels!

We appreciate any help in improving the app, so let us know by opening an issue.

Download Development! There is no mainline ;-;

Get it directly!

Join us on our Discord server:

Discord Channel

Capabilities:

  • Many sources to read from!
  • Add the ones you like to your library!
  • Single button press to get all the latest chapters!
  • Settings that make you wonder what happened!
  • Completely customizable reader! [1]
  • Awesome UI!
  • Fast fast fast!

[1] Using HTML reader

Screenshots:

Your own catalog!

Novels!

Customization!

Thank you Sweet0Potato#9784 for the CSS

Sources for all!

Downloading!

Keep track!

Comments
  • APP CRASH WHEN TRY TO OPEN NOVEL

    APP CRASH WHEN TRY TO OPEN NOVEL

    EXPECTED BEHAVIOR

    this application will open the novel well so that users can read whatever novels they want

    ACTUAL BEHAVIOR

    when the user wants to open a novel to read, before the novel is fully loaded this application will stop working and crash.

    STEP TO REPRODUCE

    • download and install the app
    • open the app
    • click on tree line on the left side
    • click on catalogue
    • chose novel full or box novel
    • wait for a second and novel list will appear
    • then chose any novel you want to read
    • note the error

    BUG RECORDING

    https://youtu.be/iVlBxn0cJ_g

    LOGCAT

    Process: com.github.doomsdayrs.apps.shosetsu, PID: 3491
    java.lang.RuntimeException: An error occured while executing doInBackground()
    	at android.os.AsyncTask$3.done(AsyncTask.java:304)
    	at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:355)
    	at java.util.concurrent.FutureTask.setException(FutureTask.java:222)
    	at java.util.concurrent.FutureTask.run(FutureTask.java:242)
    	at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)
    	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
    	at java.lang.Thread.run(Thread.java:818)
    Caused by: java.lang.NoSuchMethodError: No static method encodeBase64String([B)Ljava/lang/String; in class Lorg/apache/commons/codec/binary/Base64; or its super classes (declaration of 'org.apache.commons.codec.binary.Base64' appears in /system/framework/ext.jar)
    	at com.github.doomsdayrs.apps.shosetsu.backend.database.Database.serialize(Database.java:126)
    	at com.github.doomsdayrs.apps.shosetsu.backend.database.Database.access$000(Database.java:54)
    	at com.github.doomsdayrs.apps.shosetsu.backend.database.Database$DatabaseChapter.addToChapters(Database.java:464)
    	at com.github.doomsdayrs.apps.shosetsu.backend.async.NovelLoader.doInBackground(NovelLoader.java:86)
    	at com.github.doomsdayrs.apps.shosetsu.backend.async.NovelLoader.doInBackground(NovelLoader.java:42)
    	at android.os.AsyncTask$2.call(AsyncTask.java:292)
    	at java.util.concurrent.FutureTask.run(FutureTask.java:237)
    	... 4 more```
    opened by muhammadarif1 12
  • [Bug] chapters don't load

    [Bug] chapters don't load

    Process Open novelfull Search title Overgeared and "I alone level up" tested Refresh to load into. Description loads Chapter list does NOT. Although it looks like it downloads.

    ZomboDroid 21122019143308

    opened by BanditKingJing 7
  • [WIP: Do merge] Improve how Preferences are handled

    [WIP: Do merge] Improve how Preferences are handled

    Refactor out all preferences to preference helper.

    Initial Commit for Preferences

    • Add dependency:

      • kotlin
      • preferences
    • Add files

      • PreferenceKeys
      • PreferencesHelper
    opened by hXtreme 7
  • [Bug] [2186] Heavy lag occours and accumulate over time after normal use

    [Bug] [2186] Heavy lag occours and accumulate over time after normal use

    Describe the bug Heavy lag occours and increse over time with normal use of the app.

    To Reproduce Steps to reproduce the behavior:

    1. start reading until tge scrolling of the reader starts to lag, it happens every time and it just needs time using the app without closing it.

    Expected behavior no lag while using the app

    Screenshots

    https://user-images.githubusercontent.com/75091899/169690513-7ec2a1e6-31f3-4c6a-b488-a36a56a309db.mp4

    Device information:

    • OS: Android 8
    • App Version: 2.0 r2186

    over time the lag gets heavier and heavier. to resolve it i close the app and it returns to normal

    bug 
    opened by Palloxin 6
  • [F-R]Top margin padding

    [F-R]Top margin padding

    Is your feature request related to a problem? Please describe. Frankly, I would consider this a problem. When using the reader, there is no space between the top text, and the edge of the screen. It also is frequently covered by the top 'chapter number' bar which is rather annoying to have to somehow hide each and every chapter.

    Describe the solution you'd like There are a few solutions, but the one I'd like is a combination. Adding some padding to the top margin, and being able to disable the top chapter indicator. After so long, it bugs out anyway.

    Describe alternatives you've considered

    • Increasing the padding so that it is below the chapter indicator
    • putting the chapter indicator in line with the text, so the text stays below it -make it easier to hide the top bar

    Additional context Add any other context or screenshots about the feature request here. Screenshot_20210717-093417.jpg Screenshot_20210717-093407.jpg

    enhancement 
    opened by RunicAce 6
  • Multiple optimizations for performance

    Multiple optimizations for performance

    • Add Immutable annotation to UI models. Its for describing that the model wont change to the compose compiler, making it generate more optimized code. For this I replaced all var variables with val to guarantee this.
    • Add UIUpdates UI model for pre-calculated time display This allows for the time string to be calculated outside the UI thread, since string formatting is expensive.
    • Found a extra ComposeView lol
    • Use Empty collections where possible I was seeing a lot of empty collections being made and each of those while dont take much space, have a location in memory. Using the empty collection functions removes those extra allocations.
    • Improve performance of chapter lists by using pre-calculated values for the same reason I added the UI models.
    • Dont remember derivedStateOf derivedStateOf needs to watch values outside the remember function, remembering a derivedStateOf only works if it can directly access the mutableStateOf of the variables
    • Set MutableStateFlow.value instead of .emit MutableStateFlow is made for watching a state of a value, if you set .value it will first check if its equal to the last value and only emit the new value if its not(since it always emits the latest value on collect, and .emit doesnt set the value, it can emit a old value by accident). You shouldn't use .emit or .tryEmit on a MutableStateFlow, if you need a flow where you can emit independent of the previous value, while keeping track of the last value, you should be using a MutableSharedFlow with a replay value of 1.
    opened by jobobby04 5
  • Spanish translation

    Spanish translation

    • [ ] https://github.com/shosetsuorg/android-app/issues/165
    • [x] a human manually correcting the machine translation
    • [ ] a Spanish native verifying the translations
    opened by khonkhortisan 5
  • [F-R] Option to cancel downloads

    [F-R] Option to cancel downloads

    Is your feature request related to a problem? Please describe. So if I am downloading a few novels with thousands of chapters and some chapters run into a download error (i.e. host not reachable for a time), the download queue is slightly overwhelming.

    Describe the solution you'd like Please give us the possibility to cancel pending downloads, so that those chapters don't fill up the queue. Thanks!

    enhancement 
    opened by Kr4u7 5
  • App crashes sometimes when reopening reading mode

    App crashes sometimes when reopening reading mode

    Every few chapters, when I reach a new chapter, the new chapter only shows the loading symbol but doesn't load. To get past this, I close and reopen reading mode, which sometimes works, but sometimes the app crashes.

    opened by marky123808 5
  • [Bug] Bullet points don't show text

    [Bug] Bullet points don't show text

    Something has been feeling off due to random blank spaces.

    Turns out when a LN has a table the cells don't translate well.

    Here it's used for item descriptions.

    Screenshot_20190926-223900_Shosetsu Screenshot_20190926-224158_Shosetsu http://novelfull.com/the-legendary-moonlight-sculptor/volume-8-chapter-2.html

    enhancement help wanted ux 
    opened by BanditKingJing 5
  • crash when try to open the app

    crash when try to open the app

    EXPECTED BEHAVIOR

    this application should be able to open properly so that users can use this application properly

    ACTUAL BEHAVIOR

    this application will fail to open when the user wants to open and use it!

    STEPS TO REPRODUCE

    • download and install the app
    • open the app and note the error

    BROWSER

    DEVICE: OPPO NEO 6 OS : ANDROID 6.1

    BUG RECORDING

    https://youtu.be/2OViVMDLWRk

    NOTE

    seem like the issue appear caused xml built seem like the problem on this line Caused by: java.lang.RuntimeException: A TaskDescription's primary color should be opaque

    Process: com.github.doomsdayrs.apps.shosetsu, PID: 3505
    java.lang.RuntimeException: Unable to start activity ComponentInfo{com.github.doomsdayrs.apps.shosetsu/com.github.doomsdayrs.apps.shosetsu.MainActivity}: java.lang.RuntimeException: A TaskDescription's primary color should be opaque
    	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2525)
    	at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2617)
    	at android.app.ActivityThread.access$800(ActivityThread.java:182)
    	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1474)
    	at android.os.Handler.dispatchMessage(Handler.java:111)
    	at android.os.Looper.loop(Looper.java:218)
    	at android.app.ActivityThread.main(ActivityThread.java:5657)
    	at java.lang.reflect.Method.invoke(Native Method)
    	at java.lang.reflect.Method.invoke(Method.java:372)
    	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:990)
    	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:785)
    Caused by: java.lang.RuntimeException: A TaskDescription's primary color should be opaque
    	at android.app.ActivityManager$TaskDescription.<init>(ActivityManager.java:555)
    	at android.app.Activity.onApplyThemeResource(Activity.java:3764)
    	at android.view.ContextThemeWrapper.initializeTheme(ContextThemeWrapper.java:140)
    	at android.view.ContextThemeWrapper.setTheme(ContextThemeWrapper.java:85)
    	at android.support.v7.app.AppCompatActivity.setTheme(AppCompatActivity.java:90)
    	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2465)
    	... 10 more```
    opened by muhammadarif1 5
  • Impl: Categories

    Impl: Categories

    Support categories for managing your library.

    Includes:

    • Database tables
    • Library display
    • Category creation, deletetion, and ordering
    • Novel categories dialog
    • Category selection pre-set if there are existing categories the novel is in
    • Set categories action in library
    • Backup values
    • Include/Exclude categories from library update
    • Include/Exclude categories from automatic download
    • Update category
    on hold 
    opened by jobobby04 1
  • [F-R] E-Ink support

    [F-R] E-Ink support

    Is your feature request related to a problem? Please describe. E-Ink displays require specific support to work properly due to their very low refresh rates

    Describe the solution you'd like

    1. UI recognizing an E-Ink display
    2. UI disabling animations and scrolling
    3. UI providing buttons for animation / scrolling

    Additional context I wish I had an e-reader now

    enhancement 
    opened by Doomsdayrs 0
  • [Bug] Mismatched versions.

    [Bug] Mismatched versions.

    Describe the bug "http://gitlab.com/fdroid/fdroiddata/-/issues/2714#note_1021641628".

    Expected behavior The version-code of "http://github.com/shosetsuorg/shosetsu-preview" should be numerically greater than the version-code of "http://github.com/shosetsuorg/shosetsu".

    bug 
    opened by rokejulianlockhart 1
  • [F-R] Usable scrollbar within chapter reader view

    [F-R] Usable scrollbar within chapter reader view

    Is your feature request related to a problem? Please describe. Ability to use the scrollbar within a chapter's reader view. Eg. similar to the scrollbar that the chapter list uses. Used for scrolling through a chapter easier.

    Describe the solution you'd like Usable scrollbar within a chapter reader view. Similar to chapter list scrollbar

    Describe alternatives you've considered I do not believe there is a sufficient alternative for this enhancement.

    Additional context I believe this enhancement is sufficiently explained.

    enhancement help wanted ux on hold 
    opened by UnknownAzzwipe 0
  • [F-R] Material 3 UI/UX design

    [F-R] Material 3 UI/UX design

    Is your feature request related to a problem? Please describe. Occasionally, the UI seems slightly outdated to me.

    Describe the solution you'd like I would like for Shosetsu to implement Material 3 to update the UI/UX design.

    Describe alternatives you've considered Maybe update the UI/UX design in other ways

    Additional context I believe the enhancement report is self explanatory.

    enhancement ux on hold 
    opened by UnknownAzzwipe 1
  • [F-R] Change filter button behavior

    [F-R] Change filter button behavior

    Is your feature request related to a problem? Please describe. Having the filter button disappear and appear constantly is slightly annoying and doesn't look very good in my opinion.

    Describe the solution you'd like Have the filter button behavior change to scroll downwards will cause the filter button to disappear until next scroll upwards.

    Describe alternatives you've considered I haven't really considered an alternate enhancement

    Additional context I believe this enhancement is self explanatory.

    enhancement ux on hold 
    opened by UnknownAzzwipe 0
Releases(v1.1.4)
Owner
ShosetsuOrg
Collective organization for Shosetsu and all it's derivatives
ShosetsuOrg
Helps to find your surrounding's light value (for android only) using device light sensor

react-native-ambient-light-sensor Helps to find your surrounding's light value (in lux unit) (for android only) using device light sensor Installation

Shayan Chatterjee 4 Aug 26, 2022
NimTome is a Free and open-source spell tracker application for Dungeons and Dragons

Nimtome: An open source application to manage all your spells in D&D About This project came to life as a homework assignment, but it became a lot bit

null 2 Jan 11, 2022
A Free, Fully Fledged, Open-Source Music Player for Android

Turtle Player Free, Fully Fledged & Open-Source. The Music Player for Android. Turtle Player is designed to be a fun and unique app for playing your m

Edd Turtle 178 Nov 18, 2022
Free and open source manga reader for Android.

Build Stable Weekly Preview Contribute Support Server Tachiyomi Tachiyomi is a free and open source manga reader for Android 5.0 and above. Features F

Tachiyomi 20.4k Jan 9, 2023
Tachiyomi 20.4k Jan 9, 2023
AdAway is a free and open source ad blocker for Android.

AdAway AdAway is an open source ad blocker for Android using the hosts file and local vpn. For more information visit https://adaway.org Installing Th

null 4.9k Jan 7, 2023
Free and Open Source, full-featured torrent client for Android

Free and Open Source, full-featured torrent client for Android

Yaroslav Pronin 1.3k Jan 8, 2023
Authenticator Pro is a free open-source two factor authentication app for Android

Authenticator Pro Authenticator Pro is a free open-source two factor authentication app for Android. It features encrypted backups, icons, categories

jmh 1k Jan 4, 2023
Aegis Authenticator is a free, secure and open source 2FA app for Android

Aegis Authenticator Aegis Authenticator is a free, secure and open source 2FA app for Android. It aims to provide a secure authenticator for your onli

Beem Development 4.6k Jan 3, 2023
FlorisBoard is a free and open-source keyboard for Android

FlorisBoard FlorisBoard is a free and open-source keyboard for Android 6.0+ devices. It aims at being modern, user-friendly and customizable while ful

FlorisBoard 3.7k Jan 5, 2023
A free and open-source offline authenticator app for Wear OS.

Wristkey Need 2FA codes quickly, right on your Wear watch without needing a phone? Wristkey is an open-source 2FA client for Wear OS watches that does

Owais Shaikh 80 Jan 4, 2023
PngNote is a free, open-source, handwriting note-taking app based on BOOX SDK.

PngNote is a free, open-source, handwriting note-taking app based on BOOX SDK. Use BOOX SDK: Leverage raw-rendering feature, similar stylus lag to the

null 34 Nov 11, 2022
A Free, open source Contacts Butler App built with kotlin

Contacts Butler Do you have a bunch of contacts that are missing a lot of info such as names, emails, phone numbers, etc? Do you really know the conta

Android Contacts Butlers 1 Nov 30, 2021
Money Manager Ex is a free, open-source, cross-platform, easy-to-use personal finance software

Money Manager Ex is a free, open-source, cross-platform, easy-to-use personal finance software. It primarily helps organize one's finances and keeps track of where, when and how the money goes.

Money Manager EX 1.2k Dec 31, 2022
Free and Open Source Launcher.

Omega Launcher Free and Open Source Launcher Installation & Download Our builds are available on: Github: Releases or Actions (usually). F-Droid: Eith

Saul Henriquez 977 Jan 2, 2023
A Free, Open source unofficial manga reader for MangaDex

Neko A Free, Open source unofficial manga reader for MangaDex About: This is a MangaDex specific fork of Tachiyomi and TachiyomiJ2K. This contains fea

Carlos 1.4k Jan 3, 2023
An android app make a one-stop solution for finding the desired reading or research partner, sell their own products, and also be a tutor

The purpose of this project is to make a one-stop solution for finding the desired reading or research partner, sell their own products, and also be a tutor.

Md.Asraful Islam Asif 4 Dec 14, 2022
ANTLR is a powerful parser generator for reading, processing, executing, or translating structured text or binary files.

ANTLR (ANother Tool for Language Recognition) is a powerful parser generator for reading, processing, executing, or translating structured text or binary files.

Tunnel Vision Laboratories, LLC 53 Dec 18, 2022
Slide is an open sourced, ad free Reddit browser for Android

Slide Slide is an open source, ad free Reddit browser for Android. It is based around the Java Reddit API Wrapper. Slide is available on the Google Pl

Carlos Crane 1.7k Jan 9, 2023