Welcome, comrades
Nicotine is an open source framework for PHP & MySQL, especially suited for web development.
It contains many features, such as built in support for Admin, API requests, CLI scripts and cronjobs. It also comes with an Admin prototype interface for users and roles.
Nicotine is inspired from Laravel, CodeIgniter and CakePHP frameworks. Those of you which are familiar with these frameworks, can learn Nicotine fast.
Update December 2, 2023: Ignore Admin prototype. It was created on version 1.0, without the new features such as Forms, CSRF token, Database Shortcuts, and so on. Just build your own Admin and delete old prototype files (such as controllers, models and views). They will be rewriten from scratch on the next version.
Why to choose Nicotine
MVC
Nicotine is a Model-View-ControllerFast
Nicotine has a very fast executionLightweight
Nicotine has a size less than 1MBModern
Nicotine works with PHP >= 8.2.0Secure
Nicotine has a strong security DispatcherEasy
Nicotine is easy to learn, use and adaptFree
Nicotine is open source and always will beServer Requirements
Check downloads page for PHP compatibility.
Istallation
Clone or download and unzip the archive in your web folder. Setup entry point to be in /public folder for all web requests. This is a security measure, so that users cannot access the framework files, blocking navigation in the folders located above.
Configuration
Create a copy of the file /config.php.copy and rename the clone to /config.php. Edit the clone everytime you need. Each option is explained in comments of the file.
Don't edit, rename or delete /config.php.copy!
Database Installation
Create a database and write credentials, character set and collation into /config.php file.
Then go to /workspace/db/db.sql and copy and paste into your database client.
Or simply cd workspace/cli and type:
php console db:fresh
Now you can login into the Admin side, by accessing /admin page.
Credentials for Super Admin role are email: admin@example.com, password: 123456.
After login, you should delete this user. It was created for demo purposes.
Create your own one from Admin interface, by clicking "Add Member".
Then, from the "Staff" list, activate the account and send an email invitation for the newly created account.
Set your password and first name by clicking on the link received by email, then you can login.