{"id":20705219,"url":"https://github.com/gluestack/bolt-framework","last_synced_at":"2025-04-23T01:32:25.222Z","repository":{"id":178006367,"uuid":"659086497","full_name":"gluestack/bolt-framework","owner":"gluestack","description":"The Universal Project Runner. Run Docker containers, child processes, or even encapsulate your entire project within a VM, all under one unified API.","archived":false,"fork":false,"pushed_at":"2024-01-30T06:32:05.000Z","size":575,"stargazers_count":14,"open_issues_count":1,"forks_count":3,"subscribers_count":7,"default_branch":"main","last_synced_at":"2025-03-29T20:51:11.059Z","etag":null,"topics":["bolt","docker","gluestack","host","local","project-runner","service-runner","virtual-machine"],"latest_commit_sha":null,"homepage":"https://bolt.gluestack.io","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gluestack.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":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-06-27T05:45:42.000Z","updated_at":"2025-02-17T12:12:02.000Z","dependencies_parsed_at":"2024-06-12T15:39:50.888Z","dependency_job_id":"be5929d5-5f39-4daf-82d5-9315d6fe4d71","html_url":"https://github.com/gluestack/bolt-framework","commit_stats":{"total_commits":49,"total_committers":2,"mean_commits":24.5,"dds":0.4897959183673469,"last_synced_commit":"432216a68bf2ee72c9c5b6c8318ae6886560f62b"},"previous_names":["gluestack/bolt-framework"],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gluestack%2Fbolt-framework","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gluestack%2Fbolt-framework/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gluestack%2Fbolt-framework/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gluestack%2Fbolt-framework/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gluestack","download_url":"https://codeload.github.com/gluestack/bolt-framework/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250352679,"owners_count":21416527,"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":["bolt","docker","gluestack","host","local","project-runner","service-runner","virtual-machine"],"created_at":"2024-11-17T01:16:44.712Z","updated_at":"2025-04-23T01:32:25.203Z","avatar_url":"https://github.com/gluestack.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003e\n  bolt: The Universal Project Runner\n\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n\u003cstrong\u003e\n  Run Docker containers, child processes, or even encapsulate your entire project within a VM, all under one unified API.\n\u003c/strong\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/gluestack/bolt-framework/issues/new\"\u003eReport Bug\u003c/a\u003e\n  ·\n  \u003ca href=\"https://github.com/gluestack/bolt-framework/issues/new\"\u003eRequest Feature\u003c/a\u003e\n\u003c/p\u003e\n\n\u003chr style=\"border: 1px solid gray\"\u003e\n\n## :question: What is bolt?\n\nbolt is the Universal Project Runner that runs Docker containers, child processes, or even encapsulate your entire project within a VM, all under one unified API.\n\nBelow's brief overview of bolt's architecture -\n\n![Bolt Architecture](https://raw.github.com/gluestack/bolt-framework/main/Bolt.svg)\n\n## :thinking: Why bolt?\n\nRunning projects locally requires running system services and using system resources.\n\nFor eg: A project may need to run a Postgres instance, an iOS simulator and a Node watcher \u0026 bundler.\n\nIt can get cumbersome when you set up everything manually because you may need a Docker instance for the Postgres, a child process on the host machine to boot the iOS simulator and another child process for the Node packager. The Node packager can also run as a Docker instance.\n\nAnd when you run all these, the host machine may slow down and you may have to move things inside a VM. Bolt solves all those problems with a unified API for managing services (boot, kill, restart, fetch logs).\n\nBelow's brief overview of how bolt's architecture designed to help in such scenarios  -\n\n![Why Bolt?](https://raw.github.com/gluestack/bolt-framework/main/WhyBolt.svg)\n\n## :fire: Features\n\n* Allows you to run multiple services from a single project on different environments\n* You can run a service on your host machine locally or within Bolt's prepared virtual machine\n* Auto-detection helps you quickly get started with the Bolt file configuration\n* Available environments include:\n  * Host machine's local environment\n  * Host machine's Docker environment\n  * Virtual machine's local environment\n  * Virtual machine's Docker environment\n* Includes the log command to monitor and print logs from processes, Docker containers, or virtual machines\n* Facilitates access to your project's virtual machine\n\n## :beginner: Getting started\n\n* [Introduction](https://bolt.gluestack.io/docs/getting-started/introduction)\n* [Terminologies](https://bolt.gluestack.io/docs/getting-started/terminologies)\n* [Installation Guide](https://bolt.gluestack.io/docs/getting-started/installing-the-global-cli)\n* [Your First Bolt Project](https://bolt.gluestack.io/docs/getting-started/your-first-bolt-project)\n* [Add Bolt to Existing Project](https://bolt.gluestack.io/docs/getting-started/add-bolt-to-existing-project)\n* [ENV Management](https://bolt.gluestack.io/docs/getting-started/env-management)\n* [Service Management](https://bolt.gluestack.io/docs/getting-started/service-management)\n\nCheckout our [documentation](https://bolt.gluestack.io/docs) to find out more and to go through our Tutorials \u0026 API References.\n\n## :see_no_evil: Caveat\n\nWe are currently very much an Alpha product. To file an issue if you face any problems or to discuss your use-case, please join our [Discord](https://discord.gg/GEP2gWgd).\n\n## :telephone_receiver: For contributing or connecting with us\n\nJoin our [Discord](https://discord.gg/GEP2gWgd)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgluestack%2Fbolt-framework","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgluestack%2Fbolt-framework","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgluestack%2Fbolt-framework/lists"}