We're still working on vital components for the reader, follow this repo for updates or join our Discord server.
Atsumaru is an open source manga reader application for Android, IOS & Web
- Advanced, fully customizable reader
- Offline mode
- Anilist.co integration
- Multiple sources
- Community driven
Contributions of any kind are welcomed. Feel free to make pull requests with new features, improvements or modification that would benefit the application. Opening relevant issues is also welcomed and appreciated.
For support/discussion visit the Atsumaru Discord server,
All modern operating systems are supported GNU/Linux, Windows, Mac OS.
Install the following beforehand
Run in your terminal
-
Clone the repository
git clone https://github.com/TheUndo/atsumaru.git
cd Atsumaru
-
Copy
.env.example
as.env
bash/zsh:
$ cp .env.example .env
Windows cmd/powershell:
copy .env.example .env
-
Build and start the backend. Omit the
-d
flag if you want to use another terminal for the frontenddocker-compose up -d
-
Start the frontend
cd frontend
npm i && npm run dev
Open http://localhost:3000 to view the development build.
Role | Technology |
---|---|
Database | MongoDB |
Backend | Node.js + TypeScript |
Frontend UI | React + TypeScript |
Frontend bundler | Vite (rollup internally) |
Router/Reverse proxy | NGINX |
Cache | Redis |
Search engine | Meilisearch |
Containerization | Docker compose |
We use Docker to provide seamless support cross platform, for managing multiple micro services written in different languages and for offering great scaling options. Atsumaru uses over 8 different technologies, it's therefore very hard to install everything with the correct version, and make them behave together the same across Linux, Windows and Mac OS. Docker completely solves this issue.
TypeScript is a strictly typed superset of JavaScript, it allows for static type checking at compilation time. It helps greatly in eliminating needless type errors which often occur with vanilla JavaScript. This is very useful for large projects like Atsumaru and ensures your code can be understood by others and their IDEs.
If you want to contribute but you do not know TypeScript, this is likely not an issue. Since TypeScript is incredibly powerful it will infer most types and provide helpful error messages to guide you, as mentioned before, TypeScript is a superset of JavaScript, it uses JavaScript syntax and compiles to JavaScript. If you need help, we're more than happy to provide support in our Discord server.