GithubHelp home page GithubHelp logo

ykankaya / mesh Goto Github PK

View Code? Open in Web Editor NEW

This project forked from gentics/mesh

0.0 1.0 0.0 143.47 MB

Gentics Mesh - The open source headless CMS for developers

Home Page: https://getmesh.io

License: Apache License 2.0

Java 69.89% JavaScript 28.84% Erlang 0.05% CSS 1.05% HTML 0.14% Shell 0.02%

mesh's Introduction

License Stack Overflow Join the chat at https://gitter.im/gentics/mesh

Gentics Mesh

Gentics Mesh is an Open Source API-first CMS for developers. All contents can be stored/updated and retrieved using the REST API.

Features

  • Document level permissions
  • Versioned content
  • Webroot API for easy integration with modern routing frameworks
  • Search API powered by elasticsearch
  • GraphQL API
  • Image API
  • Tagging API
  • Cluster support
  • Graph database at its core
  • Docker support

alt tag

Getting Started

You need to have at least JRE 8 of Java installed. See the Getting Started page for more information.

You can either download the all-in-one jar or fire up one of the Docker images.

Documentation

UI

Gentics Mesh automatically ships with a UI which allows you to browse your contents.

The UI can be accessed via http://localhost:8080/mesh-ui

Typical usage

You can retrieve stored contents via the REST or GraphQL API.

First things first: you need to authenticate, otherwise you will not be able to access your data.

You can post your credentials via JSON, use basic auth or send a JWT header - the choice is yours. If you open that URL in a browser, you will most likely authenticate using basic auth.

REST API

Now that you are authenticated, you can load content via the REST API.

Load a list of projects:

Or a list of contents:

GraphQL

If you want to retrieve deeply nested data you may use the GraphiQL browser:

Or try our live demo.

Example JSON

Typical Request/Response:

GET /api/v1/demo/nodes/1f91269a4e6042c391269a4e6052c3e4?lang=en,de HTTP/1.1
Host: localhost:8080
Connection: keep-alive
Accept: application/json, text/plain, */*


HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Cache-Control: no-cache
Content-Encoding: gzip
Transfer-Encoding: chunked

{
  "uuid" : "c7f284b8db9740fab284b8db97b0fa72",
  "creator" : {
    "uuid" : "344278e8bec74f6a8278e8bec76f6a87"
  },
  "created" : "2017-03-27T11:22:27Z",
  "editor" : {
    "uuid" : "344278e8bec74f6a8278e8bec76f6a87"
  },
  "edited" : "2017-03-27T11:22:35Z",
  "language" : "en",
  "availableLanguages" : [ "en" ],
  "parentNode" : {
    "projectName" : "demo",
    "uuid" : "3d77fe558cf743d3b7fe558cf783d343",
    "displayName" : "Vehicle Images",
    "schema" : {
      "name" : "folder",
      "uuid" : "35de83ec7df048d59e83ec7df028d50f"
    }
  },
  "tags" : [ ],
  "childrenInfo" : { },
  "schema" : {
    "name" : "vehicleImage",
    "uuid" : "4bae3a3ec02043abae3a3ec020d3ab42",
    "version" : 1
  },
  "displayField" : "name",
  "fields" : {
    "name" : "Tesla Roadster Image",
    "image" : {
      "fileName" : "tesla-roadster.jpg",
      "width" : 1024,
      "height" : 670,
      "sha512sum" : "2a56c85df60ab753f77fe75a63910b7e3f9ae89cd90e1906ad6210ee408ce07d5d95f269a21217ee045af8ac7d6c934324e49908d463971e31498b994b757d03",
      "fileSize" : 607113,
      "mimeType" : "image/jpeg",
      "dominantColor" : "#90786b"
    }
  },
  "breadcrumb" : [ {
    "projectName" : "demo",
    "uuid" : "3d77fe558cf743d3b7fe558cf783d343",
    "displayName" : "Vehicle Images",
    "schema" : {
      "name" : "folder",
      "uuid" : "35de83ec7df048d59e83ec7df028d50f"
    }
  } ],
  "version" : {
    "uuid" : "54d70c2d951d4188970c2d951d218875",
    "number" : "1.0"
  },
  "container" : false,
  "permissions" : {
    "create" : true,
    "read" : true,
    "update" : true,
    "delete" : true,
    "publish" : true,
    "readPublished" : true
  }
}

IDE Setup - Eclipse

Make sure that you use at least Eclipse Neon.

Install the following maven m2e workshop plugins:

  • m2e-apt-plugin

Note: Make sure that your Eclipse Maven APT settings are set to "Automatically configure JDT APT". If you don't find this option, you most likely need to install the M2E APT Plugin for eclipse.

Import all maven modules in your IDE.

Please note that this project is using Google Dagger for dependency injection. Adding new dependencies or beans may require a fresh build (via Project->Clean) of the mesh-core/mesh-api modules.

mesh's People

Contributors

aschauerhuber avatar bernhardriegler avatar deckdom avatar genticsdev avatar jotschi avatar medv avatar michaelbromley avatar npomaroli avatar philippguertler avatar trecloux avatar yrucrem avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.