Code

Appskull - Advanced User Login, Registration, Management & Permissions

Appskull - Advanced User Login, Registration, Management & Permissions

View online demo

View online documentation

Get latest news on Twitter

Contact us

Appskull is a very light weight, high secure PHP application that built using popular PHP framework called Codeigniter (latest version). This application allows users to easily start building their dream web applications without worrying about building user authentication, user registration, user password reset, system settings, user settings and etc… features by themselves. Also this application built with lots of love and care so it’s code base is very clean, organized, well commented. Also Appskull is highly scalable and easy to maintain due to it’s HMVC (Hierarchical model–view–controller) architecture and modular code base. And it’s front-end designed by using latest Bootstrap version(v4.3.1). No any third party theme/template were used. So it’s very light, unopinionated and very easy to customize for suit your needs.

Version: 7.0

Demo and documentation

Main features

  • Secure user signin/login.
  • Secure user registration/signup.
  • Remember me feature on user signin/login (Multiple devices supported).
  • User password reset.
  • Password visibility toggleable.
  • User email verification.
  • Login/signin with email address or username.
  • Third party email senders support (e.i:, SendGrid).
  • CRUDs with server-side sorting, filtering, searching and pagination.
  • SEO friendly, clean and meaningful URLs.
  • 100% Mobile ready/responsive.
  • Modern flexbox based custom layout design with maximum compatibility, usability and accessibility.
  • User management.
  • User overview/dashboard view.
  • User statuses.
  • User tags (multiple tags per user).
  • User roles (multiple roles per user).
  • User groups (multiple groups per user).
  • User states.
  • Advanced user permissions system.
  • Module basis system settings.
  • User settings.
  • Easy configuration options.
  • Easily brandable.
  • Full unicode support (utf8mb4).
  • Full Unicode emoji support.
  • Fixed/Floating table headers.
  • Client side and server side form validation.
  • Advanced exception handling.
  • Custom libraries/APIs.
  • Third party SMPT email senders support.
  • Clean, minimalistic, pixel perfect and light-weight design.
  • Fully object oriented and modular HMVC architecture.
  • High security.
  • There is no any tracking, license verification, encrypted, compiled or backdoor codes in this application. Yeah! it’s 100% clean.
  • There is no any footprints. because of that, no one can tell/identify your app is based on Appskull. for example, AngularJS has ng-, VueJS has v-. so anyone can easily tell this app is based on this or that.

Other reasons to use Appskull

  • Built on Codeigniter PHP framework (latest). So code base is very lean, fast and scalable.
  • Based on HMVC (Hierarchical model–view–controller) architecture. So code base is very organized, modular and easy to scale and maintain without any hassle.
  • Front-end built with Latest and stable version of Bootstrap 4.
  • Less opinionated user interface designs. So you can customize very easily.
  • Can be branded very easily. You can replace logos and set app frame color within few seconds.
  • Not bloated, super fast and requires very low server resources.
  • Very scalable.
  • Separated adminend and userend routes.
  • Clean, minimalistic and pixel perfect design.
  • More server-side operations, less JavaScript. Yeah! pretty much all features on Appskull is handle by server side. So that’s mean the system is more reliable. For example you can even search, sort millions of database records without any problems.
  • Well tested and no known bugs/issues.
  • Already used this app to build many local projects.
  • Designed and developed from ground up. So no themes/templates or previously written codes were used.
  • Everything is well organized. For example, routes, files, assets and etc…
  • Very clean, well formatted and commented code base.
  • Files, classes, methods, variables and etc… are carefully named with meaningful names and standards.
  • Very developer friendly.
  • You don’t need a expensive VPS server to host this application. A low cost shared hosting plan is more than enough.
  • Mod rewrite/.HTACCESS support is optional. So don’t worry if your web hosting company not provide support for .HTACCESS.
  • Nginx server support. Appskull is well tested and fully support for Nginx server and all the required configuration details can be found in the documentation.
  • Broad range of application server support. This app works fine with older and newer versions of PHP.
  • Highly detailed online & offline documentations.
  • Fast and friendly customer support.
  • Continuous future software updates with instructions and change log.

Security

  • SQL injection protection.
  • XSS protection.
  • CSRF protection.
  • High secure latest PHP’s one-way password hashing algorithms.

Server requirements

  • Apache or Nginx server.
  • PHP version 5.6.x or newer is recommended. If you got PHP 7.x, then go ahead use PHP 7.x latest version. PHP 7.x is much better than PHP 5.6.x versions.
  • OpenSSL PHP extension.
  • MySQL version 5.6 or greater or MariaDB version 10.0 or greater.

Changelog

Version 7.0 – October 17, 2019
  • [Upgraded] Codeigniter framework to v3.1.11 (latest) from v3.1.10.
  • [Refactored] Users module related controllers and corresponding db model files to make them more readable and simple.
  • [Added] ‘datetimeLastActivity’ table field value setting in user signup db model.
  • [Refactored] Few Auth module related controllers to make it easier to understand logical flow.
  • [Added] TinyMCE editor into assets/common/common/libs directory.
  • [Added] HTMLPurifier v4.11.0 third party package.
  • [Enhanced] Few tables in the database by adding necessary db indexes and changing field data types.
  • ...more…
Version 6.0 – September 20, 2019
  • [Refactored] few class files to change the order of some statements in them and updated few comments.
  • [Added] searchable functionality for ‘datetimeLastActivity’ field in users CRUD view.
  • [Refactored] all the ‘datetime’ showing format to 24h format from AM/PM format. this modification makes ‘time’ part of the ‘datetime’ string searchable.
  • [Fixed] empty table header th tag get stretched when browser resize even it has ‘_table_cell_shrink’ CSS class. this bug introduced by the fixed table header custom JS library. but now it’s fixed.
  • ...more…
Version 5.0 – September 9, 2019
  • [Added] appskull specific configuration file into app module and moved all the appskull related configuration options into that file. So now you can define your app configuration options separately from Appskull specific configuration options. For example, app_version, app_name and etc…
  • [Changed] some custom html attribute naming to give more straightforward names for them. So Appskull users will have easy time mess with them
  • [Refactored] app, users module routes to differentiate userend routes from adminend routes. For example, now you can have userend routes like http://[root]/users/ and its corresponding adminend routes like http://[root]/admin/users/. In simple words adminend routes will not collide with userend routes. Auth module did not affected by this modification.
  • [Added] placeholder controller with it’s corresponding view file to handle Appskull default/home/index route. In simple words, now Appskull have app home controller and app admin home controllers. So now you can easily design a home page for Appskull without messing with the adminend.
  • [Added] new user permission called View admin home (app_viewAdminHome) to handle adminend specific home view visibility.
  • ...more…
Version 4.0 – August 28, 2019
  • [Added] user overview/dashboard feature.
  • [Added] show users online state next to their first name.
  • [Added] active/inactive state CRUD field for all CRUD views.
  • [Added] user last activity datetime feature.
  • [Added] User signup welcome email sending feature.
  • [Fix] small bug in user signout feature.
  • [Added] editUserData() new method into Edit_user_model.php file. this method can be used to edit specific user data.
  • [Added] new method called isOnlne() into ‘User’ custom library. this method can be used to check weather user online or not.
  • [Fix] bug related to time difference calculation in user password reset feature.
  • [Fix] flatpickr calendar module not moving with it’s corresponding input field.
  • [Fix] passowrd visibility toggle switch not working on touch devices.
  • [Added] responsive fonts capability.
  • ...more…
Version 3.0 – August 6, 2019
  • [Updated] Add cross domain/host redirect protection to nextUrl() method in Url custom library.
  • [Added] Few animation related CSS classes.
  • [Added] Very subtle animations to alerts in all modules.
  • [Updated] Auth module related view files.
  • [Refactored] Remember me feature related codes in Auth module.
  • [Updated] Adminend and userend footer view files.
  • [Updated] Adminend and userend header view files.
  • [Added] Fixed header custom JS library.
  • [Added] Fixed header functionality for every CRUD table in the app.
  • [Added] Cancel button for few view files in Auth module.
  • [Updated] Improved next URL navigation in password reset feature and many other places.
  • [Added] Password visibility toggler custom JS library.
  • [Added] Password visibility toggle feature for every password input fields.
  • [Updated] Add box shadow for btn-link type buttons to enhance user accessibility.
  • [Added] User email verification status with sorting functionality for users CRUD view.
  • [Added] Email verification selection option for user add and user edit feature.
  • [Added] Introduced user security settings and user email settings related permissions.
  • [Added] Few user settings related routes into routes.php file.
  • [Added] Users module specific config file.
  • [Updated] User add and edit related controllers in users module.
  • [Updated] User add and edit related DB models in users module.
  • [Removed] Max password character length limit from controllers.
  • [Added] New user settings related DB model file.
  • [Updated] Re-structured user settings controller files and DB model files for better maintainability and scalability.
  • [Updated] User permissions view table.
  • [Added] Bootstrap auto close alerts custom JS library.
  • [Added] Alerts auto close functionality for all dismissible alerts.
  • [Added] isEmailVerified() new method into User custom PHP library.
  • [Added] Minimum password length configuration option to users module specific configuration file.
  • [Added] Minimum password length configuration option to system settings.
  • [Added] New password recommendations popover for all new password input fields.
  • [Added] Bootstrap plugin initiator custom JS library.
  • [Updated] All mt_rand() usage with CI’s built-in string helper random_string() method.
  • [Updated] Auth module user signup related system settings view file.
  • [Updated] Few user settings ‘view’ related permissions keys.
  • [Updated] User signin view file in auth module.
  • [Added] New config option called users_emailVerificationTokenExpirationInMinutes. to users module config file.
  • [Added] Email verification token expiration in minutes option to users settings.
  • [Updated] Most of the controllers by removing unnecessary permissions checking.
  • [Added] Email verification feature.
  • [Updated] Moved repeating form validation callback methods into db models.
  • [Updated] App slogan input field’s max character length to 150 from 50.
  • [Updated] Now identify user account step in user password reset feature behave differently for signed-in and signed-out users.
  • [Updated] Documentation.
  • ...more…
Version 2.0 – June 18, 2019
  • [Added] Remember me feature on user signin/login (Multiple devices supported).
  • [Added] New custom library called Uri.
  • [Updated] All next URL redirections to add support for query string.
  • [Updated] Few default configuration values to avoid name collisions.
  • [Refactored] Few configuration files to enhance readability.
  • ...more…
Version 1.0 – June 13, 2019
  • Initial release.
by
by
by
by
by
by