# Offline writing

**URL:** <https://forum.ghost.org/t/offline-writing/7454>\
**Category:** Developer help\
**Created:** [May 23, 2019, 3:32pm UTC](https://forum.ghost.org/t/offline-writing/7454 "2019-05-23T15:32:53Z")\
**Posts on this page:** 19\
**Page:** 1

<div class="post-metadata">

**Author:** ![omisnomis](https://avatars.discourse-cdn.com/v4/letter/o/958977/32.png) [@omisnomis](https://forum.ghost.org/u/omisnomis)\
**Post date:** [May 23, 2019, 3:32pm UTC](https://forum.ghost.org/t/offline-writing/7454/1 "2019-05-23T15:32:53Z")

</div>

Is there a tool that can be used to write articles offline?

It doesn’t even have to be a tool that directly integrates with Ghost, just one that would be easy enough to copy and paste over to Ghost when I’m online; without having to write in Markup…

---

<div class="post-metadata">

**Author:** ![omisnomis](https://avatars.discourse-cdn.com/v4/letter/o/958977/32.png) [@omisnomis](https://forum.ghost.org/u/omisnomis)\
**Post date:** [May 23, 2019, 5:48pm UTC](https://forum.ghost.org/t/offline-writing/7454/2 "2019-05-23T17:48:25Z")

</div>

@kevin

---

<div class="post-metadata">

**Author:** ![omisnomis](https://avatars.discourse-cdn.com/v4/letter/o/958977/32.png) [@omisnomis](https://forum.ghost.org/u/omisnomis)\
**Post date:** [May 23, 2019, 6:02pm UTC](https://forum.ghost.org/t/offline-writing/7454/3 "2019-05-23T18:02:15Z")

</div>

@naz @Kate @kevin - I’m just going to tag all those that have been really helpful 😀

---

<div class="post-metadata">

**Author:** ![dana](https://sea1.discourse-cdn.com/flex015/user_avatar/forum.ghost.org/dana/32/1396_2.png) [@dana](https://forum.ghost.org/u/dana)\
**Post date:** [May 24, 2019, 3:05am UTC](https://forum.ghost.org/t/offline-writing/7454/4 "2019-05-24T03:05:45Z")

</div>

I sometimes use Google Docs (which you can use offline) if I’m editing/collaborating on a big doc. If I use the built-in heading structure it works fine. So, no need to use something fancy.

Images have to be done separately, but I have a workflow for optimising them for web use anyway.

---

<div class="post-metadata">

**Author:** ![omisnomis](https://avatars.discourse-cdn.com/v4/letter/o/958977/32.png) [@omisnomis](https://forum.ghost.org/u/omisnomis)\
**Post date:** [May 24, 2019, 6:57am UTC](https://forum.ghost.org/t/offline-writing/7454/5 "2019-05-24T06:57:47Z")

</div>

Thanks @dana - I’ll give that a go.

> [@dana](#):
>
> Images have to be done separately, but I have a workflow for optimising them for web use anyway.

Interested in your image workflow - if you’re willing to share it?

---

<div class="post-metadata">

**Author:** ![dana](https://sea1.discourse-cdn.com/flex015/user_avatar/forum.ghost.org/dana/32/1396_2.png) [@dana](https://forum.ghost.org/u/dana)\
**Post date:** [May 24, 2019, 9:10am UTC](https://forum.ghost.org/t/offline-writing/7454/6 "2019-05-24T09:10:56Z")

</div>

Haha of course, it’s not voodoo!! It’s just SEO/user experience-centric optimisation. The goal is to make a big image into an SEO-optimised small JPG (about 100KB is the target), so the web page is fast loading, and easily found via search on Google Images. (Haven’t worked out how to do alt tags in Ghost yet)

I generally:

- Reduce dynamic range in the photo (usually by fixing highlights/shadows
- Reduce resolution to max width 1200-1500
- Export as JPG if it’s not already (unless it’s mostly image-free, in which case PNG)
- Run it through ImageOptim (an open source app) at 70% quality.
- Rename the file so it has keywords I’m optimising for

Still bugs me I can’t add alt text to images in Ghost… ☹

---

<div class="post-metadata">

**Author:** ![omisnomis](https://avatars.discourse-cdn.com/v4/letter/o/958977/32.png) [@omisnomis](https://forum.ghost.org/u/omisnomis)\
**Post date:** [May 24, 2019, 9:29am UTC](https://forum.ghost.org/t/offline-writing/7454/7 "2019-05-24T09:29:05Z")

</div>

Thanks!

> [@dana](#):
>
> Still bugs me I can’t add alt text to images in Ghost… ☹

Can’t you add an alt tag by using the HTML plugin?

---

<div class="post-metadata">

**Author:** ![omisnomis](https://avatars.discourse-cdn.com/v4/letter/o/958977/32.png) [@omisnomis](https://forum.ghost.org/u/omisnomis)\
**Post date:** [May 24, 2019, 9:29am UTC](https://forum.ghost.org/t/offline-writing/7454/8 "2019-05-24T09:29:21Z")

</div>

I think you can - [link](https://forum.ghost.org/t/adding-an-image-alt-tag-and-a-caption-to-the-same-image/6694)

---

<div class="post-metadata">

**Author:** ![dana](https://sea1.discourse-cdn.com/flex015/user_avatar/forum.ghost.org/dana/32/1396_2.png) [@dana](https://forum.ghost.org/u/dana)\
**Post date:** [May 24, 2019, 10:34am UTC](https://forum.ghost.org/t/offline-writing/7454/9 "2019-05-24T10:34:55Z")

</div>

Yeah, I’ve done that. I got worried about future and cross theme compatibility of stored posts. I add figure class manually (because it’s more than just an img), I’d have to rely on that class not changing in the future. I’d rather have the post stored as however Koenig stores it.

Actually I have no idea how it stores it… I assumed it was in some meta format… Maybe it’s the same thing, will research.

---

<div class="post-metadata">

**Author:** ![omisnomis](https://avatars.discourse-cdn.com/v4/letter/o/958977/32.png) [@omisnomis](https://forum.ghost.org/u/omisnomis)\
**Post date:** [May 24, 2019, 11:06am UTC](https://forum.ghost.org/t/offline-writing/7454/10 "2019-05-24T11:06:52Z")

</div>

> [@dana](#):
>
> Yeah, I’ve done that. I got worried about future and cross theme compatibility of stored posts. I add figure class manually (because it’s more than just an img), I’d have to rely on that class not changing in the future. I’d rather have the post stored as however Koenig stores it.

Ah ok yeah I see what you mean. It’s a shame you can’t add some kind of custom helper and use that for repeatability.

---

<div class="post-metadata">

**Author:** ![Brandon\_Skerritt](https://sea1.discourse-cdn.com/flex015/user_avatar/forum.ghost.org/brandon_skerritt/32/3101_2.png) [@Brandon\_Skerritt](https://forum.ghost.org/u/Brandon_Skerritt)\
**Post date:** [May 27, 2019, 3:37pm UTC](https://forum.ghost.org/t/offline-writing/7454/11 "2019-05-27T15:37:21Z")

</div>

You can now write using IA Writer + a bunch of other things

> **[The New Ghost Admin API: Build advanced publishing workflows](https://ghost.org/changelog/admin-api/)**
>
> The Ghost Content API makes it possible to pull any content out of Ghost, or use it as a Headless CMS. Today we're excited to be able to share our new Admin API, which does just the opposite: It creates total flexibility around how you get content in...

((Most of these allow offline access ! ))

---

<div class="post-metadata">

**Author:** ![omisnomis](https://avatars.discourse-cdn.com/v4/letter/o/958977/32.png) [@omisnomis](https://forum.ghost.org/u/omisnomis)\
**Post date:** [May 27, 2019, 5:24pm UTC](https://forum.ghost.org/t/offline-writing/7454/12 "2019-05-27T17:24:52Z")

</div>

Ah awesome. Don’t suppose you know of any supported IA Writers for linux? That article mostly mentions Mac.

---

<div class="post-metadata">

**Author:** ![Brandon\_Skerritt](https://sea1.discourse-cdn.com/flex015/user_avatar/forum.ghost.org/brandon_skerritt/32/3101_2.png) [@Brandon\_Skerritt](https://forum.ghost.org/u/Brandon_Skerritt)\
**Post date:** [May 27, 2019, 5:36pm UTC](https://forum.ghost.org/t/offline-writing/7454/13 "2019-05-27T17:36:37Z")

</div>

I’m not sure. The new API supports Zapier, so you could probably find something on Zapier.  
Personally, I would just use a normal text editor and write in Markdown 🙂

---

<div class="post-metadata">

**Author:** ![omisnomis](https://avatars.discourse-cdn.com/v4/letter/o/958977/32.png) [@omisnomis](https://forum.ghost.org/u/omisnomis)\
**Post date:** [May 27, 2019, 5:49pm UTC](https://forum.ghost.org/t/offline-writing/7454/14 "2019-05-27T17:49:19Z")

</div>

I’ll have a look and see if anything fits the bill, thanks for bringing the new features to my attention.

---

<div class="post-metadata">

**Author:** ![KranzKrone](https://sea1.discourse-cdn.com/flex015/user_avatar/forum.ghost.org/kranzkrone/32/1989_2.png) [@KranzKrone](https://forum.ghost.org/u/KranzKrone)\
**Post date:** [May 27, 2019, 6:34pm UTC](https://forum.ghost.org/t/offline-writing/7454/15 "2019-05-27T18:34:27Z")

</div>

@omisnomis you could use WINE in combination with iA, or not?

---

<div class="post-metadata">

**Author:** ![omisnomis](https://avatars.discourse-cdn.com/v4/letter/o/958977/32.png) [@omisnomis](https://forum.ghost.org/u/omisnomis)\
**Post date:** [May 28, 2019, 7:46am UTC](https://forum.ghost.org/t/offline-writing/7454/16 "2019-05-28T07:46:39Z")

</div>

Thanks @KranzKrone - I decided to try [Ghost Writer](https://wereturtle.github.io/ghostwriter/). It doesn’t integrate with Ghost (I don’t think), but it’s Open Source and supports Markdown - so I guess I am going to write in MD after all 🙂

---

<div class="post-metadata">

**Author:** ![AaronMichael](https://sea1.discourse-cdn.com/flex015/user_avatar/forum.ghost.org/aaronmichael/32/2891_2.png) [@AaronMichael](https://forum.ghost.org/u/AaronMichael)\
**Post date:** [June 7, 2019, 1:42pm UTC](https://forum.ghost.org/t/offline-writing/7454/17 "2019-06-07T13:42:23Z")

</div>

I use Ulysses for writing offline and on the go. They have ghost integration and worth every penny.

I use Ulysses religiously now in my writing.

---

<div class="post-metadata">

**Author:** ![omisnomis](https://avatars.discourse-cdn.com/v4/letter/o/958977/32.png) [@omisnomis](https://forum.ghost.org/u/omisnomis)\
**Post date:** [June 7, 2019, 3:16pm UTC](https://forum.ghost.org/t/offline-writing/7454/18 "2019-06-07T15:16:47Z")

</div>

Unfortunately no Linux version 🙂

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/flex015/uploads/ghost2/original/2X/b/ba9ce5100b8bb264586f4f572545596b2ce3f081.png) [@system](https://forum.ghost.org/u/system)\
**Post date:** [June 21, 2019, 3:16pm UTC](https://forum.ghost.org/t/offline-writing/7454/19 "2019-06-21T15:16:50Z")

</div>

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.
