Skip to content

Instantly share code, notes, and snippets.

@twolfson
Last active February 9, 2017 09:03
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save twolfson/4109692 to your computer and use it in GitHub Desktop.
Save twolfson/4109692 to your computer and use it in GitHub Desktop.
Good ideas that I will never get around to

npm link for Windows

  • grunt task that watches over node_modules directory in a repo and copies the directory on change
    • Could be also be done with nodemon or something else

SkyDB

CSS as a queue

  • As mentioned in one of Mathias Meyer's talks, any language eventually be used as a queue. Someone shouted out CSS. I am kind of interested to see how this will play out.
    • Probably just using a + a with some color differentiation would do the trick but still having JS in front of it seems hacky.
    • Maybe we could use those state holders via CSS3 infinite transitions (see CSS tricks)

display: fire

  • Akin to display: feline;, we could do a display: fire; which brings back the flaming text of the 90's.
    • Animated is preferred
    • It should be a lot easier to write this as a CSS class first (SASS/LESS/Stylus accepted as well) then follow a similar implementation to display: feline; by sniffing CSS attributes.

Include stars for npm-www search

  • The main problem being npm-www doesn't use npm search but it should. Fix this. And include stars.

git-based document store

  • Sometimes, it would be awesome to fork, rollback, merge, and diff items across users and time.
  • Maybe Plunker has done something similar -- look into their code base

Phantomjs' ghostdriver via Chimera

  • Phantomjs' ghostdriver is nice but still pending release. Short circuit that by implementing the entire JSON wire protocol of Selenium into a node server which is hooked into Chimera.

HTML to DOM intepretter

https://gist.github.com/4109686

Selenium grid server in node

Implement Selenium's wire protocol in node. This removes the dependence on Java. wheeee!

http://code.google.com/p/selenium/wiki/JsonWireProtocol

Perceptual diff

There are plenty of perceptual diff tools coming out since the release of dpxdt; wraith and huxley to name a few. However, none of them are architected for the general case (i.e. front-end frameworks and multiple browsers).

I detailed a plan in another gist: https://gist.github.com/twolfson/6077989

split repl

In the same way that Firebug has a split REPL (i.e. side-by-side panels, one for command input that persists code when run, one for output), we should have one for node.

Markdownish

A subset of Markdown that can be compiled to JSON/YAML.

Screenshot diff system

https://gist.github.com/twolfson/7639068

Sublime plugin select words

Sublime plugin that selects all visible selected words - On screen only

Compile to language that fixes amateur pitfalls

https://gist.github.com/twolfson/7639547

CSS selector minifier

.box -> .b, <div class="box"> -> <div class="b">

https://gist.github.com/twolfson/8117853

Beautifier that focuses on composability over extensibility

Using the node focus/Unix philosophy of one thing well, a plugin based beautifier might work out quite well.

It would operate by transforming the AST (or some more granular form for stylistic purposes)

Comparison of searches in strange contexts

Linear search vs binary search when looking for a definition

What does a binary search mean in this sense? Is it faster?

Create website where each click is off by 120px left

As inspired by Skhizen, we should create a website where every click is off by 120px left.

http://vimeo.com/36824575

This can be acheived by click jacking the entire site or maybe some magic cursor: none

dochub.io for linux man pages

Sometimes, you want to quickly browse to a man page in your browser

http://dochub.io/ does a pretty good job of this

CSS solution board

There are decent solution boards but most of them are out of date. Start a new one

  • Example case: text truncation solutions

grunt task that creates files with numerical prefixes

Not sure why I wrote this one down but here it is:

Grunt task to take order of file names and copy them with numerical prefixes (padded numbers preferred)

01->99
001->999

If there is not a padded number lib, it should be made.

140 bytes

  • 140 byte XHR -> might already exist
  • 140 byte FileWatcher -> shortest variant would be user input fn

css color inverter bookmarklet

There was an article that used black/white to test the color palette of a website

http://sarasoueidan.com/blog/test-css-in-black-and-white/

Unfortunately, it seems to have been taken offline. Anyway, it highlights the benefit of seeing your website's contrast in a new light. It could also be used for color inverses. I started on this but never finished:

https://github.com/twolfson/black-and-white-css

sass in js

The current libsass solution is cool but does not scale well for the browser/is hard to maintain for those who don't know C. It would be nice if there were a full C implementation.

Approve/disapprove system to pull requests

Phabricator has a great approve/disapprove system. I propose we bring it over via browser extensions + website. When you open a PR you can add reviewers who will then approve/disapprove it via comments (hooks back to service). This will then pass/fail the webhook depending on amount of reviewers approved it.

Proof of concept should verify that a webhook can alter its state without code changes

Error extension

In JS, it is difficult to extend upon existing errors (to add metadata via keys, more stack trace, or the original message). The closest I have seen people come is:

https://github.com/flatiron/errs - Does merging well but does way too much in the process

https://github.com/apto/errman - Great for types but not extension

I believe we can do better, all we need is testing.

Theme extender for Sublime Text

https://gist.github.com/twolfson/01d1417521774109cc90

"Close all but..." plugin for Sublime Text

Provides a quick list of:

  • Each open tab
  • Done, close remaining
  • Undo last selection

When a tab is selected, it gets into the list and another list is generated.

When "close remaining" is selected, the unselected tabs are closed

Undo last selection is a nice to have that reverses the last addition

File stats and gzip stats plugin for Sublime Text

In order to view quickly estimate how large a browser-side edit/addition will be (e.g. new JS, new image). It would be awesome to see a file size and gzip size of the current buffer in the status bar.

This has been completed in SublimeText/StatusBarFileSize#1

GitHub release library that consumes from folder containing YAML front matter Markdown and static assets

While thinking of the next iteration of foundry, we came up with a nice concept for releases. Inside of a folder (e.g. gh-releases), we would have semver'd files (similar to Sublime Text packages) that have Markdown with YAML front matter (e.g. what assets to upload).

Upon release we would look for the corresponding file and upload it. Similarly, the assets would be resolved based off of the paths (specified via YAML front matter) and uploaded as well.

base-emoji

Convert ASCII text to emoji characters. Useful for serializing/deserializing strings like UUIDs.

Inspired by emo

Mock Sublime Text API

To make testing Sublime Text easier and re-implementing its integrations in other scenarios (e.g. CLI), we should consider mocking the Sublime Text API.

git battle mode

Similar to victorious-git but takes it a step further

On merge conflict, start playing battle music. On pre commit success, play victory fanfare

Token visualizer for ES trees

Show a script with token blocks highlighted chunk by chunk. On hover/select, do a flame of all the attached notes and their start/end tokens

Accessibility power navigation

Leverage accessibility tooling for sighted users or maybe extend enhancements to accessibility users as well.

  • Overlay highlight all links/headers via shortcut
  • Select link/header via n/p or letter highlight next to overlay (similar to EasyMotion)

Font stack picker

List fonts with default OS availability (e.g. percentages and what OS) and then allow them to be compared side by side while selecting out a stack.

Target is for environments which can't use custom fonts (e.g. email clients)

Large file opening protection in Sublime Text

Directly inspired by https://github.com/cakecatz/atom-protector. Prevents opening large files and freezing process as it loads large file

Reminde me bot for GitHub

On occasion, there are issues that need to be revisited a week later (e.g. blocked by upstream issue but have a workaround). We can revisit in a week and implement the workaround if there's no response. It would be good to have a bot that listens for reminder me actions like Reddit and Twitter

Arrow or number based autocompletion

Write out some text and suggestion pops up at cursor


+----------------------+
|            ^         |
|    <-      |    ->   |
| +------------------+ |
| | Hello | Hi | Sup | |
| +------------------+ |
| helo||               |
|                      |
+----------------------+

flappy bookmarklet

Originally thought of on 2014/02/17:

Similar to Katamari bookmarklet but for flappy bird

Browse ZIP file in browser

Originally thought of on 2013/12/09

Automatic formatter for reStructuredText

Originally thought of in 2013:

Take reStructuredText linter one step further and make it a formatter

Hourglass proxy

Hourglass - proxy module that slowly moves all traffic from one side to another

Poor person's metrics reports

Collect/send weekly server metric reports

cron + collectd + AWS' SES

Good things to collect: cpu, disk space, disk ops, net ops, entropy

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment