All Projects → parkerj → TriTan-CMS

parkerj / TriTan-CMS

Licence: GPL-3.0 License
TriTan CMS is a developer centric content management framework that allows you to go completely headless or nearly headless. With the mighty TriTan, you can build amazing RESTful applications and robust websites.

Programming Languages

PHP
23972 projects - #3 most used programming language

Projects that are alternatives of or similar to TriTan-CMS

contentjet-api
Headless API-first content management system
Stars: ✭ 95 (+400%)
Mutual labels:  headless, headless-cms, api-first-cms
FlexDotnetCMS
A powerful, flexible, decoupled and easy to use and Fully Featured ASP .NET CMS, it can also be used as a Headless CMS
Stars: ✭ 45 (+136.84%)
Mutual labels:  headless, headless-cms, decoupled
App
Directus Admin Application — An Intuitive WebApp for Managing Database Content
Stars: ✭ 464 (+2342.11%)
Mutual labels:  headless, cms-framework, headless-cms
boilerplate
Boilerplate for @prisma-cms
Stars: ✭ 22 (+15.79%)
Mutual labels:  headless-cms, api-first, api-first-cms
Cockpit
Add content management functionality to any site - plug & play / headless / api-first CMS
Stars: ✭ 5,173 (+27126.32%)
Mutual labels:  headless, cms-framework, headless-cms
tracardi
TRACARDI is a new HOME for your customer data. TRACARDI is an API-first solution, low-code / no-code platform aimed at any e-commerce business that wants to start using user data for marketing purposes.
Stars: ✭ 193 (+915.79%)
Mutual labels:  headless, api-first
nextjs-woocommerce-restapi
A React WooCommerce Project Example With REST API
Stars: ✭ 168 (+784.21%)
Mutual labels:  headless, decoupled
vaahcms
VaahCMS is a laravel based open-source web application development platform shipped with a headless content management system (CMS).
Stars: ✭ 56 (+194.74%)
Mutual labels:  headless, headless-cms
startup-starter-kit
The Structured Content Startup Starter Kit
Stars: ✭ 42 (+121.05%)
Mutual labels:  headless, headless-cms
Unite Cms
Really flexible headless CMS, built on top of Symfony and GraphQL.
Stars: ✭ 242 (+1173.68%)
Mutual labels:  headless, headless-cms
awesome-medusajs
A curated list of awesome resources related to MedusaJS 😎
Stars: ✭ 113 (+494.74%)
Mutual labels:  headless, headless-cms
kontent-boilerplate-express-apollo
Kontent Boilerplate for development of Express application using Apollo server and GraphQL.
Stars: ✭ 21 (+10.53%)
Mutual labels:  headless, headless-cms
statiq-starter-kontent-lumen
Lumen is a minimal, lightweight, and mobile-first starter for creating blogs using Statiq and Kontent by Kentico.
Stars: ✭ 22 (+15.79%)
Mutual labels:  headless, headless-cms
Sourcebit
Sourcebit helps developers build data-driven JAMstack sites by pulling data from any third-party resource
Stars: ✭ 252 (+1226.32%)
Mutual labels:  headless, headless-cms
storybook-addon-headless
A Storybook addon to preview content from a headless CMS in components
Stars: ✭ 23 (+21.05%)
Mutual labels:  headless, headless-cms
laravel-storyblok
Make Laravel and Storyblok work together beautifully.
Stars: ✭ 45 (+136.84%)
Mutual labels:  headless, headless-cms
server-next
😎 The next generation of RESTful API service and more for Mix Space, powered by @nestjs.
Stars: ✭ 43 (+126.32%)
Mutual labels:  cms-framework, restful-api
nuxt-ghost
Easy Ghost content API integration with Nuxt.js.
Stars: ✭ 27 (+42.11%)
Mutual labels:  headless, headless-cms
Headless Framework
[Preview/Alpha] WordPress Headless Framework
Stars: ✭ 182 (+857.89%)
Mutual labels:  headless, headless-cms
Storyblok
You found an issue with one of our products? - submit it here as an issue!
Stars: ✭ 206 (+984.21%)
Mutual labels:  headless, headless-cms

TriTan CMS

TriTan is a developer centric, lightweight content management system (CMS) and content management framework (CMF). It is easy to install, easy to manage, and easy to extend. The majority of TriTan's codebase is derived from WordPress, however, TriTan is not a fork of WordPress. It also should not be seen as a replacement for WordPress, Drupal, Joomla or any of the top used CMS's out there.

The main purpose of TriTan is to give developer's an option that is geared toward how they think, how they code, and how they build websites. Although you can use TriTan for your traditional CMS needs, you can also use it to build API centric applications.

TriTan is pretty stable at the moment, but it is currently in beta and should no be used in production until release 1.0.

Screenshot

TriTan CMS Screenshot

Notable Features

  • Easier installation and deployment
  • Schemaless database
  • You can version control your entire site
  • Easier to migrate from one server to another
  • API first (read-only)
  • Go headless or nearly-headless
  • Caching (JSON by default when on)
  • Multisite (needs testing)

Requirements

  • PHP 7.1+
    • gd graphics support
    • zip extention support
    • APC, XCache or Memcache(d) (optional)
  • Apache or Nginx

Installation

  • Install composer if not already installed
  • Download the latest release
  • Extract the zip to the root or a subdirectory
  • Copy config.sample.php to config.php
  • Open config.php and edit the following constants and save the file: TTCMS_MAINSITE & TTCMS_MAINSITE_PATH. If you install on a dev server and then move it to a new server with a different domain, you will need to edit these for the new server.
  • Run composer to install needed libraries: composer install
  • Open your browser to http://replace_url/login/ and login with the login credentials below:
    • username: TriTan
    • password: TriTanCMS
  • Visit http://replace_url/admin/options-general/, and change the API Key to something unique.
  • Create a cronjob on the server: http://replace_url/cronjob/. It should run every minute.

Security

TriTan uses a schemaless database library and stores those files as well as some other important files on the server. Whether you are on Apache/Nginx, you must make sure to secure the following directories so that files in those directories are not downloadable:

  • private/cookies/*
  • private/db/*
  • private/sites/{site_id}/files/cache/*

Here is an example of what should go inside of the .htaccess file to secure the above directories. Make sure to change the key to something unique and secure.

# BEGIN Privatization
# This .htaccess file ensures that other people cannot download your files.

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{QUERY_STRING} !key=replace_me
RewriteRule (.*) - [F]
</IfModule>

# END Privatization

Resources

  • Learn - TriTan documentaion.
  • API Doc - Documentation of classes and functions.
  • Rest API - REST API documentation.

Libraries

As mentioned previously, TriTan CMS is also a content management framework. You can use TriTan to build websites, API centric applications or both. Via composer, the following libraries become available to you to use.

Library Description
Monolog Cascade Monolog Cascade is a Monolog extension that allows you to set up and configure multiple loggers and handlers from a single config file.
Date This date library extends Carbon with multi-language support. Methods such as format, diffForHumans, parse, createFromFormat and the new timespan, will now be translated based on your locale.
Validation The most awesome validation engine ever created for PHP.
Zebra Pagination A generic, Twitter Bootstrap compatible, pagination library that automatically generates navigation links.
Fenom Lightweight and fast template engine for PHP.
Foil PHP template engine for native PHP templates.
Form Builds form HTML with a fluent-ish, hopefully intuitive syntax.
Mobile Detect Mobile_Detect is a lightweight PHP class for detecting mobile devices (including tablets). It uses the User-Agent string combined with specific HTTP headers to detect the mobile environment.
Graphql This is a PHP implementation of the GraphQL specification based on the reference implementation in JavaScript.
Promise A lightweight implementation of CommonJS Promises/A for PHP.
Hoa\Ruler This library allows to manipulate a rule engine. Rules can be written by using a dedicated language, very close to SQL. Therefore, they can be written by a user and saved in a database.
Guzzle Guzzle is a PHP HTTP client that makes it easy to send HTTP requests and trivial to integrate with web services.
Image Optimizer This library is handy and very easy to use optimizer for image files. It uses optipng, pngquant, jpegoptim and few more libraries, so before use it you should install proper libraries on your server.

Theming

There is currently no theme repository due to the nature of the project. However, you can download the Vapor theme. Use this theme as an example to build your own theme.

The Liten Framework was used in the build of TriTan CMS. So, if you are interested in adding a head to your TriTan install, you will need to learn about routing and middlewares.

Plugins

Check out the repository for available TriTan CMS plugins.

Todo

  • Finish dashboard
  • Edit user functionality on multisite users screen
  • Multisite testing (wildcard subdomains only)
  • Unit testing
  • Finish documentation (action and hook filters, etc.)

Contributing

You are welcomed to contribute by tackling anything from the Todo list, sending pull requests, bug reports, etc.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].