BashCode is in beta — things may change, and feedback is welcome.
$B_

About BashCode

A hands-on practice platform for Bash scripting — real shell problems, judged on what your script actually does.

Problems are multi-step and practical — log analysis, file batch operations, config processing — not single-command drills. New problems are shipping regularly, with harder ones on the way.

Every submission runs in a disposable, locked-down Docker sandbox and is judged on its actual output and behavior, never on which commands you used. If your script produces the right result, it passes — whether you reached for grep, awk, or something else entirely.

It's built for SRE, DevOps, platform, and backend/Linux engineers — including anyone interview-prepping for a role that expects real shell fluency.

You can solve problems without an account. Sign in with Google or GitHub if you want your progress, submissions, and ranking saved across sessions — it's free, and there's nothing to pay for yet.

BashCode is an early-stage, self-funded side project, built and maintained by one person. Bug reports and feature requests genuinely shape what gets built next — the feedback page goes straight to me.

Try a problemSee discussionsFollow on X