No description
Find a file
2025-10-06 09:52:23 +02:00
bruno/Gemlog add ReadGemlogEntryBySlug 2025-10-06 09:50:37 +02:00
gemlog add ReadGemlogEntryBySlug 2025-10-06 09:50:37 +02:00
internal/ui wrap text in entry view 2025-10-05 16:57:50 +02:00
.gitignore add db check fn and ignore debug logs 2025-10-01 23:32:53 +02:00
dev.sh init repo from gemini capsule project 2025-09-30 09:42:05 +02:00
go.mod wrap text in entry view 2025-10-05 16:57:50 +02:00
go.sum wrap text in entry view 2025-10-05 16:57:50 +02:00
main.go move config file loading out of gemlog package 2025-10-05 16:43:10 +02:00
README.md add config setup instructions 2025-10-06 09:52:23 +02:00

Gemlog CLI Tool

Quick tool to write gemtext posts for my gemlog.

=> gemini://travisshears.com/gemlog

Config setup

This app relys on a config file at ~/.config/gemlog-cli/config.yml

With the following format:

couchdb:
  host: http://myhost
  port: 1234
  user: gemlog-cli
  password: xxxxxxxxxxxxxxxxxxxxxxxxxxx

Dev

To run command locally:

$ go run .

Entites

Gemlog

  • id, uuid
  • title
  • slug
  • date
  • gemtxt
  • short? gemtxt < 250 char

Arch

For DB planning to use couch db

Use-cases

Create gemlog entry

Open editor with pre-filled template with frontmatter. Set example date (now), title, slug

Delete gemlog entry

Select from list then delete.

Edit gemlog entry

Select from list then edit.

Creating db

This project is backed by a nosql database, couchdb.

docs on couchbase permissions and users

Here is how to create the db and give user gemlog-cli access:

$ curl -X PUT http://admin:xxxxxxxxxxxxxxxxxxxxxxxxxxx@eisenhorn:5023/gemlog
$ curl -X PUT http://admin:xxxxxxxxxxxxxxxxxxxxxxxxxxx@eisenhorn:5023/gemlog/_security \
     -H "Content-Type: application/json" \
     -d '{"admins": { "names": [], "roles": [] }, "members": { "names": ["gemlog-cli"], "roles": [] } }'