Small JS library for fetching Buildit job listings data from SmartRecruiter's API


stars 🌟issues ⚠️updated 🛠created 🐣size 🏋️‍♀️
06May 24, 2021Mar 27, 2018Minified + gzip package size for @buildit/job-listings in KB



Small JS library for fetching Buildit job listings data from SmartRecruiter's API.


npm install --save @buildit/job-listings


// Import library
const JobListings = require('@buildit/job-listings');

// Fetch the latest Buildit job listings from SmartRecruiters' API.
// Note that getBuilditJobPostings() returns a Promise, which resolves
// to an array of job postings.
  .then((jobs) => {
    jobs.forEach((job) => {

      // E.g. "Software Engineer"

      // E.g. "Mid-Senior Level"
      // E.g. "Full-time"

      // E.g. "Dublin"

      // E.g. "Ireland"

      // Outputs full URL to job ad page on SmartRecruiters,
      // including the "Buildit website" tracking ID.
  .catch((err) => {
    // Handle errors

Currently, the library only exports the asynchronous getBuilditJobPostings() function. More functionality may be added in future - please raise an issue or a PR to let us know what you need.



  1. Make sure you are using correct Node version (8.x LTS aka "Carbon" or later)
    • If you have NVM, you can do nvm use
  2. Install dev dependencies
    • npm install

...and you're all set!

Coding conventions

The source code is located in the src/ directory. It's ES6 style JavaScript and follows AirBnb's coding standards.

Our Jest unit tests sit in the __tests__ folder and use the following file naming convention: [module name].test.js. We have 100% code coverage and aim to maintain that.


We use Babel to transpile into Node-compatible, CommonJS-style code for distribution via NPM:

npm run build

You can also watch the source files and automatically transpile them on changes:

npm run watch

Linting and testing

To lint the code:

npm run lint

To run tests:

npm run test


Contributions of all shapes and sizes are welcome!

If you create PRs, please make sure you're code lints and tests with no errors before asking for a review. Thanks!

If you find any bugs or have a feature request, please open an issue on github!

The npm package download data comes from npm's download counts api and package details come from npms.io.