Skip to content

danmehta/4klift

 
 

Repository files navigation

4klift Framework

Codacy Badge Codacy Badge Style CI Code Climate Build Status Latest Stable Version Latest Unstable Version Total Downloads License PRs Welcome

4klift is a set of PHP components for developing highly available, redundant and scalable web sites or services on top of Apache Cassandra.

Cassandra makes 4klift well suited for server side applications requiring greater than 99.99% service availability while also being able to withstand up to millions of read and write operations per second.

This framework of components can be used together or individually. Many components may be used individually in a variety of other frameworks, including Symfony, Silex, Laraval and Drupal.

Pre-Alpha / In Progress

We are in the process of preparing some of our libraries for open source. This development VM is also a work-in-progress and may result in additional packages installed on provision and eventually a new base box with many of the provisioned requirements pre-installed. However, this remains a useful VM for high performance web development.

We target software that can run on CentOS 6.7. 4klift is required to run on a wide range of enterprise systems that may be venerable in internet years, but very stable. However, these are simply minimal requirements; every effort is taken to ensure 4klift's ability to run on modern distributions.

To use the latest dev version, use the dev-master branch.

Components

Component Repository
API: Annotate existing controllers to create a REST API. API 4klift component
CEF: Cassandra Entity Framework for data management with models and a query builder. CEF 4klift component
CFG: Configuration management. CFG 4klift component
CMS: Content management system built to utilize CEF / Cassandra. CMS 4klift component

4klift Requires:

The Development Environment

4klift requires Vagrant and VirtualBox. This development virtual machine works on Mac, Windows and most Linux variants. Install for the appropriate platform:

Provisioning the VM will require the vagrant-vbguest plugin.

vagrant plugin install vagrant-vbguest

If you have a Mac, you can use Homebrew to install.

If you do not have Homebrew:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Install Virtualbox and Vagrant with brew:

brew cask install virtualbox
brew cask install vagrant

Installing the 4klift Base Project

Navigate to or create a project directory. Run:

composer create-project -s dev deasilworks/4klift 4klift dev-master

This will clone the project and create a 4klift directory pointing to the dev-master branch. CD into the directory and fire up vagrant:

cd 4klift
vagrant up
vagrant ssh

This will load all composer dependencies. Answer yes to the "Do you want to remove the existing VCS (.git, .svn..) history?" prompt.

When running, browse to http://localhost:8080. Or, add the following line to your workstation's hosts file:

192.168.222.11 4klift.vm.deasil.works

... and browse to http://4klift.vm.deasil.works.

What's on the Virtual Machine?

The 4klift development VM currently consists of the following packages:

Changelog and Features

All updates for each release may be reviewed in the changelog.

Contributing to 4klift

If you'd like to contribute to the 4klift project, create component libraries, etc., you can fork and clone the project.

Code Quality

4klift and its components attempt to comply with PSR-1, PSR-2, and PSR-4. We welcome pull requests fixing any violations.

LICENSE

MIT

This open-source project is brought to you by Deasil Works, Inc. Copyright © 2017 Deasil Works, Inc.

About

4klift - Cassandra PHP Framework

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • PHP 95.7%
  • Shell 2.1%
  • HTML 1.7%
  • Nginx 0.5%