PHPackages                             aklump/taskcamp\_api - 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. aklump/taskcamp\_api

ActiveLibrary

aklump/taskcamp\_api
====================

Defines a common API for working with the Taskcamp Project Management system by In the Loft Studios.

0.3.1(2y ago)0183[1 PRs](https://github.com/aklump/taskcamp_api/pulls)BSD-3-ClauseHTMLPHP ^8CI failing

Since Sep 7Pushed 6mo ago1 watchersCompare

[ Source](https://github.com/aklump/taskcamp_api)[ Packagist](https://packagist.org/packages/aklump/taskcamp_api)[ RSS](/packages/aklump-taskcamp-api/feed)WikiDiscussions master Synced 3d ago

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

Taskcamp API
============

[](#taskcamp-api)

[![Taskcamp API](images/taskcamp.jpg)](images/taskcamp.jpg)

Summary
-------

[](#summary)

This is the core API library for Taskcamp, by [In the Loft Studios](https://www.intheloftstudios.com). It should be used by API clients wishing to work with this application.

At the heart, it defines a new serialzation format which is a combination of HTML, YAML, and markdown to represent complicated data relationships, which look like the following. See [this page](@mime) for more info.

The corresponding MIME type is: `application/prs.taskcamp.entity`.

```

---
attribute: value
---
# title

body

```

PHP
---

[](#php)

### Installation

[](#installation)

```
composer require aklump/taskcamp_api

```

### Usage

[](#usage)

#### Deserialize

[](#deserialize)

This is what a JSON representation of an `\AKlump\Taskcamp\API\Entity` looks like:

```
{
    "type": "bug",
    "properties": {
        "projectName": "My Project",
        "projectId": 123
    },
    "data": {
        "device": "mac",
        "os": {
            "name": "macosx",
            "version": "10.13.6"
        }
    },
    "title": "The title has too much top margin",
    "body": ""
}

```

Here is how you would deserialize a JSON string, like the one above.

```
use AKlump\Taskcamp\API\Entity;
use AKlump\Taskcamp\API\EntityEncoder;
use AKlump\Taskcamp\API\EntitySerializer;

$serializer = new EntitySerializer();
$entity = $serializer->deserialize($json, Entity::class, 'json');

```

If the data was encoded in another format you would use either of these:

```
$entity = $serializer->deserialize($entity_markup, Entity::class, EntityEncoder::TYPE);
$entity = $serializer->deserialize($xml, Entity::class, 'xml');

```

#### Serialize

[](#serialize)

Here's how you would serialize an object into `EntityEncoder::TYPE` format.

```
$entity = new Entity();
$entity
    ->setType('feature')
    ->setTitle('Augment the footer with another section')
    ->setBody('In order to fit in the about section in the footer, we need to create a fourth column that can take a custom block.  The block needs to be added to the region so the client can edit it.')
    ->setProperties(['projectId' => 123])
    ->setData(['priority' => 'high']);
$markup = $serializer->serialize($entity, EntityEncoder::TYPE);

```

And this is how that format looks:

```

---
priority: high
---
# Augment the footer with another section

In order to fit in the about section in the footer, we need to create a fourth column that can take a custom block.  The block needs to be added to the region so the client can edit it.

```

Javascript
----------

[](#javascript)

@todo

### Installation

[](#installation-1)

```
yarn add @aklump/taskcamp_api

```

Or if not using *yarn*:

```
npm install @aklump/taskcamp_api

```

###  Health Score

33

—

LowBetter than 75% of packages

Maintenance47

Moderate activity, may be stable

Popularity10

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity56

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

Recently: every ~291 days

Total

12

Last Release

787d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/79476f3b82f9c766433c7eb401cbcfc636cd5d5ccf2b2e6b50ea81d1de6c2730?d=identicon)[aklump](/maintainers/aklump)

---

Top Contributors

[![aklump](https://avatars.githubusercontent.com/u/425737?v=4)](https://github.com/aklump "aklump (70 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/aklump-taskcamp-api/health.svg)

```
[![Health](https://phpackages.com/badges/aklump-taskcamp-api/health.svg)](https://phpackages.com/packages/aklump-taskcamp-api)
```

###  Alternatives

[sylius/sylius

E-Commerce platform for PHP, based on Symfony framework.

8.4k5.6M651](/packages/sylius-sylius)[craftcms/cms

Craft CMS

3.6k3.6M2.6k](/packages/craftcms-cms)[shopware/platform

The Shopware e-commerce core

3.3k1.5M3](/packages/shopware-platform)[sulu/sulu

Core framework that implements the functionality of the Sulu content management system

1.3k1.3M152](/packages/sulu-sulu)[prestashop/prestashop

PrestaShop is an Open Source e-commerce platform, committed to providing the best shopping cart experience for both merchants and customers.

9.0k15.4k](/packages/prestashop-prestashop)[shopware/core

Shopware platform is the core for all Shopware ecommerce products.

595.2M386](/packages/shopware-core)

PHPackages © 2026

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