Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Introducing MongoBase

Introducing MongoBase

The Web-Application Framework built with PHP, MongoDB and jQuery

Avatar for Mark Smalley

Mark Smalley

June 06, 2012
Tweet

Other Decks in Technology

Transcript

  1. Web-Apps Vs Blogs CMS • Need for rapid prototyping •

    Need for instant scalability • Need to obtain sign-ups • Need distributed media • Automated communication • Extend reach through APIs • Only use what you need • Difficult to do with schemas • Not Native to SQL DBs • Unintuitive to admin focus • FS difficult & costly to scale • Difficult to FULLY re-brand • Complex if using schemas • Do you need a kitchen sink
  2. 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);
  3. 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);
  4. 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
  5. 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!
  6. 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)
  7. 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
  8. 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…
  9. 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
  10. 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
  11. Current MongoBase Modules (all working but at different stages of

    semi-perfection) • ADMIN (FULLY CUSTOMISABLE) • API (INSERT, UPDATE, FIND & DELETE) • AUTH (SHA256 HASHED TOKENS) • DB (BUILT-IN ORM FOR MONGODB) • EMAIL (SEND AND VIEW IMAP OR POP3) • FORMS (PRETTY HTML5 FORMS) • GRIDFS (STORE AND SERVE IMAGES) • ROUTES (DEFINE APP LOGIC) • URLS (FULLY CONTROL URI REQUESTS) • MEDIA • WYSIWYG • GEO • LAYOUTS ………………………… 90% …………………………… 95% …………………………… 95% …………………………… 95% ………………………………. 100% ………………………… 90% ………………………… 90% ……………………. 80% …………………………… 95% …. 10% .. 5% ………… 40% ……… 35% NOT YET WORKING - NEED CONVERTING
  12. WHO IS USING MONGOBASE…? Mindvalley Marketplace (Project Collaboration) HackrBackr (Private

    Social-Network) http://hackrbackr.org MongoPress (CMS)* http://mongopress.org MongoMail (CRM)* http://mongomail.org …and more
  13. LEARN MORE MongoBase Website: http://mongobase.org MongoBase Twitter ( @mongobase )

    http://twitter.com/mongobase Mark’s Smalley’s Twitter ( @m_smalley ) http://twitter.com/m_smalley