🍩 Modern PHP user login and management framework++.

README.md

UserFrosting 4.1

https://www.userfrosting.com

Build Status Join the chat at https://chat.userfrosting.com/channel/support Backers on Open Collective Sponsors on Open Collective

If you simply want to show that you like this project, or want to remember it for later, you should star, not fork, this repository. Forking is only for when you are ready to create your own copy of the code to work on.

By Alex Weissman

Copyright (c) 2018, free to use in personal and commercial software as per the license.

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

Features

User login screen

User login script

User management page

PHP user management script

Permissions management page

UserFrosting permissions management

Demo

Installation

Please see our installation guide.

Troubleshooting

If you are having trouble installing UserFrosting, please join us in chat or try our forums.

If you are generally confused about the structure and layout of the code, or it doesn't look like the kind of PHP code that you're used to, please start from the beginning.

Mission Objectives

UserFrosting seeks to balance modern programming principles, like DRY and MVC, with a shallow learning curve for new developers. Our goals are to:

  • Create a fully-functioning user management script that can be set up in just a few minutes
  • Make it easy for users to quickly adapt the code for their needs
  • Introduce novice developers to best practices such as separation of concerns and DRY programming
  • Introduce novice developers to modern constructs such as front-end controllers, RESTful URLs, namespacing, and object-oriented modeling
  • Build on existing, widely used server- and client-side components
  • Clean, consistent, and well-documented code

Documentation

Learning UserFrosting

API documentation

Change log

Running tests

Run php bakery test from the root project directory. Any tests included in sprinkles/*/tests will be run.

Development Team

Alexander Weissman

Alex is the founder and co-owner of two companies, one that does math tutoring at Indiana University in Bloomington, IN and another company that does math tutoring at UMD in College Park, MD. He is a PhD student in the School of Informatics and Computing at Indiana University.

Louis Charette

Louis's a civil engineer in Montréal, Québec who also has a passion for coding. He is one of the main contributors for SimpsonsCity.com and likes to share his knowledge by helping others the same way he was helped when he first started coding.

Jordan Mele

Jordan's a developer at Mayvin Training and a student studying Computer Science at the University of Wollongong. His passion is creating software-based solutions to overcomplicated problems, without taking control away from the user. He's also Australian.

Sarah Baghdadi

Sarah is UserFrosting's UX specialist and frontend designer. In addition to her work on the UF application itself, she is responsible for the amazing design of https://www.userfrosting.com and https://learn.userfrosting.com.

Srinivas Nukala

Srinivas's a web applications architect, with a passion for open source technologies. He is experienced in building SaaS (software as a service) web applications and enjoys working on open source projects and contributing to the community. He has a Masters in Computer Science from Pune University, India.

Contributing

This project exists thanks to all the people who contribute. If you're interested in contributing to the UserFrosting codebase, please see our contributing guidelines as well as our style guidelines.

Thanks to our translators!

  • Louis Charette (@lcharette) - French
  • Karuhut Komol (@popiazaza) - Thai
  • Pietro Marangon (@Pe46dro) - Italian
  • Christian la Forgia (@optiroot) - Italian
  • Abdullah Seba (@abdullahseba) - Arabic
  • Bruno Silva (@brunomnsilva) - Portuguese
  • @BruceGui - Chinese
  • @kevinrombach - German
  • @rafa31gz - Spanish
  • @splitt3r - German
  • @X-Anonymous-Y - German
  • Dmitriy (@rendername) - Russian
  • Amin Akbari (@aminakbari) - Farsi
  • Dumblledore - Turkish

Supporting UserFrosting

Backers

Backers help us continue to develop UserFrosting by pledging a regular monthly contribution of $5 or more. [Become a backer]

Sponsors

Support this project by becoming a sponsor. Sponsors have contributed a total of $500 or more to UserFrosting (either as an ongoing backer or one-time contributions). Your logo will show up here with a link to your website. [Become a sponsor]

USOR Games Next Generation Internet