Box CI

Box CI is a CI service that lets you run your own builds. We take care of the management side of things including collecting logs, keeping history and user access management but let you control the part you actually want to: the build itself.
Build how you want
Don't waste hours porting your build to an esoteric CI platform
Much faster builds
Why shouldn't CI builds be just as fast as builds on your dev machine?
Keep your secrets
Don't give a third party access to all your code and production keys
How does it work?
Run your builds via our open source CLI, which talks to the Box CI service from your build machine
CLI on Your Machine
$ boxci 'your build command' \ --project QWE123 \ --key yoursecretkey Tests: ✓ sign up ✓ sign in ✓ create PASSED npx --no-install webpack --config ./webpack-config.js --mode production
Run your build
Box CI Service
Box CI
View your build
Start your first build in minutes. No, really!
Since your build already works, setup is just signing up, installing the CLI, then... running your build.
1Install the CLI
$ npm i -g boxci
- or -
2Run your build with the CLI
$ boxci 'your build command' \ --project QWE123 \ --key yoursecretkey
3See your build in Box CI
Box CI
See it in action
The CLI is itself built using Box CI. I know, so deliciously meta! Check out the project page to explore the Box CI management console.
Coming here from HN?
If you're a HN user I'll extend your free trial to 3 months. Just contact me via the email in my profile (davnicwil) or on twitter @davnicwil
Want to find out more before signing up?
Submit your email. I'll contact you to answer your questions
You won't receive emails about anything else
CI builds are annoyingly slow.
Why can't they run as fast as on my dev machine?

With Box CI you run CI builds on your dev machine, or any other machine you want.

Why does using a CI service mean you need to run your builds on slow, expensive servers? You have a machine sitting in front of you that's way more capable, and free to use.

A CI service should focus on the stuff you don't have time to implement yourself - build management, history, logs streaming, access for all your team. That's all Box CI does. It lets you control the one thing you actually want to - running your builds.

Why should I spend ages configuring my build for a CI platform?
It already works on my machine

Porting your build to a CI service takes ages. Understanding their model, their options, their yml format, their support formus, on and on.

A CI service that runs everyone's builds needs a way to manage a lot of servers and jobs running arbitrary code. That's hard, and using containers, avoiding state and caching and funnelling everything through a uniform config format make it a bit easier.

But what's convenient for the platform isn't what's best for you and your build. A custom solution on appropriate hardware is always going to do better. Don't waste your time shoe-horning your build into someone elses platform because they mandate it - it's already good to go!

All you want to do is add the service part of the CI service on top. That's what Box CI does.

Why should I have to give my CI service access to all my source code and deployment secrets?

A big concern with running your builds and deployments on third party servers is that there is no way around giving them all of your code and secrets. That stuff is the keys to the kingdom. It's a pretty big responsibility.

Now look, we all trust these big companies aren't nefarious. But the problem isn't them, it's that people know they hold all these secrets. They're a pretty obvious target. And even with the best of intentions, accidental security bugs happen.

With Box CI you know that the worst case scenario for us getting hacked is your build logs and history getting leaked. You always remain in control of your own code and secrets - the way it should be.