MCPcopy Index your code
hub / github.com/AlanRynne/ifc-developer-tools

github.com/AlanRynne/ifc-developer-tools @v0.2.7

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.2.7 ↗ · + Follow
7,811 symbols 8,591 edges 3,742 files 1,899 documented · 24%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

IFC Developer Tools

Node.js CI codecov

The Home for the IFC Developer Tools code!

Packages

Package Description URL
ifc-syntax-ast-parser Deprecated Parse IFC files to AST + Visitors
ifc-syntax-parser New Parse IFC files to AST + Visitors
ifc-syntax-express-parser Parse Express files to JSON
ifc-syntax-server IFC Language Server
ifc-syntax-vscode IFC VSCode Extension
ifc-syntax-docgen IFC Documentation extractor to JSON
ifc-syntax-codegen IFC Code Generator

Setup

This monorepo requires lerna being installed globally:

npm i -g lerna

Then run:

npm i
lerna bootstrap

Build

To build all the packages, run:

lerna run build

Testing

To test all the packages, run:

lerna run test

Contributing

Contributions are welcome! :)

Extension points exported contracts — how you extend this code

IVisitor (Interface)
(no doc) [10 implementers]
packages/ifc-syntax-ast-parser/src/ast/visitor/IVisitor.ts
SchemaToCode (Interface)
(no doc) [2 implementers]
packages/ifc-syntax-codegen/src/index.ts
IEntity (Interface)
(no doc)
packages/ifc-syntax-express-parser/src/express/IEntity.ts
DocItem (Interface)
(no doc)
packages/ifc-syntax-docgen/src/DocItem.ts
IfcSyntaxSettings (Interface)
(no doc)
packages/ifc-syntax-server/src/settings.ts
IVisitable (Interface)
(no doc) [2 implementers]
packages/ifc-syntax-ast-parser/src/ast/visitor/IVisitable.ts
SchemaToCodeOptions (Interface)
(no doc)
packages/ifc-syntax-codegen/src/index.ts
IFunction (Interface)
(no doc)
packages/ifc-syntax-express-parser/src/express/IFunction.ts

Core symbols most depended-on inside this repo

visit
called by 19
packages/ifc-syntax-ast-parser/src/ast/visitor/IVisitor.ts
accept
called by 15
packages/ifc-syntax-ast-parser/src/ast/visitor/IVisitable.ts
createLink
called by 10
packages/ifc-syntax-server/src/Providers/IfcUtilities.ts
ind
called by 9
packages/ifc-syntax-codegen/src/ifc2ts.ts
get
called by 7
packages/ifc-syntax-server/src/IfcDocumentManager.ts
caseInsensitiveKeyValue
called by 7
packages/ifc-syntax-server/src/Providers/IfcUtilities.ts
parse
called by 6
packages/ifc-syntax-express-parser/src/index.ts
findEntityInSchema
called by 6
packages/ifc-syntax-server/src/Providers/IfcUtilities.ts

Shape

Class 4,392
Method 2,064
Enum 797
Function 544
Interface 14

Languages

TypeScript100%

Modules by API surface

packages/ifc-syntax-codegen/src/ifc2ts.ts23 symbols
packages/ifc-syntax-server/src/Providers/IfcUtilities.ts13 symbols
packages/ifc-syntax-parser/src/actions/definitionVisitor.ts13 symbols
packages/ifc-syntax-codegen/src/index.ts10 symbols
packages/ifc-syntax-ast-parser/src/ast/visitor/ASTVisitor.ts9 symbols
packages/ifc-syntax-server/src/IfcDocumentManager.ts8 symbols
packages/ifc-syntax-ast-parser/src/main.ts8 symbols
packages/ifc-syntax-express-parser/src/index.ts6 symbols
packages/ifc-syntax-ast-parser/src/ast/core/ASTPosition.ts6 symbols
packages/ifc-syntax-server/src/Providers/SymbolProvider.ts5 symbols
packages/ifc-syntax-ast-parser/src/grammar/functions.ts5 symbols
packages/ifc-syntax-server/src/Providers/GoToDefinitionProvider.ts4 symbols

For agents

$ claude mcp add ifc-developer-tools \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact