My favorites | Sign in
Project Home Downloads Wiki Issues Source
Project Information
Members
Featured
Downloads
Links

Sanjaal Framework (now matured)

Alias: CrossOver Framework

help me to produce a screen cast update: 2012-03-30

I am sure you would like to know how to install and run this application. I would like to produce a screen cast for you, live time. Please suggest me what software should I have do use for this. Leave me your message at: http://contact.sanjaal.com/email-bimal Thank you!

Download Notice

  • Use SVN for latest copy.
  • To download this project with SVN, please checkout to:
  • http://smarty-framework.googlecode.com/svn/trunk/
  • Target group: This framework is for backend programmers only (very few resources are available on the earth)
  • Website type: complex, large scale, where the data is more sensitive than how many users visit the website. You can use this for small projects, but it may seem costlier in terms of time and resources.
  • Scene: where thinking about optimization and performance is not your job. This is out of the topic or somebody-else's (system administrator's) task. Solutions first, optimizations later, on demand.

Installation Assistance

  1. Get the framework files.
  2. Follow the installation instructions carefully.

If you have troubles installing this tool, please drop us an email by clicking here.We will support you.

Introduction

Template Engine: Smarty

Based on Smarty Template Engine, this application helps to build a web application quickly quickly. There are several supporting class-files distributed with this framework toolkit, so that you can immediately start coding, without having to care the designs. End a war between a programmer and a designer in a complex website.

Use this framework when you need to do everything from the scratch. You can improve the speed of your development. We have now grown up several services to support single coding for multiple websites. If you are able to point different urls/subdomains/domains here, it can behave uniquely to each of these services.

This application contains more than 80 unique class files per-written in a most generic way, so that they fit for any kind of web application. We keep on adding examples, read-me files, and tutorials, every week to this reservoir. Many of the files have embedded source comments in a ratio of about 30%.

Professional Support (Paid Services)

This framework is very good for custom projects (that needed to be built from the scratch). So, you may hire us for a professional support.

Core part of this framework is always in open source, while your project's main file will be never exposed out in the svn. You are working with trusted staff, reliable technical support, and rapid development.

Directory Structures (partial list)

/
/library/services/<subdomain.name>/
  config.php
  config.mysql.inc.php
  classes
  configs
  controllers
    <entity>
      add.php
      edit.php
      delete.php
      sort.php
      details.php
   plugins
   js
   templates
    images
    <entity>
      add.php
      edit.php
      delete.php
      sort.php
      details.php

URL parameters and files searched

If you browse http://your.domain.name/menus-add.php, it will search as:

/library/services/<subdomain>/
  config.php
  controllers/menus/add.php
  templates/menus/add.php

However, the connection between controllers and templates are defined in the database! and are not bound inside php scripts.

Types of tested applications on this framework

This framework has been already implemented in the various kinds of creative developments and businesses.

  • Non-Membership websites (Membership is not a part of core development)
  • Finance/Budget Planning website
  • E-Commerce back-end application (Data Editor)
  • JavaScript based Syndication (Links Publisher): Syndicated links distribution
  • Email forwarding applications
  • Link directories
  • FAQ/TOC management systems
  • Personal websites / Portfolio management / Corporate websites
  • Crawlers, Spiders
  • Photography/Gallery websites
  • Home Exchange Services
  • Small CMS websites

Proof of Concept

After several years of experiences in web technology with Smarty, this framework came under a proof of concept that a web application can be coded differently. Now, you can write your own module, without affecting the core system we develop. Hence, it can increase your creativity. Here, every single page is registered in the database, where you can enjoy fine grained access to users. But all you have to code it with our theme.

Due to limited timespan, we have not produced an end-user manual. For now, please go on with the on-screen instructions. Expect TOC and FAQ sooner.

It is now false that: a website with 1000+ pages will slow down! As long as your database load is unaffected, building thousands of links will not dropdown the performance as you expected. If you plan to put several websites together permanently, you can share the CMS and the framework database; without having to maintain the backend differently.

Backend / Frontend

We have almost lost the concepts of backend for our projects, and this framework supports making a frond end look like its backend. Here is a code sample on how to list out the database entities, like menus:

Forget the coding, you do not have to remember or rewrite it anymore. This framework allows you to bring the security, auto generated codes, and error/success messages. First, produce the code for your entity. Then keep on customizing it, probably by removing extra fields and source codes. It already checks for flags fields, like added_on, is_active, can_delete, ... kinds of database columns.

One of the primary benefits is that all your source code looks clean, well commented, and follows a common pattern inside your entire website programs. So, it helps in easier maintenance.

We use Object Oriented MVC Pattern

For an operation there are three different files: a model (the heart), a controller that interacts with user commands, and the view (Based on Smarty) to show up the results. In total there are 12 different files for add/delete actions, and all of them are automated, to speed up your work. Take an example:

entity-add.php : Helps to add an entity
entity-add-successful.php : The entity was successfully added.
entity-add-error.php : Error adding an entity (ID/FK failed, or code failed)
entity-details.php : Details a particular entity
entity-delete.php : Management: Removes an entity by inactivating it
entity-delete-successful.php : Entity is deleted successfully.
entity-delete-error.php : Error deleting an entity (Code, is_active column failed, or non-existent entity)
entity-direct-access-error.php : Can not list, edit, details without sufficient parameters
entity-edit.php : Management: Gives a form to enter details of an entity
entity-edit-successful.php : Entity edited successfully.
entity-edit-error.php : Error editing an entity (Non existent, Code failed, or FK error)
entity-list.php : Lists out entities

Notes

This work uses unmodified copies of some third party tools including Smarty, PHPMailer, jQuery, syntax-highlighter, Greybox, iepngfix, niftycube, tabber, table sorter, carousel, tinymce, and javascript form validator. Other used but not-distributed packs are: GeoIP Database, Excel Writer, GetID3, and some more, as built on some service releases.

Bimal Poudel Contact via e-mail | Project Manager

Powered by Google Project Hosting