Home / Ideas edit

Online file management
qdirstat for online storage
Like https://github.com/shundhammer/qdirstat but for s3, dropbox etc. https://news.ycombinator.com/item?id=16189929
notepad for Dropbox / Google Drive etc.
A series of Notepad For X projects. The same UI but using different backends.
s3/dropbox/google drive client/file manager
Maybe a windows/mac app. Maybe a web-based app.
Main feature would be speed and search.
See grokbit for inspiration.
Related / inspiration:
a different file manager
  • e each folder is in its own window, which is as small as possible
  • similar to list of files in http://gotools.org/github.com/PuerkitoBio/goquery#expandgo
  • can open as many folders as wishes
  • each folder could be it's own window or could try to arrange them inside a single window
  • handling multiple folders
    • each folder is its own top-level window
    • try to arrange inside a single top-level window (the problem is of intelligently arranging the pieces inside also leaves empty space vertically)
    • each folder is its own top-level window but we mark all but one as participating in the alt-tab etc. and we provide an illusion they're a single group (by moving them as a group when the window is being moved)
  • width can't get bigger than the biggest item
  • width can be smaller than the biggest itme, in which case there are few possibilities
    • use smaller font
    • shorten the string by replacing part of text (e.g. middle) with "..."
    • truncate right
  • height can't be bigger than the total length of items
  • height can be smaller, in which case do traditional scrolling
  • each folder has a search box to add a filter
  • content needs to auto-update
libraries and other useful code
Documentation related
web version of goalkicker.com PDF books
It's stupid they it's in PDF. Make it HTML and with decent UI for going to parts.
Could be a good advertising for offdocs app.
better tldr.sh web ui
UI could be improved. list all commands at the top; add a search box at the top. drop-down at the top for list of commands. list all commands in a sidebar
tldr2.org is available
make a better version of https://github.com/AnthonyCalandra/modern-cpp-features
web-based API viewer for win32 API
PDF related
pdf inspector or text extraction
shows detailed information about PDF files
PDF DRM / Protector / Encryptor
A web service where peopel can upload a PDF and get a reader application for Windows that protects the PDF from being copied.
It would cost between $10-$100 to protect a single PDF, unlimited distribution.
Build the reader using pdfium, 32-bit only, maybe using WinForms for the viewer app.
Sequence of events:
  • compile pdfium library
  • write the simplest reader that uses external encrypted PDF file
  • write website that encrypts uploaded PDF file
faster PDF rendering
For faster PDF rendering, re-compile it. PDF format is rather complicated, mostly text format. A PDF renderer first has to parse it into in-memory representation and then renders it.
Imagine a binary format that is designed for fast loading and one-time PDF => binary format compilation step. With the right format, parsing step could essentially be eliminated.
We could even improve rendering time with some additional optimizations.
For example, there are PDF documents with gigantic images (think 4000 x 4000 pixels) that could be resized to some reasonable value and saved in a format that is fastest to decode.
I’m sure there are optimizations possible for complex vector graphics (e.g. removing stuff that we know will be invisible).
website for comparing poppler vs. mupdf vs. pdfium vs. pdf.js rendering
A website that allows comparing of poppler vs. mupdf vs. pdfium vs pdf.js rendering. Upload a PDF, render each page in each engine in both native size and down-scaled to a reasonably sized thumbnail for overview. The baisc layout would be:
[page 1 mupdf] [page 1 pdfium] [page 1 poppler][page 2 mupdf] [page 2 pdfium] [page 2 poppler] …
Then one could click on the thumbnail to see comparison of the native size.
Bonus feature: some type of overlay comparison.
html => pdf
Electron (Windows/Mac) app for converting html to pdf. Sell for $29, free version can be limited to e.g. 100 free generations.
A textbox where users enter url, show html preview and pdf preview. Create PDF using chrome apis and allow downloading. Allow cmd-line usage. Use mupdf or https://github.com/gerhardberger/electron-pdf-window to host preview after it's generated.
Advanced features would allow customizing PDF (change background, fonts etc.; works by over-writing css).
website / tool to extract text from PDF
Write a tool to extract text from PDF files.
Upload the file and get text in plain text file and json (augmented with position information) and maybe even xml.
Limit size of PDF files. Upsell to $19 mac/windows. Write a command-line tool, maybe even open-sources, also upsell GUI version.
Good example of upselling to a better version: https://www.spyfu.com
pdf printer exe
Cmd-line tool for windows, based on Pdfium. Many people use Sumatra for PDF printing but printing is not great there.
Pdfium should print well. Ship as a single executable which extract pdfium.dll on demand.
Make it free for personal use. Make it $99 for commercial use.
Mac to windows
xScope for Windows
pixelSnap for Windows
port window management mac utils to windows
Port one or more of the following utilities to Windows:
Useful code:
Pastebot for Windows
http://tapbots.com/software/pastebot/#sync i.e. an app that observes clipboard and remembers text/images that were pasted there. Could sync with the cloud. http://log.chrisbowler.com/post/308603065/pastebot
port dropzone from mac to windows
https://aptonic.com/, $10 mac app
port http://sipapp.io/ to Windows
port http://eternalstorms.at/yoink (better drag&drop) to windows, sell for $10
port https://github.com/JadenGeller/Helium to Windows in C#/CEF
port http://radiosilenceapp.com/ for Windows
port http://radiosilenceapp.com/private-eye for Windows
Audio Hijack for windows / Video Screen Recording
https://github.com/rygorous/kkapture : video/audio capture library that uses minhook
port blik to windows (quickly access important files)
port http://www.ricciadams.com/projects/pixel-winch to windows
exe tools
https://github.com/endrazine/wcc on the web
Make a web front-end for this tool
web frontend to https://github.com/google/bloaty
show memory layout of Go types by parsing Go binary
Could be a web app, desktop app using electron/native browser control wrapper.
web version of PEiD
ilspy .net decompiler online
Web-based program similar to http://ilspy.net/
Soulver/calculator for web/mac/windows
competition / inspiration
Make a free web version, maybe even chrome extension. Upsell on $9-$29 mac/windows version.
Use insect code, which is JavaScript, and build native UI wrappers around it.
https://github.com/kornelski/giflossy on the web
source code indexer
Write a simple source code indexer for C++ code. Use it for Sumatra code.
Combines searching with browsing.
limote - linux remote, webterm
An easier way to do linux inspection/debugging tasks.
Start an agent written in Go on remote machine. It provides web-based UI either by talking to the server or to a local Electron app.
Functionality provided:
  • htop
  • browse, edit files
  • systemd info (status of processes etc.)
  • network information
  • disk information
  • view logs
  • view (and explain) configuration
  • recognize most commonly used software (nginx, apache, mysql, postgres etc.) and provide infor about them
Could start by making a server for https://github.com/yudai/gotty.
Then could write a windows GUI front-end that ssh to the server and runs a command.
gui version of https://www.atoptool.nl/index.php
Use web as a front-end. Mac and Windows native apps. Backend in Go. Mac uses thin Cocoa wrapper around webview. On Windows a C# thin wrapper around cef or C++ thin wrapper around the new project from awesomium. A remote agent is copied to a linux server and the UI talks to it using some simple protocol.
desktop remote log viewer
Like saw (https://github.com/TylerBrock/saw) but as a desktop app.
Allows to connect to various, local and remote sources of logs and stream them locally. Add a fast search, multiple tabs, combining multiple log sources into one stream.
Can stream any logs on remote ssh servers and whatever online services expose logs.
Crucial for success:
Remote IDE
Local application where one can get browse-based shell/ide to a remote serve. Like nitrous.io or c9.io but as a local app which allows running on your own server. Works by deploying a Go agent via ssh to the server, agent talking back to local app or to the server.
BTerm - terminal/ssh client for windows or web
Some ideas from DTerm: http://www.decimus.net/dterm.php
An improved ssh terminal. Improvements:
  • miniature windows for switching between terminals (instead of tabs)
  • built-in file browser of the remote system
  • on-the-side command execution with capture of stdout
  • log all commands and their stdout, per machine (ip address)
  • intellisense for typed commands i.e. remembers all typed commands and shows a pop-up with matches for the currently typed command
  • support for ec2 instances
Coderunner on the web
Llike http://itunes.apple.com/us/app/coderunner/id433335799?mt=12 except on the web, Go on the backend, add social features.
Make it somewhat like StackOverflow i.e. people can tag a given code snippet with "Question" when it doesn't work or it doesn't behave the way they think it should. We would have a separate section on the website showing questions and basically replicate StackOverflow functionality (adding answers, accepting, uprooting etc.)
Add "critique my code" section where people can post working code and ask other people to improve. Other people could submit improvements, they could be upvoted, viewed as diffs, people would earn badges etc.
Competition / inspiration:
port https://github.com/lieff/minimp3 to webassembly
Better stock portfolio
A better visualization of how your stocks perform over time.
App that helps to find active forks for a given repository
Google Assistant for Windows
stacer in Go
re-implement https://github.com/XhmikosR/perfmonbar in Go
port bookish markdown parser from java to go
It uses antlr for the grammar so should be easy
https://gdbgui.com/ hosted
Needs to be downloaded and run locally. Write a Go program that talks to a server. Maybe charge.
port https://github.com/ShivamSarodia/ShivyC from Python to Go
It's a simple C compiler.
port https://github.com/lunet-io/markdig (CommonMark parser) from C# to Go
pandoc online
Make pandoc as online tool.
logging for serverless
web version of gotop
the simplest program that launches gotop remotely via ssh and shows the output in xterm.js hosted inside a web browser
Start with remotetop (rtop ?) that simply copies gotop over ssh to a remote server and launches it
Then provide web version that does the same but acts as a web server and shows in locally installed web server.
Then a version that uses lorca to launch in chrome.
Then native mac app that uses embedded web view.
Then native windows version that uses cef (or maybe electron).
mac gui over lsof
like https://github.com/sveinbjornt/Sloth but using web view (in a skeleton objective-c app or lorca) to display data. better ui
Online tools
image optimizer (or multi-format), native gui app or online
  • on the web using webassembly
  • a native mac/windows app, either paid (advertised from the web version) or as an advertisement for other software
  • fileoptimizer.io domain is free
  • write open-source, command line tool as a marketing for GUI version
unzip/unrar etc. + convert between archives
sha1/md5 etc. of files
all the https://github.com/libyal tools
ttf2woff, compile http://wizard.ae.krakow.pl/~jb/ttf2woff/ for web
toICO, compile http://wizard.ae.krakow.pl/~jb/toico/ for web
https://gif.ski/ for web
calibre as web tool
inspiration / competition
web version of https://github.com/activescott/lessmsi
Format description:
MSI file format reader:
web version of https://github.com/rs/dnstrace
pcap viewer on web (wireshark)
Allow people to drop a .pcap file and provide UI for viewing the files.
hex edit with structure support
For web or desktop apps
Inspiration / competition:
Could be windows GUI for https://github.com/martinlindhe/formats
diff tool
Inspiration / competition:
https://github.com/zavolokas/Inpainting on the web
A simple web service where you can upload an image, mark the area to be removed and download the result. Could re-write in Go or JavaScript so that it can be hosted on a webpage without a server component
online version of https://angelmmiguel.github.io/svgi/
file formats on web
CSVToTable web service
Like https://github.com/vividvilla/csvtotable but as a web service. Allows dropping CSV file, stores it indexdb, uses web service workers to convert to a table, allows sharing by uploading to a server and generating a url that would then download the file locally if not already present, using sha1
Names: ViewCSV, ShareCSV
Could then add excel etc.
ico spy
web version of exiftool
port noembed to go
file identificator
Drop a file and it tells you what kind of file it is.
SEO / analytics related
seo google position monitor
siterankmonitor.com is available
linkchecker / seo checker
Write free (and maybe open-sourced) cmd-line utility for windows/mac. Write GUI front-end for mac/windows and charge $29 for it. Cmd-line app is an advertisement for gui app.
Write web-based UI with limited functionality (number of pages crawled). Use it as advertisement for gui app.
Potentially have pro plan for web version which has no limits, allows running checks every day/week and e-mail if there are problems.
Can expand into web archiving utility.
simple google analytics dashboard
Make it for myself. Only shows the basic info (most popular pages, most popular searches), yearly visitors. Open source, easy to host for free on firebase. Based on https://www.notion.so/Google-Analytics-ab8c1b1d6a3f4cc1a25e5349202407d3#c6a047492d7145acb9cfe8b29fc65047
google analytics summary
A service that sends daily/weekly google analytics summary, where it shows only the most important information.
LinkCrawler in Winforms or as a web service
Use https://github.com/hmol/LinkCrawler as a base, add UI
or maybe in Go, use https://github.com/dbalduini/smeago/tree/master/src as base for the crawler
web service to build a sitemap
Build a web service that builds google sitemaps (https://support.google.com/webmasters/answer/183668?hl=en&ref_topic=4581190). It crawls the website and builds .xml or .txt file with links, describes how to submit it to google etc. It should use chrome headless.
It should aggressively cache the results to avoid re-crawling websites. Url should be /tools/build-submit-google-sitemap.html. Maybe use a domain like webtools.io/build-submit-google-sitemap.html
To make money limit web service to N links (100? 256?) and up-sell a $10-$30 windows/mac desktop app build on electron.
Basically, https://www.xml-sitemaps.com but better.
Web publishing / editing tools
Gist frontend or desktop mac/windows app
Better UI for GitHub Gist. Like gistbox/cacher.A web application for managing gists.
Gistbox got 10k users in frist few months, 75k in 5 years when it became Cacher (which is $6/mo for pro plan, $8/seat for team).
Competition / inspiration:
web notepad
A notepad-like editor for taking notes quickly.
Uses Monaco editor. Saves notes in local storage.
Charge people $12/year if they want to persist notes e.g. in Drive, Dropbox etc.
Write a "New tab" Chrome extension that opens the editor like https://news.ycombinator.com/item?id=17506753
Optionally it's a markdown editor, but it's meant for plain-text notes first.
something database (postgres/mysql) related
http://rickbergfalk.github.io/sqlpad/ is MIT-licensed app written in node. Package it as a desktop electron app and distribute via my website. Or maybe setup a public instance (after adding logging in or maybe storing credentials locally in the browser)
Port pgHero to Go and wrap as a Windows and Mac app.
Do the same for https://redash.io/ (they are $29/mo)
Windows GUI for Postgress query visualizer
Based on https://github.com/simon-engledew/gocmdpev. Or make a web front-end, accessible for all (although that already exists: https://explain.depesz.com/s/uou7)
desktop version of pgmetrics
https://pgmetrics.io/ is a open-source cmd-line app that dumps postgres stats to stdout. Write a desktop app that shows the same thing.
desktop version of pgweb
Just wrap https://github.com/sosedoff/pgweb in a Mac and Windows app
sqlite deep browser
A gui for analyzing sqlite database on a deeper level. Written in Go, windows front-end.
cmd-line to gui
GUI version of https://github.com/soheilpro/mon
Write windows desktop app like https://github.com/soheilpro/mon. Do it either the hard way (pure win32) or C# or sciter.
mylg.io web frontend or Mac "native" app (multipe network tools in one)
http://mylg.io/ is in Go with MIT license. Write a web front-end for it that allows to access the utility via web interface. The idea is that an agent can be deployed on a host via ssh and it connects to a website via grpc. Alternatively, do a "native" Mac app, where UI is web view talking to a Go server
wcd (like cd, but gui)
Like cd, but gui version. Like https://github.com/mattn/cho but with GUI.
Must be fully operable from the keyboard:
  • arrow up/down navigates current directory
  • enter or right enters the directory
  • ctrl-enter selects a directory (closes the window and prints the result to stdout)
  • esc closes the window (cancels the operation)
  • / or f or s : shows search ui where can quickly find any directory
  • a way to bookmark/unbookmark directories (F1? shift-8 i.e. '*' ?)
  • shows bookmarked directories e.g. at the bottom, for quick access. Allow e.g. Ctrl-<n> or Alt-<n> to select bookmarked directory
hashcat gui
windows or mac gui for network traffic monitoring
NLoad for Windows
wtrace GUI for windows
GUI wifi cracker for windows
UI version of https://ranger.github.io/ (file manager) for mac or windows
https://github.com/orf/gping as a windows GUI app
Mac GUI version of sshutlep
https://github.com/sshuttle/sshuttle is written in python.
Write a GUI front-end, possibly port to Go and also to Windows.
smarcrop ui for windows
A simple program to wrap https://github.com/muesli/smartcrop
awsless GUI
A GUI for aws, maybe can use https://github.com/wallix/awless for the backend (https://medium.com/@awlessCLI/aws-management-simplified-awless-io-0-1-0-2ec2d8810bcb)
GUI version of https://github.com/johnkerl/miller
(awk, sed, cut, join, and sort for name-indexed data such as CSV, TSV, and tabular JSON)
The weakness of such cmd-line tools is that they require writing of the whole sequence of operations up-front. There are 3 problems with that:
  • the syntax is rather arcane
  • the user doesn’t see the data he’s operating on
  • mistakes are costly i.e. changing the operations has to redo all computation from scratch
A better approach is to allow humans multi-step refinements of data in a UI that shows the preview of the operations.
For example, the operation:
$ mlr --icsv --opprint --barred \
  put '$tiv_delta = $tiv_2012 - $tiv_2011; unset $tiv_2011, $tiv_2012' \
  then sort -nr tiv_delta flins.csv
Would be done as sequence of steps
> load flins.csv
$1: 215 records
show first 10 records + headers

> add tiv_delta = $tiv_2012 - $tiv_2011
$2: 215 records
... 10 record preview

> remove tiv_2011 tiv_2012
$3: 215 records
... 10 record preview

> sort by tiv_delta
$4: 215 records
... 10 record preview

> save flins_sorted.csv
“add”, “remove”, “sort by”, “save” are operations that work on list of records. If argument is not provided, it’s implicitly the last result. The argument can be explicitly provided e.g.: > $2 save flins_sorted_2.csv
visidata on web or desktop
http://visidata.org/ is for tabular data interaction in the terminal. Make a web version.
tools from https://remysharp.com/2018/08/23/cli-improved
Write GUI version of those tools. The simplest is a browser shell with xterm.js as front-end and just sub-launch the command and redirect output to xterm.js.
More sophisticated would be tools that do the functionality but re-imagined for GUI. Implemented with web UI.
GUI version of tig
Write a Mac and/or Windows GUI version of tig https://github.com/jonas/tig.
Tig has 4.5k stars on github, which implies a significant interest.
It could be implemented in JavaScript/HTML. It could have a web version that allows browsing any github repository and on desktop it could be done as Electron.
Maybe a paid desktop app for windows or mac or purely on the web (or both and use web version to sell desktop app)
Or it could be done with https://sciter.com/. Or Winforms on Windows and Swift/Cocoa on Mac.
GitLens as a stand-alone app
It's a plugin for VS Code. Make it a stand-alone desktop app with Electron.
sumatra on-line + electron desktop app
desktop app for Google Billing
Windows / Mac app that unobtrusively lives in background and shows the GCE spend. On Mac it would be menu bar app that expands to full window on demand and maybe even to a website where you can export the billing in various formats (csv, import as google sheets etc.)
wmi explorer for windows
https://www.sapien.com/software/wmiexplorer sells for $49 and has shitty UI. Write better UI in Go. For SEO build a website that has better UI than msdn and lists the same information (scraped). Also promote from my fork of wmi library for Go.
better screenshot taking
auto hot key alternative that uses javascript
Instead of custom language, use chakra javascript engine
port https://github.com/fuhsjr00/bug.n from AutoHotKey to JavaScript on win10
port http://www.hammerspoon.org/ (mac automation in lua) to JavaScript/Windows
port https://github.com/bourgesl/marlin-renderer to Go
This is a 2d renderer for Java.
port https://github.com/forrestthewoods/fts_winsnap from C#/WinForms to Go
Rewrite Windows Firewall Notifier
https://github.com/wokhansoft/WFN/ is GPL and uses WPF.
Rewrite in Winforms and sell.
web version of Grafx
Compile with webassembly, like https://github.com/rhysd/vim.wasm
desktop version of https://github.com/jlfwong/speedscope
It's a tool for viewing sampling profiles, in the browser. Make it a Go backend/native app with embedded browser control for the frontend.
https://github.com/mapbox/flamebearer for Go
Implement the same thing for Go
build and try https://github.com/Pwootage/deadfad
port autoit to JavaScript
javascript-based shell helper
A better way to do common things in shell e.g.
> se `dir(.).where(globMatch(name, "*.Token.java")).sortBy(size).select(path)`
se is the name for the program (Shell Executor)
The breakdown is:
  • dir(path) is a stream of files with their attributes
  • where(cond) is a filter that rejects items that don't match condition
  • globMatch(attribute, match) returns true if attribute of the item matches match per glob algorithm (simple file name matching). we can also provide rxMatch() (or maybe for short just glob and rx)
  • sortBy(attribute) sorts by an attribute
  • select(attribute, ...attribute, ... attribute) selects only given attributes from the item
The big idea is that commands operate on arrays of items (attribute / value pairs) and the commands either transform the array (remove/rearrange/add) or the items (remove attributes.
It can be expressed quite well as plain JavaScript. We could make it a bit better with a custom parser (e.g. no need to quote attribute names as strings i.e. can write dir(.) instead of dir(".")
Add other sources of data, like netstat-like information about network connection
Alternative names:
  • jst (JavaScript Shell Toolkit)
  • sse Scriptable System Explorer
Could also make it a GUI app that would allow showing the results in GUI. The same scripts could show the results in a window.
web frontend to gomacro
A web-based REPL for enhanced Go. The simplest implementation just hooks up a process to xterm.js
local nfs server for Google Drive, Dropbox etc.
Write a windows/mac app that allows accessing all the file storage services (Google Drive, Dropbox, S3, Google Storage, Digital Ocean Spaces, ftp, sftp etc.) as NSF. NSF because it allows user-space implementation and can be mounted on Mac and Windows.
Implemented as Go NFS server and a bit of UI to provide credentials and automate mounting on the client.
From UI perspective it would be better to write it as a samba server, but probably much harder.
Samba resources:
make Mac/Windows binaries for JSON-Splora
It's an Electron app.
desktop version of dive (Docker image explorer)
web version of https://github.com/Microsoft/ProcDump-for-Linux
make windows build of fireman
https://github.com/firemanjs/fireman : fireman is an electron-based GUI for firebase
web version of https://github.com/jondot/goweight
https://github.com/miku/zek web hosted
add to online tools
Go to index of articles.

Feedback about page:

Optional: your email if you want me to get back to you:

Share on