Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

EPUB Version #22

Open
ixabolfazl opened this issue Aug 8, 2023 · 13 comments
Open

EPUB Version #22

ixabolfazl opened this issue Aug 8, 2023 · 13 comments

Comments

@ixabolfazl
Copy link

If possible, I would appreciate it if you could provide an EPUB version of this text as well. I think this format might be more suitable for reading on electronic devices. Thank you for taking the time to make this useful information available to me. I hope you can provide an EPUB copy too.

@kognise
Copy link
Member

kognise commented Aug 8, 2023

I definitely want to do this! I haven't really worked with the EPUB format in ages, if I remember properly it might take some time to implement. Would definitely be open to community contributions around this if you're interested in possibly working on this yourself! If not, definitely on the wishlist for me.

I'm currently working on a one-pager and PDF in #11, but I understand that isn't the ideal format for, say, kindles. So sometime in the next couple days I might start hacking on EPUB support.

@Bartvelp
Copy link

Here is a shitty one I created from the HTML in the mean time.
how_cpus_work.zip

In a zip because github doesn't support uploading .epub.

@filmgirl
Copy link

I'm going to try to take a crack at this tomorrow if a better option doesn’t present itself first and nerd-snipe me, but I think there is something I can work with this tool https://github.com/danburzo/percollate, which I've used before and that is very cool

@artelse
Copy link

artelse commented Aug 10, 2023

The very useful pandoc tool can also export to epub. You might give it a try.

@ericschn
Copy link

I didn't see any activity here for a few days so I decided to give it a go. Created proper chapters and a cover image, most of it looks good on my kindle.

Still working on:

  • Image sizing - some may still appear small
  • Contrast issues - some images and code blocks have low contrast on e-ink displays
  • Book cover - I grabbed the cover of the PDF version and edited it to better fit e-book sizing, I need to space the doodles out better

Putting the You in CPU - Lexi Mattick - draft1.zip

@kognise
Copy link
Member

kognise commented Aug 14, 2023

Woah, amazing @ericschn! Let me know if I can help with anything, e.g. making e-ink friendly versions of the drawings.

@kognise
Copy link
Member

kognise commented Aug 15, 2023

On this: I think the EPUB would ideally be generated via script just like the PDF. Eventually I want to make both an Astro plugin or something, or at least part of CI. @ericschn was your current work manual or did you make progress on / plan to write a script?

(Either way, I am planning on investing time into this myself to polish, and I'm happy to write an EPUB-generating script as part of that.)

@ericschn
Copy link

@kognise
My work was mainly manual edits on the "one-pager" edition with regex replace-all. A script on the chapters .mdx files would definitely be cool. I was planning to work more on the EPUB this evening, I'll research .mdx conversion too.

@artelse
Copy link

artelse commented Aug 16, 2023

@ericschn A few things; on my linux ebook reader Okular, it has formatting errors where text runs thru graphics which in itself seem misplaced. My reMarkable tablet refuses to load the epub entirely, no idea what's going on there.
I love this document and would be great when it becomes more portable.

@ericschn
Copy link

ericschn commented Aug 16, 2023

@artelse Thanks for that feedback, I think some styling I left in that doesn't affect kindle is affecting your devices, I've noted to remove all styles in the next version. Would you mind if I tag you again this evening (~8 hours from now) to test a new version on your devices?

@sanchezb
Copy link

I would appreciate too for an EPUB version, and could test it on my KOBO Aura 2.

@ericschn
Copy link

@kognise I've made a script for automating epub generation, it's a node script similar to your pdfgen.js. It's a bit messy, maybe an astro plugin could be cleaner.
epubgen.js
pandoc is then ran on the resulting .md file this script generates to create the epub.

Here's the epub that this script + pandoc creates (unzip first):
putting-the-you-in-cpu-draft2.zip

Things missing from epub version:

  • Code block line numbers - I'd recommend leaving them out as they add even more wrapping in the code examples
  • YouTube video - cyriak is classic, but maybe not great on eink displays
  • Links to other chapters don't seem to be underlined on some devices, still investigating that

@artelse
Copy link

artelse commented Aug 25, 2023

@ericschn Hi, was away, but if you want me to test a new version, let me know.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants