update README
This commit is contained in:
parent
05971861f6
commit
36bcf7277c
40
README.md
40
README.md
|
@ -1,8 +1,14 @@
|
||||||
# RTL EPUB Maker
|
# RTL EPUB Maker
|
||||||
|
|
||||||
Easily create EPUB e-book files with proper RTL support
|
Easily create EPUB e-book files with proper RTL support.
|
||||||
|
|
||||||
## Running Locally
|
This is a web app that uses [pandoc](https://pandoc.org) to create .epub files for e-books in RTL languages. Making RTL e-books can be tricky. This tries app tries to simplify the process as much as possible, so that anyone can make them.
|
||||||
|
|
||||||
|
[Try it live - RTL EPUB Maker](https://rtl-epub-maker.lingdocs.com)
|
||||||
|
|
||||||
|
## Running
|
||||||
|
|
||||||
|
You can run this app on your own machine or host it on a server.
|
||||||
|
|
||||||
### With Node
|
### With Node
|
||||||
|
|
||||||
|
@ -11,17 +17,39 @@ requires:
|
||||||
- Node.js 12.22.0 or later
|
- Node.js 12.22.0 or later
|
||||||
- [pandoc](https://pandoc.org/installing.html)
|
- [pandoc](https://pandoc.org/installing.html)
|
||||||
|
|
||||||
```
|
To run in dev mode:
|
||||||
|
|
||||||
|
```sh
|
||||||
npm install
|
npm install
|
||||||
npm run dev
|
npm run dev
|
||||||
```
|
```
|
||||||
|
|
||||||
|
To host in production:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
npm run build
|
||||||
|
npm run start
|
||||||
|
```
|
||||||
|
|
||||||
### With Docker
|
### With Docker
|
||||||
|
|
||||||
Or, you can just run the docker image with pandoc and everything included.
|
If you are using `linux/amd64` architecture you can just run the [the docker image](https://hub.docker.com/r/lingdocs/rtl-epub-maker).
|
||||||
|
|
||||||
```
|
```sh
|
||||||
docker compose up
|
docker compose up
|
||||||
```
|
```
|
||||||
|
|
||||||
App will be served on `http://localhost:3001`
|
If you are using an architecture other than `linux/amd64` you will need to build your own Docker image.
|
||||||
|
|
||||||
|
```sh
|
||||||
|
docker build . -t rtl-epub-maker
|
||||||
|
docker run -p 127.0.0.1:3001:3001 rtl-epub-maker
|
||||||
|
```
|
||||||
|
|
||||||
|
## Serving
|
||||||
|
|
||||||
|
The app will be served on `http://localhost:3001`. Add a reverse proxy with SSL if you want to serve it to the world.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
Code is licensed under a [MIT License](https://github.com/lingdocs/rtl-epub-maker/blob/master/LICENSE). Contributions are welcome.
|
||||||
|
|
|
@ -66,7 +66,6 @@ function BookInfoInput({ handleSubmit }: { handleSubmit: (info: { frontmatter: F
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
return <div style={{ maxWidth: "500px" }}>
|
return <div style={{ maxWidth: "500px" }}>
|
||||||
<h4>Book Metadata</h4>
|
|
||||||
<div className="my-3">
|
<div className="my-3">
|
||||||
<label htmlFor="cover-file" className="form-label">cover image <span className="text-muted">(.jpg or .png less than 5mb)</span></label>
|
<label htmlFor="cover-file" className="form-label">cover image <span className="text-muted">(.jpg or .png less than 5mb)</span></label>
|
||||||
<input multiple={false} ref={coverRef} className="form-control" type="file" id="cover-file" accept="image/jpeg,image/png"/>
|
<input multiple={false} ref={coverRef} className="form-control" type="file" id="cover-file" accept="image/jpeg,image/png"/>
|
||||||
|
|
|
@ -6,6 +6,7 @@ import DocReceiver from "../components/DocReceiver";
|
||||||
import { bookRequest } from "../lib/fetchers";
|
import { bookRequest } from "../lib/fetchers";
|
||||||
|
|
||||||
// TODO: Make Title Required
|
// TODO: Make Title Required
|
||||||
|
// TODO: Have author field in there
|
||||||
// TODO: Allow Word File straight w/ images etc upload
|
// TODO: Allow Word File straight w/ images etc upload
|
||||||
// TDOO: Add language selection option (Pashto, Arabic, Farsi, Urdu)
|
// TDOO: Add language selection option (Pashto, Arabic, Farsi, Urdu)
|
||||||
|
|
||||||
|
@ -42,6 +43,7 @@ const Home: NextPage = () => {
|
||||||
</Head>
|
</Head>
|
||||||
<h1 className="mt-3">RTL EPUB Maker 📚</h1>
|
<h1 className="mt-3">RTL EPUB Maker 📚</h1>
|
||||||
<p className="lead mb-4">Easily create EPUB e-book files with proper RTL support (🚧 in progress 👷)</p>
|
<p className="lead mb-4">Easily create EPUB e-book files with proper RTL support (🚧 in progress 👷)</p>
|
||||||
|
<h4>Book Content</h4>
|
||||||
<DocReceiver handleReceiveText={handleReceiveText}/>
|
<DocReceiver handleReceiveText={handleReceiveText}/>
|
||||||
<div className="mt-3">
|
<div className="mt-3">
|
||||||
<label htmlFor="mdTextarea" className="form-label">Markdown Content</label>
|
<label htmlFor="mdTextarea" className="form-label">Markdown Content</label>
|
||||||
|
@ -50,6 +52,7 @@ const Home: NextPage = () => {
|
||||||
<div style={{ textAlign: "right" }}>
|
<div style={{ textAlign: "right" }}>
|
||||||
<button type="button" className="btn btn-sm btn-light mt-2" onClick={clearText}>Clear</button>
|
<button type="button" className="btn btn-sm btn-light mt-2" onClick={clearText}>Clear</button>
|
||||||
</div>
|
</div>
|
||||||
|
<h4>Book Metadata</h4>
|
||||||
<BookInfoInput handleSubmit={handleSubmit} />
|
<BookInfoInput handleSubmit={handleSubmit} />
|
||||||
<div className="text-center mt-4 text-muted">
|
<div className="text-center mt-4 text-muted">
|
||||||
<p className="lead">Made by <a className="em-link" href="https://lingdocs.com">LingDocs.com</a></p>
|
<p className="lead">Made by <a className="em-link" href="https://lingdocs.com">LingDocs.com</a></p>
|
||||||
|
|
Loading…
Reference in New Issue