HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
NicolasPetton
Indium
Emacs Lisp2017–2022
NicolasPetton / Indium · Archived

Indium

A JavaScript development environment for Emacs

6Distinct people
6Mentions
0Explicit recommenders
1.1KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

A JavaScript development environment for Emacs

GitHub

Where it is used

No documented product use has been verified yet.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

Mentioned in the same Hacker News threads. That is not proof they are substitutes.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 5:04:57 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year6 dated mentions

Observed mentions: 2017-10-19 14:50:10 UTC to 2022-03-23 20:56:17 UTC.

01232017-01-01 00:00:00 UTC to 2018-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments20172018-01-01 00:00:00 UTC to 2019-01-01 00:00:00 UTC (exclusive): 3 mentions; 1 submissions, 2 comments2019-01-01 00:00:00 UTC to 2020-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments20192020-01-01 00:00:00 UTC to 2021-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2022

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20172017-01-01 00:00:00 UTC2018-01-01 00:00:00 UTC101
20182018-01-01 00:00:00 UTC2019-01-01 00:00:00 UTC312
20192019-01-01 00:00:00 UTC2020-01-01 00:00:00 UTC000
20202020-01-01 00:00:00 UTC2021-01-01 00:00:00 UTC000
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC101
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC101

What Hacker News says

6 sources
I 'm an heavy user of diagrams to take notes while learning topics in biology and medicine. I think the most interesting feature of diagrams.net is its extensibility, which is not frequently mentioned. If you run in the javascript console... var editorUi; Draw.loadPlugin(app => editorUi = app) var editor = editorUi.editor var graph = editor.graph ... then you can automate changes to the diagram using mxGraph's api [1] on the `graph' variable from the console. Around this plugin mechanism I wrote some dirty hacks for personal use to make the editor behave more to my likings [2] (some features stopped working with recent versions of the desktop app), and an even dirtier Emacs mode for editing labels and having the js REPL available directly from Emacs when I need to run some code to fix my diagrams programmatically [3] (bas
Read the rest
ed on Indium [4] + the fact that electron apps can be launched with --remote-debugging-port=...). It's not pretty, but works enough for me, and it's only thanks to the customizability that diagrams.net allows. [1] https://jgraph.github.io/mxgraph/docs/js-api/files/view/mxGr... [2] https://gitlab.com/spellcard199/drawio-plugin-eight-droves-o... [3] https://gitlab.com/spellcard199/emacs-drawio [4] https://github.com/NicolasPetton/Indium
In Diagrams: Open-Source Alternative to Lucidchart
It's definitely not a charity. Dan offered to pay me a contract rate, but I was such a mess at the time that – and this an impressive fumble – I managed not to say "Yes, thanks! How do you feel about $x?" and instead launched off the deep end somewhere. (I was working on Emacs indentation in between Uber rides, since I was a driver at the time; much hacking ended up being done in a Best Buy parking lot under the actual moonlight. So at the time I was a little, uh, "eccentric" is probably the nicest way to phrase it.) If I made HN/YC sound weird, it's only because I'm weird; sorry about that. My path through life was nontraditional. At the top of my salary history (https://news.ycombinator.com/item?id=27109946) is "unpaid intern for a year" – I still think that unpaid internship was the best thing that ever happened in my life, especially
Read the rest
at 17. (Incidentally, I was paid a few hundred bucks under the table; the problem was child labor laws, which are somewhat onerous in America.) A lot of people would feel that that's unfair. I say that in exchange for them putting up with a sometimes-goofy 17 year old, I was able to learn almost as much in that first year as I have in all subsequent years. HN is similar in that there's an astonishing variety of interesting, unintuitive infrastructure tasks that you'll be exposed to. (I still rely on Emacs occasionally; that skill wouldn't have been in my arsenal.) One reason I said anything at all is because Dan has been saying for several years that one day he might open source the moderation browser extension he uses; think of it like an IDE for HN. I was thinking perhaps someone could show up and say "Hey, I'd be willing to help package it up for release!" or something, because I personally think that it would be Hella Cool, as they say, to have some kind of power-user mode for HN. But since it has possibly sensitive moderation features, trust is of course a crucial issue, which takes time to establish remotely. The other aspect was that Scott Bell (a former mod) was basically my only friend at that time. "Associate" is probably a better description, since he had an almost Vulcan-like detachment; nothing seemed to phase him. He was so cool that he was ice cold when it came to work, yet friendly and interesting when it came to life in general. Much of my present style was influenced by him. I think he put in a good word for me, and I ended up wasting a lot of their time instead, which I've felt badly about for years. So some of those feelings were coloring my writing a bit; I'm certain that the HN team is a well-oiled corporate machine, as you'd expect. It was interesting that an opportunity like that was even on the radar for me at one point, since as you allude to, it's somewhat unusual. But it's due to a confluence of factors, and they've likely had an influx of help (and business expense) since then. But of course, business expense means business priority. And that leaves no time for interesting yeoman work like open-sourcing a neat HN browser extension. (It's pretty rad: https://hn.algolia.com/?dateRange=all&page=0&prefix=true&que...) So if work like that sounds interesting, email 'em and say something. But a word of advice: go into it with a chill mindset, and realize that it'll take time to earn trust. https://news.ycombinator.com/item?id=20176460 mentions factoring out moderation-only features, so it's understandable that they can't simply say "Here's the code!" to anyone who shows up and asks. "Hacker News" definitely lives up to the "Hacker" part of the name. It's not too often that such impactful infrastructure is written in Lisp. I think that's super neat, so maybe someone else will too. EDIT: Oh yes, I should probably mention Numen. If you do end up needing to learn Emacs for random esoteric jobs, Dan's old Node.js debugger is an amazing resource: https://github.com/gruseom/numen/blob/master/numen.el It stopped working after Node 0.6 I think, when Node dropped the old debug API. But I got it working once, and holy moly it was cool. It was like Indium (https://github.com/NicolasPetton/Indium) in that it was a JS debugger on steroids, and IMO had nicer features than even Chrome. It was even superior to Indium in a certain aspect related to cross referencing function names in the debugger with the actual files/lines they were defined at. I don't remember why, but the new Node debugger system made that super difficult for some reason. Numen's a great example of the type of work that you'd be in a position to do. Much like Lisp itself, Numen seemed to have an extraordinary amount of power, yet few people noticed. Neat code.
In $365B wiped off cryptocurrency market after Tesla stops accepting Bitcoin
A non-exhaustive list: - Amber Smalltalk provides a Smalltalk layer on top of JavaScript: http://www.amber-lang.net/ - Indium adds JavaScript tooling support and runtime interaction to Emacs and brings a few Smalltalk features such as object inspection (the project creator and maintainer is a Smalltalker and author of Amber): https://github.com/NicolasPetton/indium - Lively provides a Smalltalk-like environment (code browsing, editing) as well as object(-graph) persistence, similar to the Smalltalk image idea, and mixes in some ideas from Self: http://lively-next.org/ Lively's meta interface is separately usable via lively.vm and lively.modules: https://github.com/LivelyKernel/lively.vm https://github.com/LivelyKernel/lively.modules
In Smalltalk’s Productivity
If Dan and Scott were kings, they would be fucking epic. Best monarchs ever. It's hard to think of anyone who cares more about fairness, but clever enough to decide for themselves. And they're usually right. I think I can count on one hand the number of mistakes they've made that even remotely mattered. And from a strategic standpoint, that number is effectively zero. There are probably a bunch of people behind the scenes, and they deserve lots of credit too. But there is something incredible about being able to post a dozen moderation comments every day for years without ever being so mistaken as to provoke community backlash. It would be really easy for them to offer an offhand opinion, or just make a bad call, and suddenly have people up in arms about it. They're also some of the most humble people. Both of them have done some really a
Read the rest
mazing work and have cool hobbies. But I've sort of had to pry that info out of them over years. http://github.com/gruseom/numen - Dan's project. JS REPL for emacs. It took another four years for anyone to even come close (https://github.com/NicolasPetton/Indium) as far as I know. https://github.com/sctb/lumen - Scott's project. A self-hosted Lisp that compiles and runs in both JS and Lua. The whole codebase recompiles in about one second flat when using LuaJIT. But like, that's maybe 5% of the cool stuff they've done. There's just no outward sign -- they don't bother with blog posts or any kind of self-promotion. So yes, all hail the kings of lisp.
In Analyzing HN moderation and censorship

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.