Sails.js hook for AdminX
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
api
config
test
.editorconfig
.gitignore
.travis.yml
LICENSE.md
README.md
index.js
package.json
yarn.lock

README.md

sails-hook-adminx

Build Status dependencies Status npm version Join the chat at https://gitter.im/adminxhq/sails-hook-adminx Twitter Follow

Sails hook for AdminX. Manage your sails app data without coding.

What's AdminX?

AdminX is a universal, fast and reliable admin panel.

Try it with the Live Demo

Sample app

We open sourced the demo app we use on the website: Sails Demo Code

Requirements

  • Sails >0.12 or >1.0
  • Waterline: this integrations requires you to use the default Sails ORM

What does sails-hook-adminx do under the bonnet?

  1. Initializes on sails lift as the sails-hook-adminx
  2. Exposes a REST API under /adminx/*
  3. Adds CORS (Cross Origin Resource Sharing) configuration to open access from AdminX-served-pages on your browser to your servers (https://adminx.io)

An AdminX Panel is then able to connect from your browser to your server securely.

Install

# npm install sails-hook-adminx --save
yarn add sails-hook-adminx@^0.1.2 # Sails 1.0
# or
yarn add sails-hook-adminx@^0.0.10 # Sails 0.12

Configure

Create a config/adminx.js file

/**
 * AdminX Configuration
 * (sails.config.adminx)
 *
 * Configure settings for AdminX
 *
 */
module.exports.adminx = {
  
  // Ignores the authentication, for development purposes only
  authEnabled: true,
  
  //Go to AdminX site and configure a new Data Auth Token
  dataAuthToken: 'REPLACE_THIS_TOKEN'
};

Usage

In your models, you can now define an adminx attribute with the adminx configurations you need.

/**
 * Car.js
 *
 * @description :: Motorized vehicle with 4 wheels for individual and family transport
 * @docs        :: http://sailsjs.org/#!documentation/models
 */

module.exports = {

  /* SailsJS schema configuration
   * Mandatory for SailsJS framework */
  attributes: {
    model: { type:'string' },
    brand: { model: 'brand' },
    year: { type: 'integer', min: 2000, max: 2019 },
    dailyRate: { type: 'float', min: 0 },
    availableAt: { type: 'date' },
    fullTank: { type: 'boolean' },
    summary: { type: 'mediumtext' },
    thumbnail: { type: 'string' },
    cover: { type: 'string' },
    extras: { type: 'array' },
    doorConfiguration: {
      type: 'string',
      enum: ['2 Doors', '3 Doors', '4 Doors', '5 Doors', '6 Doors']
    },
    history: { type: 'longtext' },
    metaData: { type: 'json' },
  },

  /* AdminX configuration
   * This configuration is optional
   * Here you can define how AdminX
   * displays and helps you edit your data */
  adminx: {
    name: 'Car',
    attributes: {
      id: { disabled: true },
      thumbnail: { list: true, editor: 'image' },
      brand: { }, // Here for ordering
      model: { list: true },
      summary: { }, // Here for ordering
      cover: { editor: 'image' },
      history: { editor: 'html-simple' },
      updatedAt: { list: true },
    }
  }
};

AdminX Panel

Resources

License

MIT License Copyright © 2016-2017 Albert Peiro, ADMINX LTD.

image_squidhome@2x.png