npm package: @ngodn/apostrophe
Description: The Apostrophe Content Management System.
Author: Esri Indonesia
Latest version: 2.94.7

# [<img src="./ApostropheCMS_logo.png" height="140" title="ApostropheCMS" />](http://apostrophecms.org/)

ApostropheCMS is a content management system (CMS) for Node.js. It supports in-context editing, schema-driven content types, flexible widgets and a great deal more. This module contains everything necessary to build a website with ApostropheCMS.

Please see the [ApostropheCMS documentation](http://apostrophecms.org/docs) for detailed information about building sites with ApostropheCMS.

[![TravisCI Status](https://travis-ci.org/apostrophecms/apostrophe.svg?branch=master)](https://travis-ci.org/apostrophecms/apostrophe)
[<img src="./badges/npm-audit-badge.png" title="npm audit" />](https://docs.npmjs.com/cli/audit)
[![Chat on Discord](https://img.shields.io/discord/517772094482677790.svg)](http://chat.apostrophecms.org)

## Getting Started

The [ApostropheCMS documentation](https://docs.apostrophecms.org/apostrophe/tutorials/getting-started) will walk you through some simple steps to get your [local environment set up](https://docs.apostrophecms.org/apostrophe/tutorials/getting-started/setting-up-your-environment) with the technology stack that runs ApostropheCMS (Node.js, MongoDB, ImageMagick) along with installing ApostropheCMS itself.

Then [create a new project](https://docs.apostrophecms.org/apostrophe/tutorials/getting-started/creating-your-first-project) on your computer and work on building your beautiful website.

The ApostropheCMS documentation will walk you through [editing page templates](https://docs.apostrophecms.org/apostrophe/tutorials/getting-started/editing-page-templates), [global content](https://docs.apostrophecms.org/apostrophe/tutorials/getting-started/global), [creating custom widgets](https://docs.apostrophecms.org/apostrophe/tutorials/getting-started/custom-widgets) and [navigation](https://docs.apostrophecms.org/apostrophe/tutorials/getting-started/building-navigation), along with [configuring reusable "pieces"](https://docs.apostrophecms.org/apostrophe/tutorials/getting-started/reusable-content-with-pieces) and [global settings](https://docs.apostrophecms.org/apostrophe/tutorials/getting-started/settings). Plus, a whole lot more!

## Taking it Further

Our documentation also covers advanced topics such as [managing permissions](https://docs.apostrophecms.org/apostrophe/tutorials/intermediate/permissions), [working with ApostropheCMS data](https://docs.apostrophecms.org/apostrophe/tutorials/intermediate/model-layer), [building forms](https://docs.apostrophecms.org/apostrophe/tutorials/intermediate/forms), and [hosting an ApostropheCMS site in production](https://docs.apostrophecms.org/apostrophe/tutorials/intermediate/deployment).

Moreover, there's tons of great info in the ["How To"](https://docs.apostrophecms.org/apostrophe/tutorials/howtos) section of the docs, and it's always growing!

## Extending the Core with Modules

ApostropheCMS is Node.js all the way through, which means it can be [extended](http://apostrophecms.org/extend) in all sorts of interesting ways. Here's a list of some of our favorite modules:

* [apostrophe-headless](https://github.com/apostrophecms/apostrophe-headless) - Add REST APIs and power your React / Vue / Native / etc. apps with a headless CMS.
* [apostrophe-blog](https://github.com/apostrophecms/apostrophe-blog) - Everything you need to put a blog on your site.
* [apostrophe-events](https://github.com/apostrophecms/apostrophe-events) - Manage upcoming events.
* [apostrophe-workflow](https://github.com/apostrophecms/apostrophe-workflow) - Add powerful localization capabilities to your project.
* [apostrophe-passport](https://github.com/apostrophecms/apostrophe-passport) - Authenticate via Twitter, Facebook, Github and more.
* [apostrophe-saml](https://github.com/apostrophecms/apostrophe-saml) - Authenticate via Shibboleth, as well as corporate SAML environments like Salesforce.
* [apostrophe-places](https://github.com/apostrophecms/apostrophe-places) - Manage geotagged content and display it on a map.
* [apostrophe-redirects](https://github.com/apostrophecms/apostrophe-redirects) - An easy redirects module.

## Additional Resources
We've got some great [open-source tools and how-to articles](https://docs.apostrophecms.org/apostrophe/tutorials/intermediate/deployment) that can help you out deploying, managing and maintaining ApostropheCMS sites.

## Community

**Report bugs and submit pull requests** via [github](https://github.com/apostrophecms/apostrophe/issues).

**Ask how-to questions** via [StackOverflow](https://stackoverflow.com/questions/tagged/apostrophe-cms). Be sure to tag them `apostrophe-cms`.

**Stay up to date with announcements** on our [forum](https://forum.apostrophecms.org).

**Chat with the community** on our [Discord server](http://chat.apostrophecms.org).

## License
ApostropheCMS is released under the [MIT License](https://github.com/apostrophecms/apostrophe/blob/master/LICENSE.md).