All Projects → waifung0207 → Ci_bootstrap_3

waifung0207 / Ci_bootstrap_3

Licence: mit
A multi-tenant website template based on CodeIgniter 3 with integration of some useful tools

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Ci bootstrap 3

Codeigniter-4-CRUD-generator
ADEL CCG is an easy open-source intuitive web app to create AdminLTE4 -Bootstrap 5- dashboards with CRUD operations in php.
Stars: ✭ 87 (-76.98%)
Mutual labels:  crud, codeigniter
Opencrud
OpenCRUD is a GraphQL CRUD API specification for databases
Stars: ✭ 350 (-7.41%)
Mutual labels:  crud
Dommel
CRUD operations with Dapper made simple.
Stars: ✭ 291 (-23.02%)
Mutual labels:  crud
Nestjs Query
Easy CRUD for GraphQL.
Stars: ✭ 325 (-14.02%)
Mutual labels:  crud
Jianshu
仿简书nx+nodejs+nestjs6+express+mongodb+angular8+爬虫
Stars: ✭ 296 (-21.69%)
Mutual labels:  crud
Ui
Low-code Framework for Web Apps in PHP
Stars: ✭ 335 (-11.38%)
Mutual labels:  crud
Go On Rails
🚄 Use Rails to Develop or Generate a Golang Application.
Stars: ✭ 275 (-27.25%)
Mutual labels:  crud
Codeigniter Aauth
Authorization, Authentication and User Management library for Codeigniter 2.x and 3.x to make easy user management and permission operations
Stars: ✭ 360 (-4.76%)
Mutual labels:  codeigniter
Codeigniter4
Open Source PHP Framework (originally from EllisLab)
Stars: ✭ 3,839 (+915.61%)
Mutual labels:  codeigniter
Graphback
Graphback - Out of the box GraphQL server and client
Stars: ✭ 323 (-14.55%)
Mutual labels:  crud
Sc Crud Sample
Sample real-time CRUD inventory tracking app built with SocketCluster
Stars: ✭ 323 (-14.55%)
Mutual labels:  crud
Laravel Packer
Awesome Command Line Tool for speeding up your package creation.
Stars: ✭ 313 (-17.2%)
Mutual labels:  crud
Yaldash
👻 It's never been easier to build and customize admin panels. Yah! yaldash is a beautifully designed administration panel for Laravel.
Stars: ✭ 338 (-10.58%)
Mutual labels:  crud
Angular Mat Table Crud
CRUD operations for the Angular Material Table
Stars: ✭ 291 (-23.02%)
Mutual labels:  crud
Codeigniter Composer Installer
Installs the offical CodeIgniter 3 with secure folder structure via Composer
Stars: ✭ 357 (-5.56%)
Mutual labels:  codeigniter
Django Easy Audit
Yet another Django audit log app, hopefully the simplest one.
Stars: ✭ 289 (-23.54%)
Mutual labels:  crud
Flask Appbuilder
Simple and rapid application development framework, built on top of Flask. includes detailed security, auto CRUD generation for your models, google charts and much more. Demo (login with guest/welcome) - http://flaskappbuilder.pythonanywhere.com/
Stars: ✭ 3,603 (+853.17%)
Mutual labels:  crud
Grid.blazor
Grid component with CRUD for Blazor (client-side and server-side) and ASP.NET Core MVC
Stars: ✭ 335 (-11.38%)
Mutual labels:  crud
Permissionmanager
Admin interface for managing users, roles, permissions, using Backpack CRUD
Stars: ✭ 363 (-3.97%)
Mutual labels:  crud
El Data Table
🥘Base on element-ui, makes crud easily
Stars: ✭ 358 (-5.29%)
Mutual labels:  crud

CodeIgniter 3 Bootstrap

Latest Build: 2017-03-24

Note: This project is still in progress, but welcome for any issues encountered

A starter template that supports multi-tenant (Frontend / Admin Panel / API) website in a single application.

This repository is developed upon the following tools:

Features

This repository contains setup for rapid development:

  • Multi-tenant (e.g. Frontend Website, Admin Panel, API) website in single application
  • Modular design by CodeIgniter HMVC extension
  • Custom config files (sites.php, locale.php) for easy configuration of website behavior
  • Admin Panel with AdminLTE v2 theme, and Grocery CRUD integration
  • Admin Panel includes usage of Sortable library
  • API Site with Swagger UI integrated, via annotations supported by swagger-php library
  • API Site to handle RESTful endpoints, with shortcut functions to grab parameters and display results
  • User authentication for Frontend Website (Sign Up, Login, Forgot Password, etc.)
  • User authentication for Admin Panel (Login, Change Password, etc.)
  • Preset layouts and templates
  • Preset asset pipeline (e.g. minify scripts, image optimization) via gulp (reference from gulp-starter)
  • Preset data structure for Blogging (with pagination) and Cover Photos (carousel), which can be managed from Admin Panel
  • Form Builder library to help with form rendering with Bootstrap theme, form validation, etc.
  • Breadcrumb and Pagination handling fit with Bootstrap theme
  • Custom 404 pages for Frontend Website and Admin Panel
  • Multilingual support
  • Email config setup
  • Functions to be called from CLI (e.g. daily cron job, database backup)
  • ... more coming!

Demo Project

A demo repository can be found from: https://github.com/waifung0207/ci_bootstrap_3_demo

Server Environment

Below configuration are preferred; other environments are not well-tested, but still feel free to report and issues.

  • PHP 5.6+
  • Apache 2.2+ with rewrite mod enabled
  • MySQL 5.5+ (not tested on MariaDB)

Setup Guide

  1. git clone this repo
  2. Create a database (e.g. named "ci_bootstrap_3"), then import /sql/latest.sql into MySQL server
  3. Make sure the database config (/application/config/database.php) is set correctly
  4. You should be able to access Frontend Website, Admin Panel and API Site (with Swagger Doc) respectively
  5. Visit the Demo Controllers (exist in both Frontend / Admin Panel / API) for sample usage

Note For more advanced workflow (includes repo upgrade), please have a look on my suggestion in this issue. After release the v1.0 version, I will try to keep the upgrade procedure more developer friendly.

Admin Users (and default login accounts)

There are 4 preset users for Admin Panel:

  • Webmaster (default username & password are both "webmaster", belongs to the webmaster group)
  • Admin (default username & password are both "admin", belongs to the admin group)
  • Manager (default username & password are both "manager", belongs to the manager group)
  • Staff (default username & password are both "staff", belongs to the staff group)

Folder Structure

Explanation on the folder structure which supports HMVC (only showing the highlighted folders and files).

application/                    --- Main CodeIgniter source files
    config/
        production/             --- Configuration when ENVIRONMENT is set as "production"
        autoload.php            --- By default, some files are loaded for this repo
        ci_bootstrap.php        --- Core configuration file for all sites
        database.php            --- Need to verify to ensure connection with MySQL database
        email.php               --- Created to centralize email configuration (default: using Mailgun)
        form_validation.php     --- Created to centralize validation forms for all forms, include ReCAPTCHA settings
        routes.php              --- Changed default controller from Welcome to Home
    controllers/                --- Controllers for Frontend Website; extends from MY_Controller (except Cli)
        Cli.php                 --- Utility function that can only be called from command line
        Home.php                --- Default controller for Frontend Website
    core/                       --- Extending CodeIgniter core classes; can also be used within modules
        MY_Controller.php       --- Important class which contains shared logic of all controllers
        MY_Loader.php           --- Required for HMVC extension
        MY_Model.php            --- Contains shared function for model classes
        MY_Router.php           --- Required for HMVC extension
    helpers/                    --- Contains custom helper functions being used throughout this repo
    language/                   --- Preset language files
    libraries/                  --- Custom libraries (e.g. Form Builder, System Message)
        MY_Email.php            --- Enhanced email library, includes work with Mailgun API
    models/                     --- Sample model extending from MY_Model
    modules/                    --- Each module can be accessed by http://{base_url}/{module_name}/{module_controller}/, etc.
        admin/                  --- Module for Admin Panel
            config/             --- Configuration for Admin Panel (overriding application/config/)
            controllers/        --- Controllers for Admin Panel; also extends from MY_Controller
            libraries/          --- Libraries specific for Admin Panel
            models/             --- Models only being used in Admin Panel
            views/              --- Views for Admin Panel; can reuse Frontend views, or override by using same path/filename
        adminlte/               --- Module with AdminLTE widgets
        api/                    --- Another module specific for API endpoints
    third_party/				--- 3rd party files (HMVC extension, Grocery CRUD, Rest Server, etc.)
    views/                      --- Views for Frontend Website, can also be used by modules unless overrided
assets/                         --- Folder for public files
    api/                        --- Swagger UI assets
    dist/                       --- Post-processed scripts and images via gulp tasks (don't manually edit files here!)
    grocery_crud/               --- Asset files from Grocery CRUD library
    image_crud/                 --- Asset files from Image CRUD library
    uploads/                    --- Default folder for upload files, where permission should set as writable
gulpfile.js/                    --- Task runner following gulp-starter practice
    tasks/                      --- Gulp tasks
    config.js                   --- Configuration for Gulp tasks
screenshots/                    --- Screenshot images for preview
sql/                            --- MySQL files
    backup/                     --- Files which will be created when backup database from CLI
    core/                       --- Files contains core data (e.g. Ion Auth)
    latest.sql                  --- Latest version of all preset data
src/                            --- Folder for non-public source files
    css/                        --- Custom CSS files append to each site
    images/                     --- Source image files before optimization
    js/                         --- Custom CSS files append to each site
    sass/                       --- SASS files for styling
    theme/                      --- Default folder for additional theme files
system/                         --- CodeIgniter core files (unchanged as clean CI3 installation)
.htaccess                       --- URL rewrite for Apache web server (require mod enabled)

Preset Gulp Tasks

The gulpfile.js folder is prepared with following tasks available:

  • default: run build task first, then watch for file change
  • build: run imagemin, cssmin and uglify tasks in parallel
  • rebuild: run clean task first, then copy, imagemin, cssmin and uglify tasks in parallel
  • clean: remove all files inside the dist folder (default: /assets/dist)
  • copy: copy required files to dist folder
  • cssmin: concat and minify CSS files
  • imagemin: optimize images (jpg, png, gif, svg) and output to dist folder (default: /assets/dist/images)
  • uglify: concat and minify (uglify) JS files
  • watch: monitor JS / CSS / image files and execute specific tasks upon changes

Screenshots

Frontend - Home:

Admin Panel - Home:

More screenshots can be viewed from the screenshots folder under this repository.

TODO

  • Changelog file
  • Better documentation (e.g. on Gitbook)
  • Enhance Form Builder library to support more field types
  • Grocery CRUD / Image CRUD file upload - add Amazon S3 integration
  • Grocery CRUD / Image CRUD image upload - add cropping feature
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].