pdslabeler#
This is a Bluesky labeler that labels accounts hosted on (most) Personal Data Servers (PDS) not operated by Bluesky PBC (and thus, "Independent").
If you just want to use it, subscribe to it. This instance of the labeler is developed and operated by gbl08ma; its account is hosted on the PDS that I operate (very on-brand).
Please bear with me as I'm not neither a TypeScript nor ATProto major. This was put together over three evenings. Potential future employers, this is definitely not the best code nor the best architecture I can muster, but if my alleged professional experience is any indication, this is already better than most of the code at your company anyway (for one, despite having no tests and no CI/CD, someone actually tested it manually, there was a deployment plan, and there was a test environment - the luxury!).
Developing#
To install dependencies:
bun install
To run:
bun run index.ts
This project was created using bun init in bun v1.2.22. Bun alleges to be a fast all-in-one JavaScript runtime. It's so fast it won't run unless your CPU supports AVX2 or (if you use the baseline binary) SSE4.2. The contributors to this project are not affiliated with Bun, in case you couldn't tell.
Deploying#
To actually deploy the labeler you'll need an account that's set up for it, and a hostname where the labeler server can be reached.
Read https://skyware.js.org/guides/labeler/introduction/getting-started/ to get an idea of what is necessary.
License#
This project is dual-licensed under MIT and Apache 2.0 terms:
- MIT license (LICENSE-MIT.txt or http://opensource.org/licenses/MIT)
- Apache License, Version 2.0, (LICENSE-APACHE.txt or http://www.apache.org/licenses/LICENSE-2.0)
Downstream projects and end users may choose either license individually, or both together, at their discretion. The motivation for this dual-licensing is the additional software patent assurance provided by Apache 2.0.