Loading repository data…
Loading repository data…
mvdicarlo / repository
PostyBirb is an application that helps artists post art and other multimedia to multiple websites more quickly. The overall goal of PostyBirb is to cut down on the time it takes to post submissions to multiple websites.
PostyBirb is an application that helps artists post art and other multimedia to multiple websites more quickly. The overall goal of PostyBirb is to cut down on the time it takes to post submissions to multiple websites.
PostyBirb supports a wide range of websites, see the full list here.
v4 sets out to be more flexible for adding new features and updates not easily supported on v3. It also aims to be more contributor friendly and ease the implementation of websites where possible.
You can find v3 here.

PostyBirb uses Weblate as transltion service
Learn more: Translation guide
Please write clean code.
Follow conventional commits
npm --global install corepack (This is tool used for managing package manager's versions)corepack enable Makes NodeJS use the yarn version specific to the project (from package.json)yarn install Installs dependencies➤ YN0009: │ better-sqlite3@npm:11.8.0 couldn't be built successfully: winget install -e --id Microsoft.VisualStudio.2022.BuildTools --override "--passive --wait --add Microsoft.VisualStudio.Workload.VCTools;includeRecommended"
If you're on linux or other OS please create an issue with log from the unsucessfull build. It will have instructions on which packages are required and we will add them there. But generally it should work out of box if you have C++ compiler installed
yarn run setup Installs hooks/huskyyarn start Starts appyarn test/yarn format/yarn lintyarn distRunning yarn dist (or any dist:* variant) calls electron-builder install-app-deps as part of the packaging step. This rebuilds native modules (e.g. better-sqlite3) for Electron's embedded Node.js, which has a different NODE_MODULE_VERSION than your system Node.
After packaging, if you run yarn test and get an error like:
The module '...better_sqlite3.node' was compiled against a different Node.js version using NODE_MODULE_VERSION 133. This version of Node.js requires NODE_MODULE_VERSION 137.
the fix is to reinstall dependencies, which restores the system-Node-compatible binary:
rm -rf node_modules && yarn install
This is expected behaviour — the packaging step intentionally overwrites the binary for Electron. Tests always need the system-Node binary, so a fresh install after packaging is required before running tests again.
To add a new website see this guide
The "Back end" of the application. This houses all website implementations, data models, user settings, posting logic, etc.
The Electron part of the application that contains initialization logic and app setup.
The user interface for the application that talks with Client-Server through web-socket and https.
Used for functions that are impossible to implement without having a dedicated server (e.g. hosting images for Instagram uploads)