Spartan

... Is the DB and API layer of the Tilas Publishing Platform.

Spartan is the complete API and Database Layer that the Tilas Publishing Platform is built on. Lantern (the CMS platform) and Titan (The Website Platform) both speak to it via REST web services to provide all the features of the end to end publishing and blogging front-ends.

Spartan can be installed on your own machine (for Development) or local or remote server or VM (for Staging or Production).

But we recommend you deploy it on DigitalOcean via a Dokku image, this way you can run Spartan, Lantern and Titan as Docker containers that support zero-down-time upgrades via GIT code pushes. This is cool, trust us :)


Getting Started: On-Premise Installation

Get Spartan running on your own server by following these steps.

1) Setup Dependencies

The External requirements for Spartan are a MongoDB database and a AWS S3 Bucket (with an API AWS key & secret)

- MongoDB > Setup a MongoDB server, which needs to be accessible to Spartan via mongodb://db-server-name/

- MongoDB > Then create an empty database, which is accessible via mongodb://db-server-name/new-db-name

- AWS S3 > Create a new S3 bucket with a name of your choice

- AWS S3 > Create a AWS API Key and Secret for your account

2) Install Spartan

You need a machine with nodeJS and npm installed

- Create a new folder to house your Spartan installation

- Unpack Spartan code into this directory

3) Install Dependencies

Set up all libraries and modules needed.

- cd into your directory

- Run npm install to install your dependencies

4) Configure Environment

Spartan is powered by environment vars, so configure your various environments

- Add your desired settings to settings files in scripts/development.sh or staging.sh or production.sh

- And then export your environmental variable into your current session like so: . scripts/development.sh

5) Install DB Schema and Collections

Next we have to update your "new-db-name" to support the Spartan design.

- Execute npm run dbsetup

- You should see a success message if it all worked

6) Run Tests

Confirm if what you have done so far works by running the test battery.

- Test can be run via npm test

- All tests should pass before your continue

7) Run Spartan Server

You are now ready to power up the Spartan server.

- Launch the server by running npm start

- Note down the URL:Port your server is running on

8) Start using it...

Spartan is ready!

- Test your installation by visiting http://URL:Port

- Here you can read the API docs, view tests results, etc

9) What's Next?

You can do a few more things...

- Put Spartan http://URL:Port behind a web server and map your domain name to it. e.g. http://your-spartan-domain.com

- You can then setup Titan to view your Blog's frontend

- You can then setup Lantern to start adding content to your Blog


Development README

For more details on Spartan installation and other technical details.

Read development README


API Documentation

Read the latest API documentation and get started.

Read API Docs


Test Results

Below is the latest test results after npm test was last run by you. The start date below will tell you when it was last run.