PHPackages                             neoan.io/rest-api-starter-project - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [API Development](/categories/api)
4. /
5. neoan.io/rest-api-starter-project

ActiveProject[API Development](/categories/api)

neoan.io/rest-api-starter-project
=================================

Basic neoan.io Lenkrad starter kit with authentication

v1.4.0(2y ago)134MITPHP

Since Oct 27Pushed 1y ago2 watchersCompare

[ Source](https://github.com/sroehrl/neoanio-rest-starter)[ Packagist](https://packagist.org/packages/neoan.io/rest-api-starter-project)[ RSS](/packages/neoanio-rest-api-starter-project/feed)WikiDiscussions master Synced today

READMEChangelog (8)Dependencies (3)Versions (15)Used By (0)

Basic neoan.io Lenkrad REST-API starter kit with authentication
===============================================================

[](#basic-neoanio-lenkrad-rest-api-starter-kit-with-authentication)

This is a very light project setup designed to get your REST-api up and running in no time.

Requirements
------------

[](#requirements)

- php8.1
- composer ^2
- SQLite

Installation
------------

[](#installation)

`composer create-project neoan.io/rest-api-starter-project my-app`

`cd my-app`

`composer update`

`php install`

To run: `php dev`

The, visit `http://127.0.0.1:8080`

Basic tutorial
--------------

[](#basic-tutorial)

This project ships with a basic tutorial to get you started. For deeper understanding, please visit the lenkrad docs: [neoan.io lenkrad](https://github.com/sroehrl/neoan.io-lenkrad-core#neoanio-lenkrad-core)

Authentication
--------------

[](#authentication)

After installation, you can register a user against POST /api/auth/register (src/Auth/Api/Register.php) with a payload containing email and password:

> curl -X POST -H "Content-Type: application/json" -d '{"email": "", "password": "123456"}'

Authenticated calls will require the provided JWT-token

The login endpoint is `/api/auth/authenticate` (src/Auth/Api/Authenticate.php) and the endpoint `/api/auth/me` (src/Auth/Api/Me.php) returns the current user.

Restricting routes
------------------

[](#restricting-routes)

Middleware can be chained prior to routes in the respective Attributes (see src/Auth/Api/ME.php for clarification)

Understanding the capabilities
------------------------------

[](#understanding-the-capabilities)

The folder src/Example should give you a good starting point for intuitive understanding of how the LENKRAD core is used in this starter. Be aware that you are completely free regarding structure. What you find in this starter is a mere example.

Security / Before you deploy
----------------------------

[](#security--before-you-deploy)

Your checklist:

- .env file update
- folder src/Example necessary?
- is only the folder /public exposed to the web?

Change from SQLite to MySQL or MariaDB
--------------------------------------

[](#change-from-sqlite-to-mysql-or-mariadb)

First, add the following information to your .env file

- DB\_HOST
- DB\_NAME
- DB\_USER
- DB\_PASSWORD
- DB\_CHARSET
- DB\_PORT

Make sure that the selected database is created. Then, change the constructor of `config/Database.php` to use the method `useMySql` instead of `useSQLite`.

When migrating, use the dialect keyword `mysql` instead of `sqlite`:

`php cli migrate:models mysql`

###  Health Score

28

—

LowBetter than 52% of packages

Maintenance31

Infrequent updates — may be unmaintained

Popularity9

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity54

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~75 days

Recently: every ~129 days

Total

12

Last Release

513d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/92d2361b646651e3452a62d07274076346c4096480098a6c43d6c27ee28d460d?d=identicon)[neoan](/maintainers/neoan)

---

Top Contributors

[![sroehrl](https://avatars.githubusercontent.com/u/28542911?v=4)](https://github.com/sroehrl "sroehrl (25 commits)")

---

Tags

json-apijwt-authphpphp8rest-apistateless

### Embed Badge

![Health badge](/badges/neoanio-rest-api-starter-project/health.svg)

```
[![Health](https://phpackages.com/badges/neoanio-rest-api-starter-project/health.svg)](https://phpackages.com/packages/neoanio-rest-api-starter-project)
```

###  Alternatives

[exsyst/swagger

A php library to manipulate Swagger specifications

35916.4M7](/packages/exsyst-swagger)[hubspot/api-client

Hubspot API client

24016.2M20](/packages/hubspot-api-client)[pocketmine/bedrock-protocol

An implementation of the Minecraft: Bedrock Edition protocol in PHP

172445.0k15](/packages/pocketmine-bedrock-protocol)[botman/driver-telegram

Telegram driver for BotMan

93459.5k6](/packages/botman-driver-telegram)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
