https://github.com/superjose/omar-online-manga-reader
An online manga reader built in Rust using Web Assembly and Yew.
https://github.com/superjose/omar-online-manga-reader
rust web-assembly yew yew-framework
Last synced: 5 months ago
JSON representation
An online manga reader built in Rust using Web Assembly and Yew.
- Host: GitHub
- URL: https://github.com/superjose/omar-online-manga-reader
- Owner: superjose
- License: mit
- Created: 2023-02-15T08:45:41.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2023-05-30T09:35:40.000Z (about 3 years ago)
- Last Synced: 2024-10-24T10:06:25.568Z (over 1 year ago)
- Topics: rust, web-assembly, yew, yew-framework
- Language: Rust
- Homepage:
- Size: 1.24 MB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- License: LICENSE.md
Awesome Lists containing this project
README
# OMAR - The Online MAnga Reader
This is an online manga reader built in Rust using Web Assembly (Yew).
**No manga is provided**. Just the reader.

You can include it in your site, run it locally or do whatever you want.
# Features (In Progress)
In 2010, I began a site called [innerbleach.com](http://web.archive.org/web/20140503061934/http://innerbleach.com/content/online-manga-reader-ver-20) (Which is now deceased).

I built a manga reader that made the reading experience unique and pleasant. I also believed it was one of its kind, as it allowed you to:
- [x] Basic instantaneous manga reading (No Page loads)
- [x] No loading between pages.
- [x] View the manga side by side, creating a true reading experience.
- [ ] Continuous scroll mode -
- [ ] View thumbnails in a carousel while you were reading
- [ ] Prefetch the pages while you were reading.
- [ ] Save your progress and come back to where you left off.
- [ ] Dim the background through a "turn off the lights"
- [ ] Automatically control the manga page by changing its width, and height to match your screen (so you could read it from afar), or very close.
- [ ] Read it from a TV and automatically scroll by a fixed timer (Cinema Mode).
- [ ] View small thumbnails (Gallery Mode)
- [ ] Create a playlist. You could mash up One Piece, Bleach, Fairy Tail and Naruto into one batch reading (And support all the features mentioned above)
- [ ] Customize the color of the buttons.
I'll try to create feature parity with it.
# Installation
1. Download and Install [Rust](https://www.rust-lang.org/).
2. Install Bonnie and Trunk
```sh
cargo install bonnie trunk
```
3. Run:
```
trunk serve
```
# How to add your manga.
Create the following structure:

1. Create a folder inside `src/assets` called `manga`.
2. Inside it, create a folder name called `one_piece`.
3. Then add the folder of the chapter in numbers:
E.g: Chapter 1042 is `1042`.
4. Add the pages inside the chapter's folder from 01 to last with the .jpg extension.
E.g:
```
01.jpg
02.jpg
...
19.jpg
```
When you run `trunk serve`, OMAR will automatically scan the folder `src/assets/one_piece` and count all the files and have it ready for you.
### References
Bonnie:
https://github.com/arctic-hen7/bonnie/wiki/Getting-Started
https://dev.to/arctic_hen7/how-to-set-up-tailwind-css-with-yew-and-trunk-il9
### Notes
- The build.rs file is used to read the files from a directory and return it in a concrete rust file that will be used by Yew to extract it.
- https://github.dev/brooks-builds/full-stack-todo-rust-course
### FAQ
#### Why Rust?
I want to learn the syntax, and it's a fun way to do so!
I did the same when I began learning JavaScript.
#### Will there be a JS version?
Who knows?