https://github.com/nicumicle/simple-jwt-login
This plugin allows you to log in, register, authenticate, delete and change the user password to a WordPress website using a JWT.
https://github.com/nicumicle/simple-jwt-login
hacktoberfest jwt jwt-authentication jwt-login php wordpress wordpress-api wordpress-plugin wp wp-plugin
Last synced: 5 months ago
JSON representation
This plugin allows you to log in, register, authenticate, delete and change the user password to a WordPress website using a JWT.
- Host: GitHub
- URL: https://github.com/nicumicle/simple-jwt-login
- Owner: nicumicle
- License: gpl-3.0
- Created: 2020-10-02T07:41:22.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2025-05-05T04:03:35.000Z (about 1 year ago)
- Last Synced: 2025-05-05T05:20:30.848Z (about 1 year ago)
- Topics: hacktoberfest, jwt, jwt-authentication, jwt-login, php, wordpress, wordpress-api, wordpress-plugin, wp, wp-plugin
- Language: PHP
- Homepage: http://wordpress.org/plugins/simple-jwt-login/
- Size: 6.63 MB
- Stars: 94
- Watchers: 2
- Forks: 30
- Open Issues: 27
-
Metadata Files:
- Readme: README.md
- Changelog: Changelog.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
Simple JWT Login is a FREE WordPress plugin that allows you to use a JWT on WordPress REST endpoints.
The main purpose of this plugin is to allow Mobile apps, or other websites to access the content from a WordPress website via REST endpoints in a secure way.
## Overview
Table of contents
=================
* [Installation](#bulb-installation)
* [Install from Zip](#install-from-zip)
* [Install from WordPress.org](#install-from-wordpressorg)
* [Setup the Plugin](#setup-the-plugin)
* [Features](#tada-features)
* [Integrate](#electric_plug-integrate)
* [PHP SDK](#php-sdk)
* [JavaScript SDK](#javascript-sdk)
* [Documentation](#ledger-documentation)
* [Roadmap](#rocket-roadmap)
* [Contribute](#scroll-contribute)
* [How can you contribute](#how-can-you-contribute)
* [Contributors](#trophy-contributors)
* [Copyright](#copyright)
## :bulb: Installation
If you want to make sure you have a stable version, please download this plugin from [WordPress.org](https://wordpress.org/plugins/simple-jwt-login/).
### Install from Zip
> [!NOTE]
> Please note that this plugin version is not fully tested.
If you want to upload the simple-jwt-login plugin to your website:
- Download [downloads/simple-jwt-login.zip](https://github.com/nicumicle/simple-jwt-login/blob/master/download/simple-jwt-login.zip)
- Upload the zip file into your WordPress website
- Activate the plugin
### Install from WordPress.org
> [!TIP]
> For production environments we recommend installing the plugin from WordPress.org
In order to install the latest stable version, from your WordPress admin:
- Go to the ‘Plugins’ menu in WordPress and click ‘Add New’
- Search for ‘Simple JWT Login’ and select ‘Install Now’
- Activate the plugin when prompted
### Set up the Plugin
1. Go to "General" section
2. Set a "JWT Decryption key". With this key the JWT will be validated.
3. Choose "JWT Decryption algorithm".
4. Go to "Login" section
5. Set "JWT parameter key" with the payload key where user can be identified
6. Save Changes.
## :tada: Features
- **100% Free** and **open-source** under [GPL 3.0](https://github.com/nicumicle/simple-jwt-login/blob/master/LICENSE) License
- **Authenticate** : REST endpoint that will generate/validate/revoke a JWT
- **Autologin**: Autologin to a WordPress website with JWT
- **Register user**: Register users in WordPress by calling a REST endpoint
- **Delete user**: You can delete a WordPress user by adding some details in the JWT payload.
- **Reset password**: REST endpoint that allows you to reset WordPress User password. Also, it can send custom email if you want.
- **Protect endpoints**: Protect WordPress endpoints with a JWT. This way, you can make some endpoints private, and the content can be viewed only if you provide a valid JWT.
- **Allow JWT usage on other endpoints**: Add a JWT to requests for other API endpoints, and you will act as an authenticated user.
- **Integrate with other plugins**: This plugin works well in combination with other plugins that extends the WordPress REST API.
- **Google OAuth**(beta): Login to your website with Google
- **Google JWT**(beta): Use the Google `id_token` in order to access WordPress endpoints as an authenticated user.
## :electric_plug: Integrate
### PHP SDK
In order to easily integrate your app/site with the simple-jwt-login plugin, we have developed a composer package.
```shell
composer require nicumicle/simple-jwt-login-client-php
```
You can check this [GitHub repository](https://github.com/nicumicle/simple-jwt-login-client-php) for more details and code examples.
### JavaScript SDK
The Javascript SDK can be installed using `npm` or `yarn` into your App.
```shell
npm install "simple-jwt-login"
```
or
```shell
yarn add "simple-jwt-login"
```
You can check this [GitHub repository](https://github.com/simple-jwt-login/js-sdk) for more details.
## :ledger: Documentation
Plugin documentation is available at [simplejwtlogin.com](https://simplejwtlogin.com).
- [Introduction](https://simplejwtlogin.com/docs/)
- [Authentication](https://simplejwtlogin.com/docs/authentication)
- [Autologin](https://simplejwtlogin.com/docs/autologin)
- [Register User](https://simplejwtlogin.com/docs/register-user)
- [Reset Password](https://simplejwtlogin.com/docs/reset-password)
- [Delete User](https://simplejwtlogin.com/docs/delete-user)
- [Protect Endpoints](https://simplejwtlogin.com/docs/protect-endpoints)
- [Hooks](https://simplejwtlogin.com/docs/hooks)
## :rocket: Roadmap
Check out the [roadmap](https://github.com/users/nicumicle/projects/1) to get informed on the latest released features, current statuses, and upcoming features.
- [Top Feature Requests](https://github.com/nicumicle/simple-jwt-login/issues?q=label%3Afeature-request+is%3Aopen+sort%3Areactions-%2B1-desc) (Add your votes using the 👍 reaction)
- [Top Bugs](https://github.com/nicumicle/simple-jwt-login/issues?q=is%3Aissue+is%3Aopen+label%3Abug+sort%3Areactions-%2B1-desc) (Add your votes using the 👍 reaction)
- [Newest Bugs](https://github.com/nicumicle/simple-jwt-login/issues?q=is%3Aopen+is%3Aissue+label%3Abug)
## :scroll: Contribute
Simple-JWT-Login is an open-source project and welcomes all contributors.
As with all WordPress projects, we want to ensure a welcoming environment for everyone.
With that in mind, all contributors are expected to follow our [Code of Conduct](https://github.com/nicumicle/simple-jwt-login/blob/master/CODE_OF_CONDUCT.md).
### How can you contribute:
- Open Merge requests on existing issues: [CONTRIBUTING.md](https://github.com/nicumicle/simple-jwt-login/blob/master/CONTRIBUTING.md)
- Suggest features or report bugs: [issues/bugs](https://github.com/nicumicle/simple-jwt-login/issues/new/choose)
- Translate the plugin: [https://translate.wordpress.org](https://translate.wordpress.org/projects/wp-plugins/simple-jwt-login/)
## :trophy: Contributors
Thanks to all our contributors!
## :blue_heart: Sponsors
This project is supported by:
## Copyright
This project is distributed under the [GNU General Public License v3.0](https://github.com/nicumicle/simple-jwt-login/blob/master/LICENSE).
By submitting a pull request to this project, you agree to license your contribution under the GNU General Public License v3.0 to this project.