# @voraciousdev/octo

> ### Dark and Light Themes

Latest version **0.19.0** (published 2021-09-04) · MIT license · 0 weekly downloads

## Install

```sh
npm install @voraciousdev/octo
pnpm add @voraciousdev/octo
yarn add @voraciousdev/octo
bun add @voraciousdev/octo
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.19.0 |
| Published | 2021-09-04 |
| First published | 2020-11-28 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 16 |
| Unpacked size | 3.1 MB |
| Known vulnerabilities | 0 (+3 in 3 direct dependencies) |
| Install scripts | no |
| Maintainers | voraciousdev |

## Links

- npm: https://www.npmjs.com/package/@voraciousdev/octo
- npm.io page: https://npm.io/package/@voraciousdev/octo

## Dependencies (16)

- [vue](https://npm.io/package/vue.md) ^2.6.11
- [uuid](https://npm.io/package/uuid.md) ^8.1.0
- [vuex](https://npm.io/package/vuex.md) ^3.4.0
- [moment](https://npm.io/package/moment.md) ^2.29.1
- [vue-mq](https://npm.io/package/vue-mq.md) ^1.0.1
- [core-js](https://npm.io/package/core-js.md) ^2.6.11
- [firebase](https://npm.io/package/firebase.md) ^9.0.0
- [deepmerge](https://npm.io/package/deepmerge.md) ^4.2.2
- [mousetrap](https://npm.io/package/mousetrap.md) ^1.6.5
- [vue-router](https://npm.io/package/vue-router.md) ^3.3.1
- [force-graph](https://npm.io/package/force-graph.md) ^1.35.1
- [localforage](https://npm.io/package/localforage.md) ^1.7.4
- [simplebar-vue](https://npm.io/package/simplebar-vue.md) ^1.6.0
- [@writewithocto/vue-ink](https://npm.io/package/@writewithocto/vue-ink.md) ^0.5.0
- [register-service-worker](https://npm.io/package/register-service-worker.md) ^1.7.1
- [@voraciousdev/vue-markdown-editor](https://npm.io/package/@voraciousdev/vue-markdown-editor.md) v0.3.0

## Recent versions

- 0.19.0 (latest) — 2021-09-04
- 0.18.1 — 2021-08-13
- 0.18.0 — 2021-06-01
- 0.17.2 — 2021-05-08
- 0.17.1 — 2021-03-22
- 0.17.0 — 2021-03-19
- 0.15.2 — 2021-01-20
- 0.15.1 — 2021-01-18
- 0.15.0 — 2021-01-08
- 0.14.1 — 2020-12-25
- 0.14.0 — 2020-12-20
- 0.13.1 — 2020-12-18
- 0.12.0 — 2020-11-28

## README

[![latest tag](https://img.shields.io/github/v/tag/writewithocto/octo?color=blue&label=latest%20tag&sort=semver)](https://github.com/writewithocto/octo/releases)
[![license](https://img.shields.io/github/license/writewithocto/octo)](https://github.com/writewithocto/octo/blob/main/LICENSE)
[![open issues](https://img.shields.io/github/issues-raw/writewithocto/octo)](https://github.com/writewithocto/octo/issues)
[![chat in discussions](https://img.shields.io/badge/chat-in%20discussions-7289da)](https://github.com/writewithocto/octo/discussions)
[![follow on twitter](https://img.shields.io/badge/follow-on%20twitter-1da1f2)](https://twitter.com/writewithocto)

<p align="center">
  <a href="https://octo.app">
    <img height="100" src="resources/stacked.png">
  </a>
</p>

<p align="center">A hackable, offline-first markdown editor for notes, code snippets, and writing that runs entirely in-browser.</p>

[![screenshot](resources/combined-dark.png)](https://octo.app)

## Features

### Dark and Light Themes

Dark theme by default. Light theme if you want it. 😎

### Inline Markdown Rendering and Automatic Syntax Highlighting

All Markdown formatting is rendered in place. This eliminates the need for a preview pane while keeping your document in plain text. Feel free to copy and paste your Markdown into or out of this editor! Code blocks are automatically highlighted based on the tagged language.

### Client-Side Encryption

Uses a [hybrid cryptosystem](https://en.wikipedia.org/wiki/Hybrid_cryptosystem) approach to reap the benefits of both public-key and symmetric encryption.

### Keyboard Friendly and Searchable

Keyboard shortcuts are available for many actions. Search documents with plain text or regex.

### Context Switching

Focusing on `#work` or `#play`? Apply a global filter to only see the documents that are relevant in a given moment.

### Offline First and Mobile First (Responsive)

No account, server, or internet connectivity necessary (after first load). The entire app is cached in the browser using Service Workers. Documents are stored in IndexedDB. All features of the app are built for mobile and desktop. The design changes responsively based on available screen real estate.

### Modern Technologies

Built with Vue, Vuex, and VueRouter. Progressive Web Apps are accessible on all platforms and installable on many.

### Tag-based Organization and Networked Thought

Add as many hashtags to your documents as you like. Build a network of information and explore your knowledgebase just as you would explore your own memories.

![](resources/desktop-graph-dark.png)

## Demo

[Watch a quick intro on YouTube](https://youtu.be/Brtvzu-3qT8) (1m 39s)

To try out the sandboxed app (no accounts or syncing), check out [try.octo.app](https://try.octo.app).

## Install

As simple as it gets.

```shell
# install dependencies
yarn install
```

## Local Development

We can run it in `development` mode.

```shell
# binds to localhost:8888
yarn serve_dev
```

We can also run it in `production` mode.

_Note: Offline functionality is only available in `production` mode due to [lack of support](https://github.com/vuejs/vue-cli/issues/2678) in the Vue PWA plugin._

```shell
# binds to localhost:8889
yarn serve_prod
```

## Compile to Static Assets

Create the production build.

```shell
# compiles at ./dist
yarn build_prod
```

The static assets will be available in the `dist` directory.

## Attributions

Logo by Zagg Studios

## Support

Your support is appreciated. Here are some ways you can help. ♥️

### Provide Feedback

Your feedback is immensely important for building octo into an app that we all love. Consider [starting a discussion](https://github.com/writewithocto/octo/discussions) if you have a question or just want to chat about ideas!

### Open a Pull Request

If you feel comfortable tackling [an existing issue](https://github.com/writewithocto/octo/issues), please consider opening a Pull Request! I am happy to introduce you to the codebase and work with you to get it merged!

### Donate

Donations help support the development of octo (this open source project) and the hosting of [octo.app](https://octo.app).

Accounts on [octo.app](https://octo.app) include syncing and persistence through Firebase. Accounts are currently free, and your financial support directly impacts how long we can keep it that way.

Check out our awesome Backers in [BACKERS.md](https://github.com/writewithocto/octo/blob/main/BACKERS.md).

- [GitHub Sponsors](https://github.com/sponsors/voraciousdev)
- [Patreon](https://patreon.com/voraciousdev)
- [Ko-Fi](https://ko-fi.com/voraciousdev)
- [Buy Me a Coffee](https://www.buymeacoffee.com/voraciousdev)

---
_Source: https://npm.io/package/@voraciousdev/octo · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
