PHPackages                             devwrench/jtsm - 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. [Framework](/categories/framework)
4. /
5. devwrench/jtsm

ActiveLibrary[Framework](/categories/framework)

devwrench/jtsm
==============

basic web app framework for PHP 5.4

v0.1.4(9y ago)03LGPL-3.0+PHPPHP &gt;=5.4.0

Since Jan 21Pushed 9y ago1 watchersCompare

[ Source](https://github.com/cxw42/jtsm)[ Packagist](https://packagist.org/packages/devwrench/jtsm)[ RSS](/packages/devwrench-jtsm/feed)WikiDiscussions master Synced 3w ago

READMEChangelogDependencies (5)Versions (6)Used By (0)

jtsm
====

[](#jtsm)

This is a basic web app framework for PHP 5.4. It is currently in a very rudimentary state.

Advantages
----------

[](#advantages)

- Works on PHP 5.4 - you don't need the latest!
- Does not require any URL rewriting - can work with nginx on a server you don't control
- Stores all configuration information in .php files - can work on servers that do not block access to specific files or directories, or that do not provide space outside the document root for storage.

Usage
-----

[](#usage)

Subclass `\JTSM\App` and say `(new YourApp($site_root))->run();`.

### Site layout

[](#site-layout)

```
site root (provided by you as a constructor parameter)
|
+--- skins (base directory for Twig files)
     |
     +--- cache (Twig cache directory)

```

Other than that, everything is up to you.

Installing
----------

[](#installing)

I'm sorry to say this uses an update of nikic/fast-route that I haven't submitted a PR for yet. Here's how I install:

1. Create a directory for your new site. In this doc, that directory is called `base`.
2. Copy &lt;./composer.json.template&gt; to `base/composer.json`.
3. In `base`, `composer update`.

After that, you can set up a very bare-bones site:

1. Copy &lt;./index.php.template&gt; to `base/index.php`.
2. Copy &lt;./root.twig.php.template&gt; to `base/skins/root.twig.php`
3. In `base`, run `php -S localhost:1337`
4. In a browser, open .

You should have a basic site running!

Legal
-----

[](#legal)

Copyright (c) 2016 Chris White (cxw42@github) (). LGPL-3+. See &lt;LICENSE.md&gt; for details.

###  Health Score

23

—

LowBetter than 26% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity3

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity52

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 ~0 days

Total

5

Last Release

3438d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/42f34435f34ba3e9469b75bb0373a3536884bacb32409dfcd1cbcaef47496c56?d=identicon)[cxw](/maintainers/cxw)

---

Top Contributors

[![cxw42](https://avatars.githubusercontent.com/u/10515894?v=4)](https://github.com/cxw42 "cxw42 (18 commits)")

---

Tags

apiframework

### Embed Badge

![Health badge](/badges/devwrench-jtsm/health.svg)

```
[![Health](https://phpackages.com/badges/devwrench-jtsm/health.svg)](https://phpackages.com/packages/devwrench-jtsm)
```

###  Alternatives

[symfony/symfony

The Symfony PHP framework

31.4k86.9M2.2k](/packages/symfony-symfony)[shopware/platform

The Shopware e-commerce core

3.4k1.5M3](/packages/shopware-platform)[abydahana/aksara

Aksara is a CodeIgniter based CRUD Toolkit you can use to build complex applications become shorter, secure and more reliable just in a few lines of code. Serving both CMS or Framework, produce both HEADLESS (RESTful API) or TRADITIONAL (Browser Based), just by writing single controller. Yet it's reusable, scalable and ready to use!

1111.2k](/packages/abydahana-aksara)[contao-community-alliance/dc-general

Universal data container for Contao

1579.5k90](/packages/contao-community-alliance-dc-general)[sproutcms/cms

Enterprise content management and framework

242.2k4](/packages/sproutcms-cms)[atk4/api

Agile API - Extensible API server in PHP for Agile Data

143.7k1](/packages/atk4-api)

PHPackages © 2026

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