SlideShare uma empresa Scribd logo
1 de 69
Croogo
The CakePHP CMS
About me

• Fahad Ibnay Heylaal
• @fahad19 on Twitter/GitHub/IRC
• From Bangladesh
• Currently living in London
• Working at SkylightIT.com
Introduction
What is Croogo?
What is Croogo?

• Yet another Content Management System
What is Croogo?

• Yet another Content Management System
• Built on top of CakePHP framework
How did it start?
How did it start?

• It started as a personal tool for projects
How did it start?

• It started as a personal tool for projects
• With common features I needed
How did it start?

• It started as a personal tool for projects
• With common features I needed
• Later open sourced
Weird name?
Weird name?

• Name taken from a Bengali novel called
  Krugo
Weird name?

• Name taken from a Bengali novel called
  Krugo
• Written by Muhammad Zafar Iqbal
Weird name?

• Name taken from a Bengali novel called
  Krugo
• Written by Muhammad Zafar Iqbal
• Wanted a unique name that Google didn’t
  know about
Download
Download

• From GitHub: http://github.com/croogo
Download

• From GitHub: http://github.com/croogo
• Two options:
Download

• From GitHub: http://github.com/croogo
• Two options:
   • Zip archive with all dependencies
      included
Download

• From GitHub: http://github.com/croogo
• Two options:
   • Zip archive with all dependencies
      included
   • Grab latest code from the repository
Installation
Installation

• Upload Croogo files to your server
Installation

• Upload Croogo files to your server
• Visiting your site starts the web based
  installer
Installation

• Upload Croogo files to your server
• Visiting your site starts the web based
  installer
• Whole process takes less than 5 minutes
Content
Content

• Content is organized in different types
Content

• Content is organized in different types
• There are two primary types:
Content

• Content is organized in different types
• There are two primary types:
   • Page
Content

• Content is organized in different types
• There are two primary types:
   • Page
   • Blog post
Content

• Content is organized in different types
• There are two primary types:
   • Page
   • Blog post
• You are able to create more content types
Taxonomy
Taxonomy
• Basically means categorization of content
Taxonomy
• Basically means categorization of content
• Terminologies to understand:
Taxonomy
• Basically means categorization of content
• Terminologies to understand:
   • Term: individual category names
Taxonomy
• Basically means categorization of content
• Terminologies to understand:
   • Term: individual category names
   • Vocabulary: a collection of Terms
Taxonomy
• Basically means categorization of content
• Terminologies to understand:
   • Term: individual category names
   • Vocabulary: a collection of Terms
• Two default vocabularies: Categories, and
  Tags
Users & Permissions
Users & Permissions
• Croogo uses CakePHP’s ACL
Users & Permissions
• Croogo uses CakePHP’s ACL
• Users belong to a Role
Users & Permissions
• Croogo uses CakePHP’s ACL
• Users belong to a Role
• Roles are given access to controller actions
Users & Permissions
• Croogo uses CakePHP’s ACL
• Users belong to a Role
• Roles are given access to controller actions
• By default, there are 3 roles:
   • Admin
   • Registered
   • Public
Extensions
Themes

• Extra layer on top of your Views
• Helps customize the appearance of your
  website
• Find themes at Croogo wiki
Plugins

• Need to be activated from admin panel
Plugins

• Need to be activated from admin panel
• Plugins have bootstrap and routes
Plugins

• Need to be activated from admin panel
• Plugins have bootstrap and routes
• Callbacks on activation/deactivation
Plugin activation
File at /app/plugins/example/config/example_activation.php
Hooks
What is a Hook?

• Ways plugins can integrate with the app
  without modifying core files
What is a Hook?

• Ways plugins can integrate with the app
  without modifying core files
• Hooks are set from plugin’s bootstrap file
Hook examples
  Attach Example behavior to Node model




Load Example component in NodesController




  Load Example helper in NodesController
v2.0?
Changes in v2.0
• Migration to CakePHP 2.0
Changes in v2.0
• Migration to CakePHP 2.0
• Development will start as soon as v1.3.x
  leaves beta
Changes in v2.0
• Migration to CakePHP 2.0
• Development will start as soon as v1.3.x
  leaves beta
• Terminology will be made easier to
  understand
Changes in v2.0
• Migration to CakePHP 2.0
• Development will start as soon as v1.3.x
  leaves beta
• Terminology will be made easier to
  understand
• Plugin based architecture very likely
Who uses Croogo?
( http://expresshyundai.com/ )
( http://ispmn.gov.ro/ )
( http://www.calzedonia.co.uk/ )
( http://www.festiwalmtv.pl/ )
The Community
“Getting people involved in open source is not as
easy as appointing them”

                                   Mark Story
Community Activities
• Contributions coming in from 20+
  developers
Community Activities
• Contributions coming in from 20+
  developers
• Lighthouse account with 200+ tickets
Community Activities
• Contributions coming in from 20+
  developers
• Lighthouse account with 200+ tickets
• Google Group with 300+ members
Community Activities
• Contributions coming in from 20+
  developers
• Lighthouse account with 200+ tickets
• Google Group with 300+ members
• Translated in 12 different languages
Community Activities
• Contributions coming in from 20+
  developers
• Lighthouse account with 200+ tickets
• Google Group with 300+ members
• Translated in 12 different languages
• 70+ repos on GitHub related to Croogo
Links
• Official Website: http://croogo.org
• Wiki: http://wiki.croogo.org
• Issue Tracker: http://croogo.lighthouseapp.com
• Google Group: http://groups.google.com/
  group/croogo
• @Croogo
Thank you!

Mais conteúdo relacionado

Mais procurados

How We Learned To Stop Worrying And Love (or at least live with) GitHub
How We Learned To Stop Worrying And Love (or at least live with) GitHubHow We Learned To Stop Worrying And Love (or at least live with) GitHub
How We Learned To Stop Worrying And Love (or at least live with) GitHub
dreamwidth
 
JavaScript Libraries (Ajax Exp 2006)
JavaScript Libraries (Ajax Exp 2006)JavaScript Libraries (Ajax Exp 2006)
JavaScript Libraries (Ajax Exp 2006)
jeresig
 

Mais procurados (8)

A Day of REST
A Day of RESTA Day of REST
A Day of REST
 
Google presentation
Google presentationGoogle presentation
Google presentation
 
How We Learned To Stop Worrying And Love (or at least live with) GitHub
How We Learned To Stop Worrying And Love (or at least live with) GitHubHow We Learned To Stop Worrying And Love (or at least live with) GitHub
How We Learned To Stop Worrying And Love (or at least live with) GitHub
 
Intro To CommandBox CLI,Package Manager, Server at the Japan CFUG
Intro To CommandBox CLI,Package Manager, Server at the Japan CFUGIntro To CommandBox CLI,Package Manager, Server at the Japan CFUG
Intro To CommandBox CLI,Package Manager, Server at the Japan CFUG
 
Introduction to Git / Github
Introduction to Git / GithubIntroduction to Git / Github
Introduction to Git / Github
 
Building Enterprise Chat Bots
Building Enterprise Chat BotsBuilding Enterprise Chat Bots
Building Enterprise Chat Bots
 
JavaScript Libraries (Ajax Exp 2006)
JavaScript Libraries (Ajax Exp 2006)JavaScript Libraries (Ajax Exp 2006)
JavaScript Libraries (Ajax Exp 2006)
 
DevNet 1056 WIT Spark API and Chat Bot Workshop
DevNet 1056 WIT Spark API and Chat Bot WorkshopDevNet 1056 WIT Spark API and Chat Bot Workshop
DevNet 1056 WIT Spark API and Chat Bot Workshop
 

Semelhante a Croogo: The CakePHP CMS

Untangling fall2017 week2_try2
Untangling fall2017 week2_try2Untangling fall2017 week2_try2
Untangling fall2017 week2_try2
Derek Jacoby
 

Semelhante a Croogo: The CakePHP CMS (20)

44 Slides About 22 Modules
44 Slides About 22 Modules44 Slides About 22 Modules
44 Slides About 22 Modules
 
Git 101: Git and GitHub for Beginners
Git 101: Git and GitHub for Beginners Git 101: Git and GitHub for Beginners
Git 101: Git and GitHub for Beginners
 
PluginBasicsWCNYC2014
PluginBasicsWCNYC2014PluginBasicsWCNYC2014
PluginBasicsWCNYC2014
 
Quick and easy way to get started with Git & GitHub
Quick and easy way to get started with Git & GitHubQuick and easy way to get started with Git & GitHub
Quick and easy way to get started with Git & GitHub
 
CodeIgniter for Startups, cicon2010
CodeIgniter for Startups, cicon2010CodeIgniter for Startups, cicon2010
CodeIgniter for Startups, cicon2010
 
Introduction to github slideshare
Introduction to github slideshareIntroduction to github slideshare
Introduction to github slideshare
 
Building mobile apps with PhoneGap and Backbone
Building mobile apps with PhoneGap and BackboneBuilding mobile apps with PhoneGap and Backbone
Building mobile apps with PhoneGap and Backbone
 
GlotPress aka translate.wordpress.org
GlotPress aka translate.wordpress.orgGlotPress aka translate.wordpress.org
GlotPress aka translate.wordpress.org
 
Github
GithubGithub
Github
 
Git and Github
Git and GithubGit and Github
Git and Github
 
Mediawiki to Confluence migration
Mediawiki to Confluence migrationMediawiki to Confluence migration
Mediawiki to Confluence migration
 
Human Scale Web Collecting for Individuals and Institutions (Webrecorder Work...
Human Scale Web Collecting for Individuals and Institutions (Webrecorder Work...Human Scale Web Collecting for Individuals and Institutions (Webrecorder Work...
Human Scale Web Collecting for Individuals and Institutions (Webrecorder Work...
 
Git hub
Git hubGit hub
Git hub
 
7 Apache Process Cloudstack Developer Day
7 Apache Process Cloudstack Developer Day7 Apache Process Cloudstack Developer Day
7 Apache Process Cloudstack Developer Day
 
Gitgithub101slideshare 150922131830-lva1-app6891
Gitgithub101slideshare 150922131830-lva1-app6891Gitgithub101slideshare 150922131830-lva1-app6891
Gitgithub101slideshare 150922131830-lva1-app6891
 
Untangling fall2017 week2
Untangling fall2017 week2Untangling fall2017 week2
Untangling fall2017 week2
 
Untangling fall2017 week2_try2
Untangling fall2017 week2_try2Untangling fall2017 week2_try2
Untangling fall2017 week2_try2
 
Beyond Domino Designer
Beyond Domino DesignerBeyond Domino Designer
Beyond Domino Designer
 
Untangling - fall2017 - week 9
Untangling - fall2017 - week 9Untangling - fall2017 - week 9
Untangling - fall2017 - week 9
 
Lessons Learned Migrating from Jekyll to Next.pptx
Lessons Learned Migrating from Jekyll to Next.pptxLessons Learned Migrating from Jekyll to Next.pptx
Lessons Learned Migrating from Jekyll to Next.pptx
 

Último

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Último (20)

Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 

Croogo: The CakePHP CMS

Notas do Editor

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. \n
  10. \n
  11. \n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. \n
  20. \n
  21. \n
  22. \n
  23. \n
  24. \n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. \n
  31. \n
  32. \n
  33. \n
  34. \n
  35. \n
  36. \n
  37. \n
  38. \n
  39. \n
  40. \n
  41. \n
  42. \n
  43. \n
  44. \n
  45. \n
  46. \n
  47. \n
  48. \n
  49. \n
  50. \n
  51. \n
  52. \n
  53. \n
  54. \n
  55. \n
  56. \n
  57. \n
  58. \n
  59. \n
  60. \n
  61. \n
  62. \n
  63. \n
  64. \n
  65. \n
  66. \n
  67. \n
  68. \n
  69. \n