https://github.com/lee88688/beryllium
An epub reader that focuses on self-hosting and accessibility from anywhere.
https://github.com/lee88688/beryllium
asar epub epub-reader nextjs
Last synced: 7 months ago
JSON representation
An epub reader that focuses on self-hosting and accessibility from anywhere.
- Host: GitHub
- URL: https://github.com/lee88688/beryllium
- Owner: lee88688
- Created: 2020-11-05T03:19:25.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2024-03-12T08:41:19.000Z (over 1 year ago)
- Last Synced: 2025-01-04T21:46:18.860Z (9 months ago)
- Topics: asar, epub, epub-reader, nextjs
- Language: TypeScript
- Homepage:
- Size: 176 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.en.md
Awesome Lists containing this project
README
# Beryllium
build epub reader for self hosted
## features
- easy to deploy, and you own all of your data
- desktop and mobile support
- dark mode
- bookmark and highlight support
- multi-user support## how to use
if you want to build from source, see `how to develop` below.
generally, you should use [docker image](https://hub.docker.com/r/lee88688/beryllium) directly. here is the example of docker compose config.
```yaml
version: "3"
services:
beryllium:
image: lee88688/beryllium
ports:
- 3000:3000
environment:
# this env should be add, do not add quote to password string
# this is used for startup. when admin user is created, this is no longer need.
- ADMIN_USER_PASSWORD=some-password
# the default admin user name is admin,
# if you want to rename, please uncomment this line
# - ADMIN_USER_NAME=some-other-name
volumes:
- /path/to/data:/app/data
````/app/data/db.sqlite` stores the database, and `/app/data/asar` stores the upload epub files.
### NOTE
the epub file uploaded from the user will be transformed into the asar file format. the asar file is just like tar file which combine the extracted files inside epub into one. so you should keep you epub files if you want to reuse them later. and there is a way to convert asar file to epub.
## how to development
- create `.env` file, like `.env.example`
- prisma
- `npx prisma db push`, push schema to db
- `npx prisma db seed`, seed dbThis is a [T3 Stack](https://create.t3.gg/) project bootstrapped with `create-t3-app`.
## What's next? How do I make an app with this?
We try to keep this project as simple as possible, so you can start with just the scaffolding we set up for you, and add additional things later when they become necessary.
If you are not familiar with the different technologies used in this project, please refer to the respective docs. If you still are in the wind, please join our [Discord](https://t3.gg/discord) and ask for help.
- [Next.js](https://nextjs.org)
- [NextAuth.js](https://next-auth.js.org)
- [Prisma](https://prisma.io)
- [Tailwind CSS](https://tailwindcss.com)
- [tRPC](https://trpc.io)## Learn More
To learn more about the [T3 Stack](https://create.t3.gg/), take a look at the following resources:
- [Documentation](https://create.t3.gg/)
- [Learn the T3 Stack](https://create.t3.gg/en/faq#what-learning-resources-are-currently-available) — Check out these awesome tutorialsYou can check out the [create-t3-app GitHub repository](https://github.com/t3-oss/create-t3-app) — your feedback and contributions are welcome!
## How do I deploy this?
Follow our deployment guides for [Vercel](https://create.t3.gg/en/deployment/vercel), [Netlify](https://create.t3.gg/en/deployment/netlify) and [Docker](https://create.t3.gg/en/deployment/docker) for more information.