7148e1a4bf
Former-commit-id: b52fbfb8aec0c469dc0934d61e01f972fc9eeef0 [formerly cd61abfd463f70cd79bec242efbf2a5dde7a669b] [formerly 4d3e6440541276bd05cf3cb5943bb170fc5c5b8f [formerly 7dd7adb081993050e9b200dea3390d3ada03a008 [formerly |
||
---|---|---|
install | ||
ssl | ||
static | ||
templates | ||
.gitignore | ||
db.go | ||
LICENSE | ||
main.go | ||
Makefile | ||
README.md | ||
routes.go | ||
utils.go | ||
websockets.go |
AwwKoala.
A Websocket Wiki and Kind Of A List Application
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
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
.