1
0
mirror of https://github.com/schollz/cowyo.git synced 2023-08-10 21:13:00 +03:00

Updated readme

This commit is contained in:
Zack Scholl 2016-02-10 09:01:20 -05:00
parent d76ec7fbac
commit 4f1ed7f932

View File

@ -1,41 +1,53 @@
![Logo](https://i.imgur.com/ixnBYOl.png)
# AwwKoala
## A Websocket Wiki and Kind Of A List Application
[![Version 1.0](https://img.shields.io/badge/version-1.0-brightgreen.svg)]()
[![Go Report Card](https://goreportcard.com/badge/github.com/schollz/AwwKoala)](https://goreportcard.com/report/github.com/schollz/AwwKoala)
[![Join the chat at https://gitter.im/schollz/AwwKoala](https://badges.gitter.im/schollz/AwwKoala.svg)](https://gitter.im/schollz/AwwKoala?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
This tool is supposed to make sharing online notes and lists fast and easy. To jot a note, simply load the page at [`/`](http://cowyo.com/) and write. The url will redirect to an easy-to-remember name that you can use to reload the page at anytime, anywhere. (You can use any url you want too: [`/AnythingYouWant`](http://cowyo.com/AnythingYouWant)). No need to press save, it will automatically save when you stop writing.
This is a self-contained wiki webserver that makes sharing easy and *fast*. You can make any page you want, and any page is editable by anyone. Pages load instantly for editing, and have special rendering for whether you want to view as a web page or view as list.
You can also write your notes in [Markdown](https://daringfireball.net/projects/markdown/) and then render your page by adding `/view`. For example, the page `/about` is rendered at [`/about/view`](/about/view).
#### Basics
If you are writing a list and you want to tick off things really easily, just add `/list`. For example, after editing [`/grocery`](http://cowyo.com/grocery), goto [`/grocery/list`](http://cowyo.com/grocery/list). In this page, whatever you click on will be striked through and moved to the end. This is helpful if you write a grocery list and then want to easily delete things from it.
To jot a note, simply load the page at [`/`](http://AwwKoala.com/) and just start typing. No need to press edit, the browser will already be focused on the text. No need to press save - it will automatically save when you stop writing. The URL at [`/`](http://AwwKoala.com/) will redirect to an easy-to-remember name that you can use to reload the page at anytime, anywhere. But, you can also use any URL you want, e.g. [`/AnythingYouWant`](http://AwwKoala.com/AnythingYouWant).
Math is supported using [Katex](https://github.com/Khan/KaTeX). Base64 images are supported [in img tags](https://stackoverflow.com/questions/1207190/embedding-base64-images) as well.
#### Views and Lists
Be cautious about writing sensitive information in the notes as anyone with the URL has access to it. For more information, or if you'd like to edit the code, [use the github](https://github.com/schollz/cowyo). If you'd like help or find a bug, please submit [an issue](https://github.com/schollz/cowyo/issues) or <a href="https://twitter.com/intent/tweet?screen_name=zack_118" class="twitter-mention-button" data-related="zack_118">Tweet me @zack_118</a>
All pages can be rendered into HTML by adding `/view`. For example, the page [`/AnythingYouWant`](http://AwwKoala.com/AnythingYouWant) is rendered at [`/AnythingYouWant/view`](http://AwwKoala.com/AnythingYouWant/view). You can write in HTML or [Markdown](https://daringfireball.net/projects/markdown/) for page rendering. Math is supported using [Katex](https://github.com/Khan/KaTeX). Base64 images are supported [in img tags](https://stackoverflow.com/questions/1207190/embedding-base64-images) as well.
If you are writing a list and you want to tick off things really easily, just add `/list`. For example, after editing [`/grocery`](http://AwwKoala.com/grocery), goto [`/grocery/list`](http://AwwKoala.com/grocery/list). In this page, whatever you click on will be striked through and moved to the end. This is helpful if you write a grocery list and then want to easily delete things from it.
#### Versioning
All previous versions of all notes are stored and can be accessed by adding `?version=X` onto `/view` or `/edit`. If you are on the `/view` or `/edit` pages the menu below will show the most substantial changes in the history. Note, only the *current* version can be edited (no branching allowed, yet).
#### Disclaimer
Be cautious about writing sensitive information in the notes as anyone with the URL has access to it. For more information, or if you'd like to edit the code, [use the github](https://github.com/schollz/AwwKoala).
### Contact
If you'd like help or find a bug, please submit [an issue](https://github.com/schollz/AwwKoala/issues). Any other comments, quetions or anything at all, just <a href="https://twitter.com/intent/tweet?screen_name=zack_118" class="twitter-mention-button" data-related="zack_118">tweet me @zack_118</a>
# Install
To get started on your local network just do:
```
git clone https://github.com/schollz/cowyo.git
cd cowyo
git clone https://github.com/schollz/awwkoala.git
cd awwkoala
make
./cowyo -p :8001 LOCALIPADDRESS
./awwkoala -p :8001 LOCALIPADDRESS
```
and then goto the address `http://LOCALIPADDRESS:8001/`
## Production server
I recommend using `NGINX` as middleware, as it will do caching of the static files for you. There is an example `NGINX` block in `install/`. To automatically install, on Raspberry Pi / Ubuntu / Debian system use:
```
git clone https://github.com/schollz/cowyo.git
cd cowyo
git clone https://github.com/schollz/awwkoala.git
cd awwkoala
nano Makefile <--- EDIT Makefile to include YOUR EXTERNAL ADDRESS
make && sudo make install
```
@ -43,39 +55,41 @@ make && sudo make install
Now the program starts and stops with
```
sudo /etc/init.d/cowyo start|stop|restart
sudo /etc/init.d/AwwKoala start|stop|restart
```
Edit your crontab (`sudo crontab -e`) to start on boot:
```
@reboot /etc/init.d/cowyo start
@reboot /etc/init.d/AwwKoala start
```
# Usage
```
$ cowyo --help
cowyo: a websocket notepad
$ awwkoala --help
awwkoala: A Websocket Wiki and Kind Of A List Application
run this to start the server and then visit localhost at the port you specify
(see parameters).
Example: 'cowyo localhost'
Example: 'cowyo -p :8080 localhost'
Example: 'cowyo -db /var/lib/cowyo/db.bolt localhost'
Example: 'cowyo -p :8080 -crt ssl/server.crt -key ssl/server.key localhost'
Example: 'awwkoala localhost'
Example: 'awwkoala -p :8080 localhost'
Example: 'awwkoala -db /var/lib/awwkoala/db.bolt localhost'
Example: 'awwkoala -p :8080 -crt ssl/server.crt -key ssl/server.key localhost'
Options:
-a string
key to access admin priveleges (default no admin priveleges)
-crt string
location of ssl crt
-db string
location of database file (default "/home/mu/cowyo/data.db")
location of database file (default "/home/mu/awwkoala/data.db")
-httptest.serve string
if non-empty, httptest.NewServer serves on this address and blocks
-key string
location of ssl key
-p string
port to bind (default ":12312")```
port to bind (default ":12312")
```
```
If you set the admin flag, `-a` you can access a list of all the current files by going to `/ls/WhateverYouSetTheFlagTo`.