Skip to content
Matthew Tedder edited this page Apr 27, 2018 · 4 revisions

Overview

Apskel is short for Application Skeleton. The Apskel framework helps develop and maintain over time, relatively small to very large and complex web applications. The impetus for developing this framework was simply a way of doing things better (in my mind) than the frameworks I was used to working with. Much of that "betterness" focused on the convergence of simplicity and versatility on web applications with many versions, environments, and over a long periods of time and change.

For the most part, Apskel application development will consist of module development. The framework unifies them, according to specifications. So it's easy mix and match and share modules to quickly construct new or modify old applications.

For more information, refer to the included "documentation.pdf" file.


Highlights

  • Menu-driven structural design (command line tool)
  • Operate under Apache web server and/or a Linux shell.
  • Automatic identification of environment by URL substring and using proper database accordingly
  • Automatic building of RESTful interfaces (POST/GET) with documentation and parameter cleansing
  • View templates, recursively embeddable with auto-populating data fields
  • Module subsystem for extensibility and sharing of capabilities
  • MVC (Model View Controller) design pattern (works with MySQL by default)
  • Very clean and robust, overall

Weaknesses

  • Not well optimized for Single Page applications
  • View templates are server-side compiled, no real-time data synchronization

Roadmap

I stopped paying attention to this some years back when I began focusing more on Single Page applications. Since I have worked predominantly on internal web applications (not open to the public), Search Engine Optimization (SEO) has seldom been a factor. The advantages of Single Page applications include a faster and richer user experience with far less dependence on server or even network performance. In fact, using HTML5's local data storage, you can cache data locally and not have to worry much about network or server outages.

The problem arises when building public facing websites for which SEO is important. Search engines need hyperlinks to static (from its perspective) page content. This works strongly against the advantages of Single Page applications that are best fully dynamic, essentially requiring one to write application twice (once for users and once for search engines).

However, I recently realized that my Apksel framework was designed (by me) to provide content in a variety of formats, including view templates that could be revised for use on the frontend or the backend. So I am now looking at adding a variety of Single Page application capabilities to Apskel. Most importantly, I'd like to provide view rendering and data binding that operate on the same view templates in frontend JavaScript as with backend PHP.

Clone this wiki locally