1
0
mirror of https://github.com/schollz/cowyo.git synced 2023-08-10 21:13:00 +03:00
Go to file
Zack 7148e1a4bf Update README.md
Former-commit-id: b52fbfb8aec0c469dc0934d61e01f972fc9eeef0 [formerly cd61abfd463f70cd79bec242efbf2a5dde7a669b] [formerly 4d3e6440541276bd05cf3cb5943bb170fc5c5b8f [formerly 7dd7adb081993050e9b200dea3390d3ada03a008 [formerly ead8ad1100]]]
Former-commit-id: d89567e1fe419b359ba77ba9802fb88a77fb8c84 [formerly f2ca37385d677f21c69ea5d50fed8489ae10189b]
Former-commit-id: 856117d494871cea9468f12084f647ce628eca79
Former-commit-id: ec1c1c48d2
2016-02-10 08:31:35 -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-10 08:31:35 -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

Logo

AwwKoala.

A Websocket Wiki and Kind Of A List Application

Version 1.0

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.