{"id":19989597,"url":"https://github.com/wavesoft/jbb","last_synced_at":"2025-05-04T09:33:14.551Z","repository":{"id":57279765,"uuid":"47397628","full_name":"wavesoft/jbb","owner":"wavesoft","description":"Javascript Binary Bundle - A binary format for packing data structures for the web","archived":false,"fork":false,"pushed_at":"2017-01-20T08:54:48.000Z","size":14513,"stargazers_count":59,"open_issues_count":4,"forks_count":4,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-10-13T11:43:14.207Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wavesoft.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-12-04T10:32:24.000Z","updated_at":"2024-04-09T11:43:03.000Z","dependencies_parsed_at":"2022-09-19T15:12:38.328Z","dependency_job_id":null,"html_url":"https://github.com/wavesoft/jbb","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wavesoft%2Fjbb","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wavesoft%2Fjbb/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wavesoft%2Fjbb/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wavesoft%2Fjbb/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wavesoft","download_url":"https://codeload.github.com/wavesoft/jbb/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224391393,"owners_count":17303609,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-13T04:48:35.343Z","updated_at":"2024-11-13T04:48:35.909Z","avatar_url":"https://github.com/wavesoft.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1\u003e \u003cimg src=\"https://raw.githubusercontent.com/wavesoft/jbb/master/doc/jbb-logo.png\" align=\"absmiddle\" /\u003e Javascript Binary Bundles\u003c/h1\u003e\n\n[![JBB Version](https://img.shields.io/npm/v/jbb.svg?label=version\u0026maxAge=2592000)](https://www.npmjs.com/package/jbb) [![Build Status](https://travis-ci.org/wavesoft/jbb.svg?branch=master)](https://travis-ci.org/wavesoft/jbb) [![Join the chat at https://gitter.im/wavesoft/jbb](https://badges.gitter.im/wavesoft/jbb.svg)](https://gitter.im/wavesoft/jbb?utm_source=badge\u0026utm_medium=badge\u0026utm_campaign=pr-badge\u0026utm_content=badge)\n\n**Why Binary Bundles?** For *faster* loading time due to *fewer* requests and an *optimised* binary format, closely compatible with Javascript internals. It is optimised in balance between size and performance, preferring performance when in doubt.\n\n[Examples](https://github.com/wavesoft/jbb/wiki#examples) — [Documentation](https://github.com/wavesoft/jbb/wiki) — [Tutorials](https://github.com/wavesoft/jbb/wiki#tutorials) — [Help](https://gitter.im/wavesoft/jbb)\n\n\u003cimg src=\"https://raw.githubusercontent.com/wiki/wavesoft/jbb/img/jbb-desc.png\" /\u003e\n\nWith JBB you can load all of your project's resources in a `node.js` instance and then serialize them in a single file. You can then load this file instead. \n\n## Usage - Loading Bundles\n\nDownload the [minified run-time library](https://raw.githubusercontent.com/wavesoft/jbb/master/dist/jbb.min.js) and include it in your project:\n\n```html\n\u003cscript src=\"js/jbb.min.js\"\u003e\u003c/script\u003e\n```\n\nYou can then load your bundles like this:\n\n```js\nvar loader = new JBB.BinaryLoader(\"path/to/bundles\");\nloader.add(\"bundle_name.jbb\");\nloader.load(function(error, database) {\n    // Handle your data \n});\n```\n\n### Using npm\n\nJBB is also available on npm. Both compiler and run-time library is available in the same package:\n\n```\nnpm install --save jbb\n```\n\nYou can then load your bundles like this:\n\n```js\nvar JBBBinaryLoader = require('jbb/decoder');\n\nvar loader = new JBBBinaryLoader(\"path/to/bundles\");\nloader.add(\"bundle_name.jbb\");\nloader.load(function(error, database) {\n    // Handle your data \n});\n```\n\n## Usage - Creating Bundles\n\nAfter you have [collected your resources in a source bundle](https://github.com/wavesoft/jbb/wiki/Creating-a-Simple-Source-Bundle-%26-Compiling-it) you can then compile it using the `gulp-jbb` plugin.\n\nIn your `gulpfile.js`:\n\n```js\nvar gulp = require('gulp');\nvar jbb  = require('gulp-jbb');\n\n// Compile jbb task\ngulp.task('jbb', function() {\n  return gulp\n    .src([ \"your_bundle.jbbsrc\" ])\n    .pipe(jbb({\n      profile: [ \"profile-1\", \"profile-2\" ]\n    }))\n    .pipe(gulp.dest( \"build/bundles\" ));\n});\n```\n\n# License\n\n```\nCopyright (C) 2015-2016 Ioannis Charalampidis \u003cioannis.charalampidis@cern.ch\u003e\n\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\nhttp://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwavesoft%2Fjbb","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwavesoft%2Fjbb","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwavesoft%2Fjbb/lists"}