Are you:
- A California resident?
- A motor vehicle owner?
- A fan of creative self-expression?
- Able to run Node.js computer programs?
If so, I've got the video for you!
🖍️ Announcing Scribble Diffusion!
A free and open-source AI-powered web app that lets you draw a rough sketch, add a text prompt, and generate images based on your sketch.
Today is my last day at GitHub. Those five years kinda just flew by. Not sure how to sum it up in a tweet. Many highs and lows. Today I'll mention some of the highs.
You too can build AI-powered apps!
Watch this video to learn how Scribble Diffusion was made in just two days:
Thanks to the fine folks behind
@nextjs
,
@vercel
,
@UploadHQ
, and
@replicatehq
for making it so fun and easy to build stuff like this. 💜
After several months of work, we finally launched the new
@electronjs
website! I'm really happy to have this out in the wild, and expecting many good things to come of it.
We just launched our new internationalized website! New domain, docs translation in progress for over 20 languages, new apps pages, and
@nodejs
from top to bottom. 🐢🚀
;
@charliebholtz
and I recorded a short demo to show how easy it is to add image search to a web application using the ImageBind model from
@AIatMeta
, running on
@replicate
and
@flydotio
. Create vector embeddings for each image, store them in a database, load them into memory at
Ever tried to contact a GitHub user but couldn't find their email address?
There's a trick for that: Navigate to one of their public git commits and add ".patch" to the end of the URL.
With help from
@gr2m
, I just wrote my first
@ProbotTheRobot
plugin. It leaves helpful comments on your pull requests when they land in a release. Give it a try!
Electron Fiddle is an impressive new tool for building
@electronjs
apps. It lowers the barrier to entry for new app developers and lays a foundation for building sustainable production apps.
I made a screencast about how I write node modules these days. It covers stuff like test-driven design, code coverage,
@StandardJS
,
@fbjest
, npe, ghwd, semantic-release,
@travisci
,
@ghub_io
, package-json-to-readme, hub, pick, the
@nodejs
REPL, and more.
Scribble Diffusion now has dynamic OpenGraph images, so your friends will see a side-by-side preview of your scribble and the generated output when you share a link on Twitter, Slack, Discord, Messages, etc.
🌀 Spiraling generative images were all the rage last week, but I'm only just catching up. Here's my first attempt.
You too can be a copycat! Details in thread...🧵
News flash! 🤖💭
It's my first week at
@replicateai
, a new Berkeley-based startup working to make machine learning reproducible. So happy to join
@bfirsh
and Andreas Jansson on this adventure. Much to learn...
Working on
@electronjs
was a joy. It's a legit self-governing international open-source community. It's been great to see it grow from its humble
@AtomEditor
roots to being the thing that powers Slack, VSCode,
@GitHubDesktop
, etc.
The
@turingway
is a great resource for learning about reproducible data science. I'm really impressed by the content, the illustrations, the welcoming language, the acknowledgment of contributors, and the meticulous attention to detail. 👌
🧁 Happy first birthday to
@replicate
's OpenAPI schema!
OpenAPI is core to Replicate's design. Our public HTTP API has an OpenAPI schema, but so does every single model on the platform. When we created Cog, one of the most important design goals was to provide a standard way of
Need to transcribe long audio files?
I just published a copy of WhisperX on
@replicate
that's running on large A40 GPUs, so it can support longer files than some of the other Whisper models on the site.
We're building a pretty sweet team at
@replicatehq
.
I recorded a short video to highlight everyone on the team, what they do, and why I love working with them.
In case you missed it, you can now create fine-tunes of SDXL right on the
@replicate
website. You can also do this programmatically with the API, but the web form makes it really easy.
As of last week, all of GitHub's product documentation (and the tooling that powers it) is open source! I've been leading the effort to unify and localize GitHub's docs for over two years now, and I'm so pleased to be working in the open again.
🐍
@vercel
is the obvious choice for hosting Node.js apps, but they have a Python runtime too.
Here's a really simple Flask app by
@nutlope
that uses
@replicatehq
to generate image descriptions for ALT tags:
There's a new tab on the
@replicate
dashboard for viewing webhook activity. Pretty useful if you're running a lot of predictions and need to keep track of delivery failures.
I got really into the practice of "Semantic Releases" while working at GitHub. It's an approach to versioning and releasing software that wholeheartedly embraces SemVer and cuts a lot of the manual work out of those processes.
Seven years ago I created
@SwaggerApi
with
@fehguy
. The startup we built it for is long gone, but the open-source survived and is used by the likes of
@Wikipedia
Yo
@replicate
model authors! Did you know you can use GitHub Actions workflows to continuously push your models? Just drop a YAML file in your GitHub repo and you're good to go.
🧵We wrote a guide that walks you through the process...
My two favorite talks from this year's
@jsconfeu
are now online:
🕸️ A Web Without Servers by
@taravancil
:
✊ Formalizing user rights on the web by
@pfrazee
:
I've been working on this OpenAPI project for over a year now, and I'm glad it's finally seeing the light of day. Go forth and (programmatically) build great things using GitHub's REST API!
How many hours of your life have you spent removing backgrounds from photos? You can never get those hours back, but now you can use AI to do it.
Here are a few background removal models on
@replicate
:
-
-
-
This app was really fun and easy to make! It's amazing what you can build these days using
@nextjs
,
@tailwindcss
,
@replicatehq
, and
@vercel
.
It's open-source, and a good starting point for building your own AI-powered apps.
Check out the README:
> npm doesn't love us and it doesn't love its employees, either
As a former employee of npm Incorporated, all I can legally say is that I'm so glad this story is finally being told.
I just released the first version of Illuminati, a minimalist open-source webcam app for your desktop. It's useful for making screencasts that feature your smiling mug floating over all other windows. Powered by
@electronjs
.
Scribble Diffusion is less than two weeks old, and people have already created over 4 million scribbles!
Big shout to
@UploadHQ
for building such a nice product and providing great support to help the project scale.
I just signed up for
@Netlify
, connected it to a
@github
repo, deployed a static website, added a custom domain, and set up HTTPS with a
@letsencrypt
SSL certificate, all in under five minutes. And it's free!
There's an npm package for querying the ChatGPT API, and now it has a command-line interface. I'm using it to generate arcane but useful bash commands from plain English.
Thanks to
@transitive_bs
for making this very useful package. 🙌
After Electron, I set my sights on GitHub's product docs. My aim was to internationalize that content too. It took a couple years to get there, but is now available in English, Simplified Chinese, Brazilian Portuguese, Spanish, and Japanese.
⚡️Pro tip for model builders using Cog:
Use the `--separate-weights` flag when building to put the model weights in a separate Docker layer from the model code, so future pushes will be faster.
See
I sat down with
@LevelDB
aficionado
@juliangruber
to talk about what LevelDB is, how to use it, and where the project is headed. We put our conversation up on Youtube and some notes on GitHub. Thanks, Julian!
Did you know that language models can generate structured data?
There's a new collection of models on
@replicate
that take a prompt and a JSON schema as input, and return responses that conform to the schema.
;
@replicatehq
has a new API for fine-tuning and pushing your own public and private language models. But how do you know which base model to use? Here's some off-the-cuff wisdom about Vicuna, LLaMA, Flan, and MPT-Storywriter from my NLP-savvy colleague
@JoeEHoover
.
Under the hood, Paint by Text is powered by a new ML model called InstructPix2Pix, which was trained on Stable Diffusion and GPT-3 to modify existing images using instructional text prompts.
You can run this model yourself using Replicate's API:
We're excited to be hosting another Hack Night at our HQ with
@vocodehq
and
@replicatehq
on Tuesday, May 30th as part of SF
@techweek_
.
We've got a few spots left - make sure you let us know what you want to build!
🤖 The Semantic Pull Requests
@probot
app is now stable and ready for general use. Go forth, write semantic PR titles, and let the machines do your versioning and releasing.
I made the
#2
spot on this list of "most active GitHub users worldwide". This is not a sign that I am highly productive, but rather an indication that I need to be a better shepherd of my robots.
A stranger just cold-emailed me to say thanks for building , a site they use daily for writing. It's a relief to know all this shit I've built over the years is still actually useful to some people.
🍿 I gave a talk today about the origins of Swagger (now
@OpenApiSpec
) at the
@APISpecs
conference. At long last, the world will know why I named it Swagger. 🦆
The OpenAPI (aka Swagger) schema now lives in the codebase, where it's exercised by the test suite. Engineers now use a schema-first approach to designing new APIs. The docs site consumes the schema, so docs always reflect reality. Shared contracts ftw!
I also led the effort to open-source . A lot of docs work still needs to happen behind closed doors, so we built , a set of tools to automate the process of keeping a pair of private and public repos in sync.