MongoBase is a framework written in PHP and jQuery that allows for the rapid development of web-applications and is used by MongoPress, MongoMail and MongoKong as its core foundation
3. Web-Apps Vs Blogs CMS
• Need for rapid prototyping • Difficult to do with schemas
• Need for instant scalability • Not Native to SQL DBs
• Need to obtain sign-ups • Unintuitive to admin focus
• Need distributed media • FS difficult & costly to scale
• Automated communication • Difficult to FULLY re-brand
• Extend reach through APIs • Complex if using schemas
• Only use what you need • Do you need a kitchen sink
5. Create DB + Collection + Insert Data
(even doing this natively with pure MongoDB and PHP is simple)
// MongoDB PHP Class
$m = new Mongo();
// Select Database & Collection (Table)
$db = $m->freesquare;
$collection = $db->places;
// Add Document (Add a Record)
$obj = array(
"title" => "KL MongoDB User-Group",
"loc" => array(
"lng" => 101.67646,
"lat" => 3.127896
)
)
$results = $collection->insert($obj);
6. Create App + Collection + Insert or Update Data
// Configure MongoBase and Set Cascading File Inclusion
$init = array(‘id’:‘3square’,'modules‘:array(‘db’,’auth’));
$mb = new mongobase($init);
// Add or Edit a Translatable Document via Dynamic User ID
$updated_user_location = array(
“col” => ‘user’,
“id” => $mb->modules[‘auth’]->get_id();,
“obj” => array(
"title" => $mb->__("KL MongoDB User-Group“),
"loc" => array(
"lng" => 101.67646,
"lat" => 3.127896
)
)
)
$results = $mb->modules[‘db’]->mbsert($updated_user_location);
7. Rapid Development from Front to Back
• Integrated Font-Awesome Icons
• Integrated SHIMs, Polyfills & Responsive Hooks
• Integrated iOS Enhancments & HTML5 Forms
• Drag & Drop Image Uploading & Aviary Filters
• Auto Inclusion of JS and CSS Files from Slugs
• Auto AJAX Fetching for Gravatars & Data DIVs
• Filterable JSON-Powered Pivot Tables
• Flexible CSS Frameworks & Re-Sets
10. Instant Scalability with MongoBase
• Uses mongoDB as its ONLY data-store
(with out-of-the-box backup & load-balancing)
• Eliminates the need for traditional caching
• Unique Timestamped IDs rather than auto-inc
• Incredibly fast!
11. SOME SAY 6,000 TIMES FASTER!!!
http://labs.laulima.com/how-to-import-7-million-locations-from-geonames-to-mysql-then-into-mong
12. MongoDB is an Instantly Scalable Database
(with out of the box replica-sets and sharding)
13. Instant Scalability with MongoBase
• Ability to create templates in HTML or PHP
(can parse pages in browser with Handlebars.js)
• Intelligent cascading auto-inclusion of core files
• AJAX Content Fetching & Processing
• All media stored and served from mongoDB
(also means it is backed-up and distributed)
17. Why Invite-Only …?
• With web-apps, we want to communicate with
our users and potential customers…
• We need to gather email addresses, which are
easier to get when only asking for that
• We can then convert email applicants into users
later using automated intelligence
• FYI – This is not fixed, only set-up by default
21. Other Added Benefits of GridFS
• GridFS Obtains Original Media Meta but also
allows you to add custom fields
• This allows for integrated view counts or
embedded location coordinates, etc
• It also means we can search for media in the
same way we search for objects!
• Can also be used to cache fully rendered pages
and (or) individual AJAX-fetched snippets…
24. Business Intelligence at Core
• Automated mailing-list generation from
user types with dynamic field filtering
• Staged auto-confirmation, verification,
activation and processing email messages
• Integrated support via email and
accessible by integrated web-access
25. Business Intelligence at Core
• Extensible platform with secure cross-domain
(server-specific) 2-Way API access
• Administration pages can be easily
extended to handle any & all applications
• Have all of your company applications
integrated through a single system