Hofstadter turns your source of truth into a robust application. Describe your data model once as the "design" for an application. Your designs are processed by "generators" which render them into the technologies needed to implement your application.
Generators read your designs and output a set of files and directories. By spanning multiple languages and technologies, generators provide you with more complete functionality out of the box. It's also easy to convert existing bases into Hofstadter.
Modify the Output
Hofstadter is aware of both the files it generates and any additions or modification you make to the output. You can add your business logic and custom code in with the generated application.
Iterate on Designs
When you update designs or customize the output, and then later regenerate, you need not worry. Hofstadter will manage the merging process and alert you to any issues like git does.
Modules package any mix of code, functionality, designs, and generators. You can import, configure, and compose modules or their contents. By combining multiple modules you can create advanced applications quickly.
Hofstadter designs, generators and modules have many options for configuration and extenstion. Recombine the inputs, configuration, and generators, adding and specializing as you need.