Open Source Projects
At BigCommerce, we benefit greatly from open source communities, and strive to give back. Below are the libraries we've built and open sourced.
| api-specs | HTML | 101 | 18 | 
|---|---|---|---|
| OpenAPI Specifications, Swagger, and JSON schema used to generate the human-readable BigCommerce API Reference. | |||
| app-sdk-js | JavaScript | 2 | 0 | 
| aspnetcore-react-sample-app | C# | 1 | 0 | 
| 🏪 Sample BigCommerce App Using ASP.NET Core and React | |||
| axfr2tf | Rust | 1 | 1 | 
| Converts an AXFR DNS query to Terraform resources | |||
| bc-lightstep-ruby | Ruby | 5 | 3 | 
| Generic lightstep library for distributed tracing in ruby | |||
| bc-nuxt-vue-starter | Vue | 28 | 39 | 
| A starter site for Vue + Nuxt based storefronts that uses Divante’s Storefront UI and BC’s GraphQL API | |||
| bc-prometheus-ruby | Ruby | 11 | 0 | 
| Drop-in support for prometheus metrics for Ruby apps | |||
| big-design | TypeScript | 54 | 33 | 
| Design system that powers the BigCommerce ecosystem. | |||
| bigcommerce-api-node | TypeScript | 2 | 2 | 
| A node module for authentication and communication with the BigCommerce API | |||
| bigcommerce-api-php | PHP | 181 | 135 | 
| Connect PHP applications with the Bigcommerce Platform | |||
| bigcommerce-api-python | Python | 82 | 80 | 
| Python client library for Bigcommerce API | |||
| bigcommerce-api-ruby | Ruby | 120 | 75 | 
| Connect Ruby applications with the Bigcommerce Platform | |||
| bigcommerce-for-wordpress | PHP | 42 | 100 | 
| A headless commerce integration for WordPress, powered by BigCommerce | |||
| bigpay-client-js | JavaScript | 45 | 2 | 
| Bigpay client-side library | |||
| bonvoy | Go | 0 | 0 | 
| Go utility CLI tool for Envoy and Consul Connect | |||
| channels-app | TypeScript | 10 | 12 | 
| checkout-js | TypeScript | 226 | 85 | 
| Optimized One-Page Checkout | |||
| checkout-sdk-js | TypeScript | 185 | 114 | 
| BigCommerce Checkout JavaScript SDK | |||
| commerce | TypeScript | 3 | 0 | 
| commerceTest | TypeScript | 0 | 0 | 
| cornerstone | HTML | 509 | 241 | 
| The BigCommerce Cornerstone theme | |||
| data-docker-debian-runfromenv | Shell | 1 | 1 | 
| Basic Debian image to run a user-supplied script from the environment. | |||
| data-store-js | TypeScript | 3 | 4 | 
| A JavaScript library for managing application state | |||
| dev-docs | JavaScript | 78 | 30 | 
| This repo contains the markdown files and static assets powering developer.bigcommerce.com. https://developer.bigcommerce.com/ | |||
| dev-tools-app | Other | 1 | 0 | 
| drupal-module-clientside_validation | Other | 4 | 1 | 
| Fork of the Drupal clientside_validation module to fix an upstream Internet Explorer bug - http://drupal.org/node/1995314 | |||
| eslint-config | JavaScript | 7 | 3 | 
| form-poster-js | TypeScript | 6 | 5 | 
| Post HTML form programmatically | |||
| gatsby-bigcommerce-netlify-cms-starter | CSS | 89 | 119 | 
| Example Gatsby, BigCommerce and Netlify CMS project meant to jump start JAMStack ecommerce sites. | |||
| go-check-orchestrator | Go | 2 | 0 | 
| Nagios check for Orchestrator | |||
| grphp | PHP | 8 | 20 | 
| PHP gRPC Framework | |||
| grphp-statsd | PHP | 3 | 1 | 
| StatsD interceptor for measuring grphp client requests. | |||
| gruf | Ruby | 56 | 512 | 
| gRPC Ruby Framework | |||
| gruf-balancer | Ruby | 1 | 1 | 
| Percentage-based balancing of gruf-client requests for testing | |||
| gruf-circuit-breaker | Ruby | 1 | 7 | 
| Circuit breaker support for gruf | |||
| gruf-commander | Ruby | 1 | 5 | 
| Command/Request library for Gruf request validation | |||
| gruf-demo | Ruby | 10 | 52 | 
| A demonstration Rails application utilizing gruf, a gRPC Rails framework. | |||
| gruf-lightstep | Ruby | 2 | 4 | 
| LightStep tracing for gruf | |||
| gruf-newrelic | Ruby | 6 | 7 | 
| New Relic tracing for gruf services | |||
| gruf-profiler | Ruby | 2 | 5 | 
| Profiler for gruf-backed gRPC requests | |||
| gruf-prometheus | Ruby | 8 | 4 | 
| Gruf plugin for Prometheus support | |||
| gruf-rspec | Ruby | 6 | 19 | 
| RSpec helper suite for gruf | |||
| gruf-sentry | Ruby | 0 | 2 | 
| Sentry integration for gruf | |||
| gruf-zipkin | Ruby | 2 | 5 | 
| Zipkin tracing plugin for Gruf | |||
| handlebars-v4 | JavaScript | 2 | 0 | 
| Wrapper for Handlebars.js v4 | |||
| hello-world-app-php-silex | PHP | 53 | 23 | 
| Hello World sample app in PHP and Silex | |||
| hello-world-app-python-flask | Python | 39 | 30 | 
| Hello World sample app in Python and Flask | |||
| hello-world-app-ruby-sinatra | Ruby | 27 | 10 | 
| Hello World sample app with Ruby, Sinatra and DataMapper | |||
| homebrew-choria | Ruby | 1 | 0 | 
| Homebrew tap for Choria | |||
| injector | PHP | 8 | 2 | 
| Dependency Injector component built on top of Pimple container. | |||
| laravel-react-sample-app | JavaScript | 43 | 53 | 
| Sample BigCommerce App Using Laravel and React | |||
| memoize-js | TypeScript | 2 | 1 | 
| A JavaScript library for memoizing the result of a pure function | |||
| mock-injector | PHP | 9 | 2 | 
| Auto-mocking dependencies for DI components testing. | |||
| net-http | PHP | 7 | 9 | 
| A basic HTTP client. | |||
| next-js-commerce | Other | 0 | 0 | 
| nomad-workload-cpu-actuals-report-generator | Groovy | 4 | 1 | 
| noopraven-go | Go | 1 | 2 | 
| A raven-go interface with a noop implementation. | |||
| omniauth-bigcommerce | Ruby | 29 | 13 | 
| OmniAuth Bigcommerce Strategy | |||
| optimized-checkout-changelog | Other | 5 | 1 | 
| Summarises the changes made to the Optimized One Page Checkout Angular application. | |||
| paper | JavaScript | 23 | 11 | 
| Paper assembles templates and translations and renders pages using backend template engines | |||
| paper-handlebars | JavaScript | 29 | 6 | 
| Paper plugin for rendering via Handlebars.js | |||
| php-resque-pause | PHP | 9 | 5 | 
| An addon for php-resque, php-resque-pause adds functionality to pause resque jobs. | |||
| point-of-sale-foundation | TypeScript | 3 | 0 | 
| Foundation for building custom POS applications w/ BigCommerce | |||
| puppet-bigcommerce_provisioning | Other | 1 | 0 | 
| Puppet librarian module to automate provisioning of MySQL and Redis clusters | |||
| puppet-module-supervisor | Ruby | 4 | 1 | 
| Puppet module for configuring the supervisor daemon control utility | |||
| request-sender-js | TypeScript | 11 | 3 | 
| HTTP request client for browsers | |||
| ruby-rails-react-sample-app | Ruby | 2 | 2 | 
| BigCommerce App - Ruby on Rails + React + BigDesign | |||
| sample-app-nodejs | TypeScript | 150 | 23 | 
| A reference implementation of a BigCommerce single-click app, in Node.JS + Next.js/React | |||
| sample-shipping-provider | PHP | 3 | 2 | 
| Silex based reference implementation of a Shipping Carrier Service integration | |||
| sass-style-guide | CSS | 30 | 281 | 
| Sass coding guidelines for BigCommerce themes | |||
| script-loader-js | TypeScript | 6 | 13 | 
| A library for loading JavaScript files asynchronously | |||
| statsd-client | PHP | 6 | 3 | 
| Record timing, increment, and count metrics in StatsD | |||
| stencil-citadel | CSS | 5 | 4 | 
| Citadel Opensource | |||
| stencil-cli | JavaScript | 123 | 90 | 
| BigCommerce Stencil emulator for local theme development | |||
| stencil-lang-validator | JavaScript | 1 | 3 | 
| Validate language keys used in templates and scripts | |||
| stencil-styles | HTML | 17 | 4 | 
| Compiles SCSS for the Stencil Framework | |||
| stencil-utils | JavaScript | 42 | 27 | 
| Utility library for the Stencil theme framework. | |||
| storefront-api-examples | HTML | 12 | 8 | 
| Example of using the GraphQL Storefront API to power a static site using Bootstrap and VanillaJS | |||
| storefront-data-hooks | TypeScript | 32 | 150 | 
| Hooks for React Storefront UI Components | |||
| subscription-foundation | TypeScript | 8 | 2 | 
| Foundation for building custom subscription applications w/ BigCommerce | |||
| theme-context-object-schemas | Other | 7 | 3 | 
| JSON schema used to generate the human-readable BigCommerce Handlebars Reference. | |||
| theme-performance-testing | Other | 1 | 0 | 
| themes-lib-baseline | HTML | 1 | 0 | 
| themes-lib-bundle | JavaScript | 1 | 0 | 
| themes-lib-carousel | JavaScript | 1 | 0 | 
| themes-lib-compare | JavaScript | 0 | 0 | 
| themes-lib-core | HTML | 2 | 0 | 
| themes-lib-jquery.revealer | JavaScript | 1 | 0 | 
| themes-lib-jquery.trend | JavaScript | 1 | 0 | 
| themes-lib-loading | JavaScript | 1 | 0 | 
| themes-lib-modal | JavaScript | 1 | 0 | 
| themes-lib-quick-shop | JavaScript | 1 | 0 | 
| themes-lib-scroll-link | JavaScript | 1 | 0 | 
| themes-lib-sections-widget | JavaScript | 1 | 0 | 
| themes-lib-skeleton | HTML | 1 | 0 | 
| themes-lib-squid | JavaScript | 0 | 0 | 
| themes-lib-swipe-fade | JavaScript | 1 | 0 | 
| themes-lib-tabs | JavaScript | 0 | 0 | 
| themes-lib-twitter-widget | PHP | 1 | 0 | 
| themes-lib-validetta | JavaScript | 1 | 0 | 
| themes-lib-zoom | JavaScript | 1 | 0 | 
| threatDragon | Other | 2 | 1 | 
| This repo is for storing threat modelling of BigCommerce projects | |||
| tslint-config | Other | 5 | 2 | 
| Default TSLint configuration used at BigCommerce | |||
| validate-commits | JavaScript | 4 | 4 | 
| Commit message validator | |||
| widget-builder | TypeScript | 10 | 8 |