We wanted to see if we could reimagine the software development process in a way that would be more automated and assistive, less redundant, and more flexible. Drawing heavily on the concepts of functional purity, static typing, and statelessness, our premise was to design a simple, "low power" representation (i.e., AST) that serves as an easily manipulated backbone for storage/analysis, and then build a structured editor on top of it that allows for very flexible syntax and syntactic sugars. The simplified central storage allows us to offer refactoring, debugging, optimization, and reuse assistance that is often limited by traditional text-file-based editing.
Here is a tour of the concept that ends in a sandbox where you can play around: https://isomorf.io/#!/tour
A few things to note:
- Editing. The editing is structured, so there are no syntax errors (e.g., no mismatched braces). The editing is also propagational (i.e., if you rename or delete something, that change is propagated everywhere that applies). We have built distinct mouse vs keyboard paradigms. You can double-click to see menus, or you can use keyboard shortcuts. (Look for the keyboard legend button for details).
- Deployment. Current focus is on microservices as this was the most universal, easiest to implement deployment. But native apps and HTTP servers are in the works.
- Progress. What we have is very much a work-in-progress, but it’s enough that we wanted to share and get some feedback.
email: feedback <at> isomorf.io
beta release signup: http://eepurl.com/c0CaeX
blog: https://medium.com/isomorf-blog
Thanks!