1
0
mirror of https://github.com/schollz/cowyo.git synced 2023-08-10 21:13:00 +03:00
Go to file
Zack 24be50c751 Update README.md
Former-commit-id: 2d492dbd85479444fe8f080c6f8881f66e58f368 [formerly fc7f34c55159a6a3c7d16c0ab5a26bb2c7ae1d72] [formerly 86c6cee5c00191f65099ee7ac1114ab891bfe0fb [formerly 797fc90e796ac72c389ee407e8a6b20363e56372 [formerly 8aee650e30]]]
Former-commit-id: cb968ce1f16096aaf9b51d097e3b276a75903e2b [formerly 88205e32bcaa4300814770a77779d4783aa02fd1]
Former-commit-id: 965510498f10ce2657887cde2505fa36f2b49c48
Former-commit-id: 4dc4b60200
2016-02-09 20:23:48 -05:00
install Updated init file 2016-02-09 21:40:54 +00: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 Added versioning to view 2016-02-09 18:44:00 -05:00
.gitignore Initial commit 2016-02-06 08:28:40 -05:00
db.go Versioning works with /edit 2016-02-09 18:38:25 -05:00
LICENSE Initial commit 2016-02-06 08:28:40 -05:00
main.go Versioning works with /edit 2016-02-09 18:38:25 -05:00
Makefile Finalized makefile and install instructions 2016-02-08 13:00:23 -05:00
README.md Update README.md 2016-02-09 20:23:48 -05:00
routes.go Fixed about sticky page 2016-02-09 18:59:01 -05:00
utils.go Updated about and readme 2016-02-09 19:32:55 -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. If you'd like help or find a bug, please submit an issue or Tweet me @zack_118

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")```

If you set the admin flag, -a you can access a list of all the current files by going to /ls/WhateverYouSetTheFlagTo.