11

Probably 99% of web applications have a login module and a database with the table of registered users. I think this is the very bare minimum of any web app.

I was wondering if there is a sort framework, or a piece of ready to use code, to set this up.

Let's say you want to launch your new web app asap, and obviously, you would need at some point users to register and login.

I bet you would probably build the frontend of your website/app with some Bootstrap theme. In the same way, what would you use for the backend, based on PHP?


I understand the question could sound kind of generic. What I'm trying to do is to get some advice to build the backend. I'm simply trying to avoid building a backend from scratch, to discover later that there was some Framework XYZ that almost everyone is using to build the bare minimum of a web app (login + table of registered users).

I know there are popular frameworks like Laravel, Symfony, etc., but is each developer building the "login + registered users" part of the web app on these frameworks by writing his own code and reinventing the wheel each time? Or is there a ready to use piece of code to accomplish this task?

5
  • 1
    You can check out this brief guide on authentication here
    – Bob Kimani
    Mar 22, 2016 at 18:58
  • 1
    A list of popular frameworks found here led me to arrive at two good choices Hybrid Auth for social logins--> really good since not many people like registering time and again and Userpie for simple logins.I would advise to create the register/sign up php yourself as this is not hard .
    – Bob Kimani
    Mar 22, 2016 at 19:13
  • 1
    A framework like Drupal comes pre-loaded with this capability.
    – rrirower
    Mar 22, 2016 at 20:16
  • 1
    @rrirower: well, why not using Wordpress then?! Mar 23, 2016 at 11:45
  • 1
    I would recommend researching this list of Authentication libraries: "Awesome list" of PHP libraries for the sake of "framework agnostic" libraries so your solution doesn't depend on any framework, in case you need that. Also good for learning. Jul 31, 2016 at 8:15

5 Answers 5

5

I would check out a PHP library called, "UserFrosting". It's an open source login system that uses bootstrap as it's theme. It's being used on a number of projects and it is in active development (last commit 17 days ago). UserFrosting also supports plugins and templates that are easy to create (if you're a PHP developer). It has a modern looking dashboard and a great set of administrator tools.

UserFrosting (open source)

MODERN USER MANAGEMENT FOR PHP.

UserFrosting is a secure, modern user management system written in PHP and built on top of the Slim Microframework and the Twig templating engine.

Personal Dashboards

View, edit, sort, and create users

6
  • It could be a good suggestion, but looking at Slim website it does not seem to have a bright future discourse.slimframework.com Mar 23, 2016 at 11:39
  • 1
    @MarcoDemaio StackOverflow tells a different story (1,144 questions tagged!). It's very popular and I believe does have a bright future
    – Tom
    Mar 23, 2016 at 22:01
  • well, according to your metric Symfony tag shows 39K questions tagged, and Laravel 35K Mar 24, 2016 at 12:43
  • @MarcoDemaio Sure, those are other popular frameworks, I don't think that means Slim doesn't have a bright future; though
    – Tom
    Mar 24, 2016 at 21:06
  • 1
    Creator of UserFrosting here. Slim 3 just came out, and we're working hard on a new version of UserFrosting based on Slim 3!
    – alexw
    Jun 2, 2016 at 20:19
2

I think that a very good option is Huge
Its like most systems opensource and is very easy to get started in even if you are just starting out with PHP.

Aside from the very well built code base it also offers a great customization to your needs and, is very well documented!

Just a simple user authentication solution inside a super-simple framework skeleton that works out-of-the-box (and comes with an auto-installer), using the future-proof official bcrypt password hashing/salting implementation of PHP 5.5+, plus some nice features that will speed up the time from idea to first usable prototype application dramatically. Nothing more. This project has its focus on hardcore simplicity. Everything is as simple as possible, made for smaller projects, typical agency work and quick pitch drafts.

Give it a try!

(Yes, i know its marked end of life, but it will still receive security updates.)

1

You could look into dreamfactory which has user managment is and api rest focused on app development. https://github.com/dreamfactorysoftware/dreamfactory. It's open-sourced, supports upgrading to new versions.

1

Since you mention Symfony, you will probably be interested in FOSUserBundle which is a very popular bundle. It had its own part in the official documentation, this proves that this bundle has a good reputation, even though it was in the 2.0 documentation which is about 4 years old. And even if there is some complaints about the lack of updates, the bundle is still usable and work great.

1
  • 1
    As of Sep 2021, the readme file prominently states, "New projects should not use this bundle." Jan 5, 2023 at 19:09
0

CakePHP will let you make just about any application you want, and has an authentication component which will let you create user authentication without needing to write everything around that area from scratch.

1
  • The AuthComponent documentation states it is deprecated. Jan 5, 2023 at 19:21

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.