MCPcopy Index your code
hub / github.com/Sintattica/atk

github.com/Sintattica/atk @v11.7.1

Chat with this repo
repository ↗ · DeepWiki ↗ · release v11.7.1 ↗ · + Follow
20,215 symbols 72,189 edges 1,386 files 3,713 documented · 18% updated 2mo agov9.2.2 · 2021-06-21★ 445 open issues
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

ATK Framework

ATK Framework is a special purpose PHP framework targeted at business applications.

It's targeted at developers who wish to focus on business logic, instead of coding HTML. Where other application frameworks mainly provide a large set of utility classes, ATK provides a complete framework that requires only small amounts of code to get usable applications, while maintaining full flexibility.

Branches

ATK was originally developed by Ivo Jansch and iBuildings back in 2000. It's been actively developed until 2011 (version 6.6).

This repo is managed by Sintattica. We still have some active projects based on various versions of ATK. Since we didn't find a true alternative to ATK yet, we opted to keep it alive.

We currently have these branches:

  • main
  • release/v9
  • 9.1
  • 9.0
  • 8.2

main

The main branch contains the latest updates. It starts from release/v9 that was the branch that contained the rolling-releases.

release/v9

This branch starts from v9.1, it contains an updated style based on AdminLte framework. We are making other changes that will be rolled out in the future, generally we will be work on fixing existing functionalities on the version 9 line.

Our primary objective in the version 9.x is to give a new layout to existing projects and update them at least to PHP7.2.

The second objective is to merge the layout updates of the 9.2.x versions with the changes made in the v10.x and put a base for the upcoming v11 of the ATK framework.

The third objective is to create a skeleton project and some documentation so everyone can get onboard and develop awesome ATK applications.

9.1

Version like 9.0, but with jQuery only Currently there's no documentation for v9. Maybe we'll manage to write some docs in the future. If you have one, please tell us.

9.0

This is a deeply refactored version that's not backward compatible. It's been developed with the following objectives:

  • composer support and PSR-4 compatibility
  • a modern class system (PSR-1/PSR-2)
  • PHP7 compatibility
  • better handling of modules
  • removal of deprecated functions
  • no more themes, GUI is now Bootstrap-based
  • Smarty 3 integration
  • Select2 integration

8.2

We call this the "classic" ATK, i.e. the closest to iBuildings' version. It's largely backward compatible, with no additional functions:

  • lots of bug fixes
  • added a Bootstrap theme
  • improvements to Steelblue/Stillblue themes
  • improvements to attributes (atkAttribute, atkDateAttribute, atkListAttribute, atkNumberAttribute, atkFieldSet...)
  • improvements to relations (especially atkManyToOneRelation)
  • improvements to search functionality
  • better handling of dependencies
  • better handling of form buttons and submit
  • refactoring of meta fetching
  • added a couple of utility functions

Contributions

Since we use both branches in production projects, pull requests for bug fixes are welcome, but we cannot guarantee to accept new features. Please get in touch before submitting such requests.

We kindly ask you to:

  • Make pull requests by creating a feature branch from 8.2 or 9.0 or main
  • Don't branch from master
  • Avoid redundant comments
  • Keep PSR-4 formatting
  • Make the PR's topic "tight", don't modify dozens of classes or the whole app
  • Only add or fix a well-defined feature, keeping your changes small

Thanks!

Team Sintattica

Extension points exported contracts — how you extend this code

Destructible (Interface)
(no doc) [82 implementers]
src/Resources/public/admin-lte/plugins/filterizr/types/interfaces/Destructible.d.ts
DataGridListener (Interface)
* The data grid listener can be implemented and registered for a data grid * to listen for data grid events. * * @aut
src/DataGrid/DataGridListener.php
NestedAttributeInterface (Interface)
(no doc)
src/Attributes/NestedAttributes/NestedAttributeInterface.php
Styleable (Interface)
(no doc) [2 implementers]
src/Resources/public/admin-lte/plugins/filterizr/types/interfaces/Styleable.d.ts
PackerRoot (Interface)
* Modified version of Jake Gordon's Bin Packing algorithm used for Filterizr's 'packed' layout * @see {@link https://gi
src/Resources/public/admin-lte/plugins/filterizr/makeLayoutPositions/Packer.d.ts
AlignedDataWithGapTest (Interface)
(no doc)
src/Resources/public/admin-lte/plugins/uplot/uPlot.d.ts
DateNames (Interface)
(no doc)
src/Resources/public/admin-lte/plugins/uplot/uPlot.d.ts

Core symbols most depended-on inside this repo

split
called by 4496
src/Resources/public/lib/ckeditor5/ckeditor.js
push
called by 4284
src/Resources/public/lib/ckeditor5/ckeditor.js
on
called by 2742
src/Resources/public/lib/ckeditor5/ckeditor.js
match
called by 1942
src/Resources/public/lib/ckeditor5/ckeditor.js
replace
called by 1883
src/Resources/public/lib/ckeditor5/ckeditor.js
extend
called by 1753
src/Resources/public/lib/ckeditor5/ckeditor.js
find
called by 1598
src/Resources/public/lib/ckeditor5/ckeditor.js
get
called by 1555
src/Resources/public/lib/ckeditor5/ckeditor.js

Shape

Function 13,060
Method 5,916
Class 1,191
Interface 43
Enum 5

Languages

TypeScript84%
PHP16%

Modules by API surface

src/Resources/public/lib/ckeditor5/ckeditor.js4,907 symbols
src/Resources/public/admin-lte/plugins/fullcalendar/main.js567 symbols
src/Resources/public/admin-lte/plugins/codemirror/codemirror.js462 symbols
src/Resources/public/admin-lte/plugins/chart.js/Chart.bundle.js437 symbols
src/Resources/public/admin-lte/plugins/moment/moment-with-locales.js334 symbols
src/Resources/public/admin-lte/plugins/fullcalendar/main.min.js315 symbols
src/Resources/public/admin-lte/plugins/summernote/summernote-lite.js266 symbols
src/Resources/public/admin-lte/plugins/summernote/summernote.js248 symbols
src/Resources/public/admin-lte/plugins/summernote/summernote-bs4.js248 symbols
src/Core/Node.php244 symbols
src/Resources/public/admin-lte/plugins/sweetalert2/sweetalert2.js243 symbols
src/Resources/public/admin-lte/plugins/sweetalert2/sweetalert2.all.js243 symbols

For agents

$ claude mcp add atk \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact