The below steps don’t exactly correlate to the current state of this project.
How it works now
- On desktop/mobile add a URL to the
Inbox
collection in Raindrop IO - When on desktop, run macro
syncInbox
- The URLs are now as files in the root of my Obsidian vault (the bookmarks are deleted in Raindrop.io as well)
How it’s implemented
- Using SaaS Raindrop.io chrome extension and mobile app
- n8n talks to Raindrop.io to get and delete bookmarks
- n8n has a webhook I call from Obsidian
- When the webhook is called the flow creates files then deletes the bookmark from the collection
Info
This is a pull based approach, not push. So this can either be scheduled or ran manually
Stage 1 - Desktop Support
- Create Js or Go code that takes a URL, creates a file in the root of the vault, and labels it and puts some content into the note. Somewhat similar to what I did in .NET for bookmarks ✅ 2023-07-11
- Tweak the Chrome extension with an input and asubmit button in form that sends off to the api in the step above ^^^ ✅ 2023-07-11
- Give an indicator that it was sent and its ok to kill the tab ✅ 2023-07-11
- Fix the invalid file names ✅ 2023-07-16
Stage 2 - Thinking about Bigger picture (cli, docker, lambda)
- Wipe out old nx.dev folder ✅ 2023-07-18
- Create new nx.dev and move scorecard parsing to ✅ 2023-07-18
- Create easy script to copy transpiled code to obsidian dir, maybe golang should do this ✅ 2023-07-18
- Fix my scripts to be in the correct format for macros ✅ 2023-07-18
- Create macro to
Invoke: Refresh All Data
with the script above ^^^ ✅ 2023-07-18 - Add parsing of scorecards to the above golang and macro script Disc Golf Course Map Overlay ✅ 2023-07-19
- Create 2 executables,
lk
andlkat
to be like docker and docker backend. Reference ✅ 2023-07-19
Consumer
- Create obsidian macro repo in github ✅ 2023-07-19
- Do files exist, if yes dl them into vault, then delete or move them else where on dir or bucket ✅ 2023-07-28
Stretch
- Grpc method ✅ 2023-07-28
Ideas How To Implement
- Stage 1 - Desktop Support
- raindrop - I’d have to clean this up though after I read an article. So its kind of like an external data maintenance. If I use obsidian ITS FILES that I just delete. Plus when I do the raindrop.io dump… I don’t want people seeing the random stuff I want to read/revisit
Thought Stream
- localhost:8080/inbox/submit?url=https://www.mironov.com/owe/
- Go by Example: Writing Files
- Go by Example: URL Parsing
- Format a time or date [complete guide] · YourBasic Go
- Different ways to concatenate two strings in Golang - GeeksforGeeks
- Format a time or date [complete guide] · YourBasic Go
- CSS · Bootstrap
2023-07-17 thought stream
- NextJS: Simple Upload file to server - CodeSandbox
- reactjs - React Typescript: Get files from file input - Stack Overflow
- How to build a file uploader with Next.js and formidable
- node.js - How does one debug NextJS React apps with WebStorm? - Stack Overflow
- How to Implement an Uploading Service to S3 using NodeJS and TypeScript
- amazon s3 - How can I Upload file to S3 using Next JS with Zeit Now and formidable-serverless - Stack Overflow
- Uploading Files using Formidable in a Node.js Application | Engineering Education (EngEd) Program | Section
2023-07-19 Thought Stream
- How to structure Go application to produce multiple binaries? - Stack Overflow
- avelino/awesome-go: A curated list of awesome Go frameworks, libraries and software
- charmbracelet/bubbletea: A powerful little TUI framework 🏗
- golang cli framework - Google Search
- urfave/cli: A simple, fast, and fun package for building command line apps in Go
- cobra/site/content/user_guide.md at main · spf13/cobra
- Basics tutorial | Go | gRPC
- Golang gRPC Example - Earthly Blog
- Protocol Buffer Compiler Installation | gRPC
- Go Generated Code Guide | Protocol Buffers Documentation
- Go gRPC Beginners Tutorial | TutorialEdge.net
- Golang gRPC Tutorial: Building High-Performance Web Services
- protocol buffers - protoc-gen-go-grpc: program not found or is not executable - Stack Overflow
- Support for required fields in proto3 via options · Issue #1468 · protobufjs/protobuf.js
- go gin - Why can’t I start two servers in the same Go project? - Stack Overflow
- NathanBaulch/protoc-gen-cobra: Cobra command line tool generator for gRPC clients
- Using context.Context with cobra - Marcelo Bytes
- Add support for context.Context by burdiyan · Pull Request #893 · spf13/cobra
- cobra-context-demo command - github.com/mem/cobra-context-demo - Go Packages
- cobra-context-demo/main.go at eec1bd5b08ee162f9cc064d4defe73666f255fac · mem/cobra-context-demo
- vgarvardt/grpc-tutorial: Simple gRPC service written in Go with steps to reproduce
- build package - go/build - Go Packages
- go - How to build executable with name other than Golang package - Stack Overflow
- Basics tutorial | Go | gRPC
- grpc-go/examples/route_guide/client/client.go at master · grpc/grpc-go
- makefile execute another target - Stack Overflow
- shell - How do I make rm not give an error if a file doesn’t exist? - Super User
- cmd/go: result of ‘go build -o’ is missing the executable bit, and the resulting file does not execute (despite adding +x) · Issue #33889 · golang/go
Thought Stream 2023-07-28
- RabbitMQ: easy to use, flexible messaging and streaming — RabbitMQ
- amqp091-go/_examples/consumer/consumer.go at main · rabbitmq/amqp091-go
- 6 Top Message Brokers for Modern Applications - Geekflare
- Amazon SQS examples using SDK for Go V2 - AWS SDK Code Examples
- n8n public REST API | n8n Docs
- npm | n8n Docs
- Raindrop credentials | n8n Docs
- Move Binary Data | n8n Docs
- Markdown | n8n Docs
- JSON to Plain Text - Questions - n8n
- AWS SNS | n8n Docs
- Move Binary Data | n8n Docs
- How to format date like this? - Questions - n8n
- after file create n8n - Google Search
- aws.iam.User | Pulumi Registry