PHPackages                             fishawack/triton - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. fishawack/triton

ActiveCraft-plugin[Utility &amp; Helpers](/categories/utility)

fishawack/triton
================

JSON export for Neptune

1.1.5(4y ago)045MITPHP

Since Oct 31Pushed 4y ago1 watchersCompare

[ Source](https://github.com/fishawack/neptune-triton)[ Packagist](https://packagist.org/packages/fishawack/triton)[ RSS](/packages/fishawack-triton/feed)WikiDiscussions master Synced 6d ago

READMEChangelogDependencies (1)Versions (10)Used By (0)

Triton plugin for Craft CMS 3.x
===============================

[](#triton-plugin-for-craft-cms-3x)

Since our product is called Neptune, it made sense to name our plugin following suit as Triton is the largest moon for Neptune!

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

[](#requirements)

- Docker

Installation fresh to Craft Instance
------------------------------------

[](#installation-fresh-to-craft-instance)

To install the plugin, follow these instructions.

*Pre-requistes - Make sure that the composer file in Craft has the repository that loads everything above the craft folder*

1. Require our plugin by running:

    ```
     composer require /triton

    ```
2. In the Control Panel, go to Settings → Plugins and click the “Install” button for Triton.

Import
------

[](#import)

Must knows!

- All Products and sections will require at least 1 entry, for Bayer you will see that the each product will have a placeholder entry
- Make sure you remove the empty row from Journals.csv

Configuring Triton
------------------

[](#configuring-triton)

There are a few config arrays available within variablesService - i.e. you can add more ignored status' in the getDisregard() method, you should largely not need to touch these.

Import via XLSX
---------------

[](#import-via-xlsx)

With the new XLSX import method you don't need to worry about text quantifiers anymore, please let the writers know how to export from iEvension and it's a case of selecting the correct product and importing.

Using Triton (legacy CSV import from datavision)
------------------------------------------------

[](#using-triton-legacy-csv-import-from-datavision)

Make sure that you export CSV from Datavision with no text quantifier and use ` for seperation

Triton Roadmap
--------------

[](#triton-roadmap)

Some things to do, and ideas for potential features:

- Export Db before an import happens
    - Delete SQL files that are older than specific time or limit the number of files available
- Add in 'Products' - DONE!
- Auto check for studies / journals / congress - DONE!
- Auto Finish templating the front end of the app - DONE!
- Setup routes to show json of publications, congress, journals, studies &amp; tags - DONE!
- Create cache files for speedier loading - DONE!
- Release it - DONE!

Brought to you by [GeeHim Siu](www.fishawack.com)

Neptune
=======

[](#neptune)

Since Neptune can now be installed via composer without close to zero configuration, we won't host READMEs to a repo. This readme will live here for now :)

Workflow (Brand New)
--------------------

[](#workflow-brand-new)

- Create local version of the base Neptune
- Setup all configurations
- Do Triton upload of studies, journals, congresses and publications (publications MUST be imported last)
- After each import copy the import log to an excel sheet and send to writers
- Once checked everything is okay, export database
- Setup version on internal server, make sure a IT has setup urls
- Import database and check everything
- Done!

### Building from SEED

[](#building-from-seed)

1. Setup Triton

```
git clone git@bitbucket.org:fishawackdigital/neptune-triton.git triton

```

2. Create new project using composer:

```
composer create-project craftcms/craft

```

N.B. Triton has to sit on the same directory level as the Neptune project

3. Add in Redactor &amp; Triton to the project by adding this to your composer.json

- Under 'require'

```
    "fishawack/triton": "^1.0",
    "craftcms/redactor": "^1.0.1"

```

- Add new object 'repositiories'

```
"repositories": [
      {
         "type": "path",
         "url": "../triton"
      }
  ]

```

4. Run `composer install`
5. Import Neptune SEED DB -
6. Go to Settings &gt; Fields &gt; Product and add in any products this Neptune will have
7. Go to Settings &gt; Assets Edit importplugin and make sure the File System Path points to your directory structure. (make sure that ./storage/import exists and is writable)
8. Make sure all plugins are active and that each section has a placeholder entry
9. Your Neptune is ready for DV data to be imported

### Extracting Data from DataVision

[](#extracting-data-from-datavision)

1. Acquire logins to DV
2. You'll need to setup the records to export the correct information, these templates have been exported and can be found in our Auto-Content folder ().
3. Import the plugins by going to the 'Reports' tab and clicking 'Import Report' (small icon near the delete button)
4. Click Preview on each report
    - Click Export
    - Choose CSV on the left panel
    - Set column delimiter to `
    - Clear text quantifier so that it's empty
    - Check 'Export report data only'
    - Uncheck 'with column names'
    - Choose save location
    - Click OK
5. You should have exported CSVs for Journals, Congresses, Studies, Publications
6. Upload these files to Egnyte under Auto-Content / Neptune / CMS / YourNeptune

### Importing Data into Craft

[](#importing-data-into-craft)

**Please make sure that the import is done locally rather than the server, there isn't enough resource there sadly!**

1. Run your local installation by navigating to web/ and run:

```
php -S localhost:8000

```

2. Go to localhost:8000/admin/triton
3. Import your csv's with Publications being the absolute last and weirdly, you need to do a double import of the publications so that it's definite the journals &amp; congresses are in.
4. Make sure you keep the reports to send to the corresponding writers

- New: New records that weren't in
- Ignored: There's been no change in the data
- Changed: Something has changed, the report will let you know what has
- Deleted: These are records that aren't in the DV import however these don't actually get deleted but disabled

5. Create an export of the CSV via the button (/admin/triton), this is a csv of the whole dataset joined with together
6. Export SQL data to be imported onto internal version

### Testing

[](#testing)

This tool really should have some testing (PHPUnit) in place however when we first took Craft3 on it did not have tests implemented, never the less! I've created a CheckerController where you can write some items which people usually ask for. I've started this out by writing tests for duplicate data, you can see this here: [http://UrlGoeshere/triton/checker/duplicates?section=publications&amp;status=true](http://UrlGoeshere/triton/checker/duplicates?section=publications&status=true)

Please feel free to implement anymore so that we can do run throughs to find out if the data integerity is up to scratch!

###  Health Score

27

—

LowBetter than 49% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity8

Limited adoption so far

Community4

Small or concentrated contributor base

Maturity63

Established project with proven stability

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

Recently: every ~47 days

Total

9

Last Release

1539d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/254646d513e4636788cdc20243419b60a17c32aef19bf391d3738cce768498e7?d=identicon)[fishawack](/maintainers/fishawack)

---

Tags

cmsCraftcraftcmscraft-plugintriton

### Embed Badge

![Health badge](/badges/fishawack-triton/health.svg)

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

###  Alternatives

[verbb/navigation

Create navigation menus for your site.

90683.7k17](/packages/verbb-navigation)[verbb/formie

The most user-friendly forms plugin for Craft.

101372.9k40](/packages/verbb-formie)[verbb/comments

Add comments to your site.

13753.1k](/packages/verbb-comments)[verbb/tablemaker

Create customizable and user-defined table fields.

40168.8k1](/packages/verbb-tablemaker)[supercool/tablemaker

Create customizable and user-defined table fields.

40141.7k](/packages/supercool-tablemaker)[pennebaker/craft-architect

CraftCMS plugin to generate content models from JSON/YAML data.

72148.5k5](/packages/pennebaker-craft-architect)

PHPackages © 2026

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