1
0
mirror of https://github.com/schollz/cowyo.git synced 2023-08-10 21:13:00 +03:00
Go to file
Zack Scholl d5796746d8 Updated
Former-commit-id: 241abf0fdf35f35af8cb312503bb5c09a97d412f [formerly d4d6000b5c0de667bb204c96efc4f5a1d769cbcb] [formerly 9081696b40eae837e8a1ffdeba997fa20f02fd75 [formerly 26f04fd0609e8b8672ceab9d6848fa21b60bd297 [formerly eba475486e]]]
Former-commit-id: c0d299442a1c8979abf48b7c3a6485547aca44d2 [formerly 622b988a69284c6b4ab1c6401752096727703125]
Former-commit-id: 260e65831228c823b768412963112c10cc6053bd
Former-commit-id: 580372e0c5
2016-02-09 16:35:37 +00:00
install updated nginx 2016-02-08 12:46:25 -05:00
ssl enable TLS as option 2016-02-07 10:20:41 -08:00
static Updated 2016-02-09 16:35:37 +00:00
templates Updated 2016-02-09 16:35:37 +00:00
.gitignore Initial commit 2016-02-06 08:28:40 -05:00
db.go Loads current text statically. Faster loading 2016-02-08 08:37:22 -05:00
LICENSE Initial commit 2016-02-06 08:28:40 -05:00
main.go Added nginx to readme, about 2016-02-08 17:47:07 -05:00
Makefile Finalized makefile and install instructions 2016-02-08 13:00:23 -05:00
README.md Base64 img tag support 2016-02-08 20:10:01 -05:00
routes.go Supports base64 images now 2016-02-08 20:05:29 -05:00
utils.go Base64 img tag support 2016-02-08 20:10:01 -05:00
websockets.go Removed case senstivity from savin 2016-02-08 01:37:46 +00:00

Cowyo...

...is the Collection of Online Words You Open.

This tool is supposed to make sharing online notes and lists fast and easy. To jot a note, simply load the page at / 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). No need to press save, it will automatically save when you stop writing.

You can also write your notes in Markdown and then render your page by adding /view. For example, the page /about is rendered at /about/view.

If you are writing a list and you want to tick off things really easily, just add /list. For example, after editing /grocery, goto /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.

Math is supported using Katex. Base64 images are supported in img tags as well.

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.

Powered by Raspberry Pi, Go, and NGINX

Raspberry Pi Go Mascot Nginx

Install

To get started on your local network just do:

git clone https://github.com/schollz/cowyo.git
cd cowyo
make
./cowyo -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
nano Makefile <--- EDIT Makefile to include YOUR EXTERNAL ADDRESS
make && sudo make install

Now the program starts and stops with

sudo /etc/init.d/cowyo start|stop|restart

Edit your crontab (sudo crontab -e) to start on boot:

@reboot /etc/init.d/cowyo start

Usage

$ cowyo --help
cowyo: a websocket notepad
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'
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")
  -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")```