maskray/ccls

C/C++/ObjC language server supporting cross references, hierarchies, completion and semantic highlighting

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 2 minutes ago
Type:Server / PlatformCategory(s):Editors & IDEsDeveloper Tools
Added to GitGenius on September 16th, 2026
Created on March 31st, 2018
Open Issues & Pull Requests: 194 (+0)
GitHub issues: Enabled
Number of forks: 280
Total Stargazers: 4,089 (+0)
Total Subscribers: 79 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 3.5 days
Mean response time: 137.6 days
90th percentile: 549.0 days
Tracked items: 33

Most active contributors

Sign in to see contributor activity.

How this project is maintained

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

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 22
New in 7 days: 1
Closed in 7 days: 0
Avg open age: 1,008 days
Stale 30+ days: 19
Stale 90+ days: 17

Recent activity

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

Top labels

  • wontfix (1)

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

ccls is a language server that provides IDE features for C, C++, and Objective-C code.

The tool addresses the need for rich code intelligence in C-family languages by implementing the Language Server Protocol. It uses Clang as its foundation to parse and analyze code, enabling it to understand program structure deeply. This architecture allows ccls to deliver features like cross-reference lookup, call hierarchy navigation, code completion, and semantic syntax highlighting across any editor that supports LSP, including Vim, Emacs, VS Code, and others.

Developers working on C, C++, or Objective-C projects should consider ccls if they want IDE-like capabilities without being locked into a single editor. The tool suits projects of any size that benefit from fast navigation and understanding of code relationships. It is particularly valuable for developers who prefer lightweight, editor-agnostic tooling over heavyweight IDEs. The project's reliance on Clang means it handles modern language standards and complex codebases well, though setup requires configuring compilation flags correctly for accurate analysis.

The project shows sustained development with regular commits addressing bugs, performance improvements, and compatibility updates. Work spans multiple areas including core language analysis, protocol implementation refinements, and support for various build systems and editor integrations. The codebase receives attention to both functionality and stability, with fixes applied across the indexing pipeline, semantic analysis, and client communication layers.