bazelbuild/starlark

Starlark Language

View on GitHub ↗Jump to charts ↓Open shareable report →

bazelbuild/starlark has 3k+ stars and 150+ forks on GitHub, is written in Python, and was last pushed on Feb 6, 2026. Data as of . Signed-in members get hourly updates — create a free account.

Summary Information

Updated 2 hours ago
Added to GitGenius on September 22nd, 2026
Created on August 16th, 2018
Open Issues & Pull Requests: 100 (+0)
GitHub issues: Enabled
Number of forks: 176
Total Stargazers: 3,110 (+0)
Total Subscribers: 56 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 10.2 hours
Mean response time: 177.5 days
90th percentile: 805.9 days
Tracked items: 80

Maintainer activity

1 person did triage or write work on this repository in the last 12 months.

Counts unlabeled, assigned, unassigned, milestoned, demilestoned, locked, unlocked over the last 12 months. These are issue and pull request events that require triage or write permission. Commits and code review are not counted. labeled and renamed are excluded because GitHub issue forms record the issue author as the actor. Figures from October 11, 2026. This count is not comparable across projects: each project's automation decides which of these events a person emits. How this is counted.

How this project is maintained

75% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Three people close 90% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 64
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 1,383 days
Stale 30+ days: 62
Stale 90+ days: 57

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • P4 (38)
  • type: feature request (27)
  • type: bug (26)
  • P2 (9)
  • P3 (8)
  • type: process (2)

Most active issues this week

Sign in to see which issues are moving.
Sign in

Detailed Description

Starlark is a configuration language designed for use in build systems and other applications that need embedded scripting capabilities.

Starlark addresses the need for a safe, deterministic, and parallelizable configuration language by providing a Python-like dialect with restricted execution semantics. The language is dynamically typed with high-level data types, first-class functions, and lexical scoping. Its core design enforces deterministic evaluation so the same code always produces identical results, hermetic execution that prevents access to the file system or network, and parallel module loading with immutable shared data to ensure thread safety. Applications embed a Starlark interpreter and extend it with domain-specific functions and types relevant to their use case.

Starlark suits projects that need configuration or scripting with safety guarantees, particularly build systems and tools that must execute untrusted or user-provided code without side effects. The language is intentionally small and simple, prioritizing readability and quick comprehension over feature richness. Its Python-like syntax reduces the learning curve for developers familiar with Python. The design emphasizes tooling support, recognizing that code will be read and analyzed by both humans and automated systems. Starlark was originally developed for the Bazel build tool, where it serves as the notation for BUILD files and as a macro language for extending Bazel with custom logic to support new languages and compilers.

The repository functions as a specification and discussion hub for the language rather than a single reference implementation. Multiple independent implementations of Starlark exist across different programming languages. The project maintains a formal specification document and design rationale, with ongoing discussions about language features and design choices. Development activity centers on language design decisions and specification refinement rather than implementation maintenance.