You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on May 30, 2019. It is now read-only.
Samplestack is a comprehensive sample application that demonstrates how to build an effective MarkLogic application. Based on the idea of a "Question and Answer" website, Samplestack shows you how to integrate MarkLogic into a three-tier application architecture (browser, application server, and database).
6
+
Samplestack is a comprehensive sample application that demonstrates how to build an effective MarkLogic application. Based on the idea of a "Question and Answer" website, Samplestack shows you how to integrate MarkLogic into a three-tier application architecture (browser, application server, and database).
6
7
7
8
This release features a middle tier for the Java Enterprise Developer, implemented using Java, Spring, and Gradle.
8
9
9
10
The project includes the following major components:
10
-
* MVC browser application implemented in [Angular.js](https://angularjs.org)
11
-
* Middle appserver tier implemented in Java/[Spring](http://projects.spring.io/spring-framework/)
12
-
*[MarkLogic](http://www.marklogic.com/) for the database tier
13
-
*[Gradle](http://www.gradle.org/)framework to drive build and configuration of the appserver and database tiers
14
-
* Unit and end-to-end tests
11
+
12
+
- MVC browser application implemented in [Angular.js](https://angularjs.org)
13
+
- Middle appserver tier implemented in Java/[Spring](http://projects.spring.io/spring-framework/)
14
+
-[MarkLogic](http://www.marklogic.com/)for the database tier
15
+
-[Gradle](http://www.gradle.org/) framework to drive build and configuration of the appserver and database tiers* Unit and end-to-end tests
15
16
16
17
A [Node.js](http://nodejs.org/) version of Samplestack that uses gulp automation will be coming soon.
@@ -37,70 +40,68 @@ The current version of Samplestack runs on MarLogic 8.0 Early Acceess Release 3
37
40
38
41
2)**Middle Tier - Application Server**
39
42
40
-
You can choose to run/examine one of two middle tier application servers. Each of these will use the same MarkLogic backend configuration and the same MVC browser application.
43
+
You can choose to run/examine one of two middle tier application servers. Each of these will use the same MarkLogic backend configuration and the same MVC browser application.
41
44
42
-
*[Set up the Java middle tier and database tiers with gradle](appserver/java-spring/README.md) (Available now in EA-3)
43
-
*[Set up the Node middle and database tiers with gulp](appserver/node-express/README.md) (Available in future release, under development)
45
+
-[Set up the Java middle tier and database tiers with gradle](appserver/java-spring/README.md) (Available now in EA-3)
46
+
-[Set up the Node middle and database tiers with gulp](appserver/node-express/README.md) (Available in future release, under development)
44
47
45
48
3)**Browser Application**
46
49
47
50
The browser application is delivered in two forms:
48
51
49
-
* The Java middle tier hosts a pre-built version; or
50
-
*[Set up the Angular.js/Gulp development environment](browser/README.md) (Available now in EA-3)
52
+
- The Java middle tier hosts a pre-built version; or
53
+
-[Set up the Angular.js/Gulp development environment](browser/README.md) (Available now in EA-3)
54
+
55
+
Additional Information
56
+
----------------------
51
57
52
-
## Additional Information
53
-
For more information, see the following:
54
-
* READMEs for the [database](database/README.md), [Java appserver](appserver/java-spring/README.md), and [Angular.js browser](browser/README.md) tiers.
* MarkLogic [Developer Community](http://developer.marklogic.com/) site with tutorials, blogs, and more.
58
+
For more information, see the following:* READMEs for the [database](database/README.md), [Java appserver](appserver/java-spring/README.md), and [Angular.js browser](browser/README.md) tiers.*[Samplestack wiki](https://github.com/marklogic/marklogic-samplestack/wiki).*[MarkLogic product documentation](http://docs.marklogic.com).* MarkLogic [Developer Community](http://developer.marklogic.com/) site with tutorials, blogs, and more.
58
59
59
-
## Reference Architecture Introduction
60
+
Reference Architecture Introduction
61
+
-----------------------------------
60
62
61
63
Samplestack is an instantiation of MarkLogic’s Reference Architecture. It demonstrates how to structure three-tiered MarkLogic applications for production:
62
64
63
-
*MarkLogic plays the role of database in Samplestack’s three-tier architecture. Samplestack shows how to configure MarkLogic to ingest, store, and manipulate documents. With the project comes tooling and configuration files to get MarkLogic primed to expose robust search and data services.
65
+
-MarkLogic plays the role of database in Samplestack’s three-tier architecture. Samplestack shows how to configure MarkLogic to ingest, store, and manipulate documents. With the project comes tooling and configuration files to get MarkLogic primed to expose robust search and data services.
64
66
65
-
*The middle tier brokers the data between the database and the browser-based web application, coordinates integration with additional services (LDAP), locally optimizes applicationdatabase communications, and enforces business rules. There will be two versions of Samplestack which you can explore based on your preference. One version features a Java middle tier with a Spring Framework and Gradle automation. There will also be a JavaScriptNode.js implementation with gulp automation.
67
+
-The middle tier brokers the data between the database and the browser-based web application, coordinates integration with additional services (LDAP), locally optimizes applicationdatabase communications, and enforces business rules. There will be two versions of Samplestack which you can explore based on your preference. One version features a Java middle tier with a Spring Framework and Gradle automation. There will also be a JavaScriptNode.js implementation with gulp automation.
66
68
67
-
*The web-based front-end is a Model-View-Controller browser application which drives workflow using the business services exposed by the middle-tier and presents the user interface. It is implemented as an Angular.js application.
69
+
-The web-based front-end is a Model-View-Controller browser application which drives workflow using the business services exposed by the middle-tier and presents the user interface. It is implemented as an Angular.js application.
68
70
69
-
## Application Overview
71
+
Application Overview
72
+
--------------------
70
73
71
-
The sample application itself is centered around the idea of a Question and Answer site. It is a searchable, transactional, content-rich web application. Users of the application participate in the crowd-sourced knowledge community by asking questions, submitting answers, commenting, and voting. Search is a rich experience with interactive facets and parameters which enable users to narrow in on the answers they seek. The initial seed dataset is an extract of content from the popular [Stack Overflow](http://stackoverflow.com) website. Their archives are made available under [CC BY-SA](http://creativecommons.org/licenses/by-sa/3.0/) and comprise the seed data for Samplestack.
74
+
The sample application itself is centered around the idea of a Question and Answer site. It is a searchable, transactional, content-rich web application. Users of the application participate in the crowd-sourced knowledge community by asking questions, submitting answers, commenting, and voting. Search is a rich experience with interactive facets and parameters which enable users to narrow in on the answers they seek. The initial seed dataset is an extract of content from the popular [Stack Overflow](http://stackoverflow.com) website. Their archives are made available under [CC BY-SA](http://creativecommons.org/licenses/by-sa/3.0/) and comprise the seed data for Samplestack.
72
75
73
76
Each of the features in Samplestack demonstrates an important concept for developers building on MarkLogic:
74
77
75
-
Samplestack Feature | MarkLogic Concept
76
-
------------ | -------------
77
-
Full-text Search | Indexes, query styles
78
-
User records and documents | Data Model for JSON and POJOs
79
-
Users and Roles (log in, log out) | Security (authentication and authorization)
80
-
Restricted Content | Role-based Permissions
81
-
Facets | Search constraints, analytics
82
-
Ask, Answer, Comment | Document updates
83
-
Voting | Updates impact search relevance
84
-
Accepted Answers Reputation | Transactional model, data integrity
Licensed under the Apache License, Version 2.0 (the "License");
97
-
you may not use this file except in compliance with the License.
98
-
You may obtain a copy of the License at
101
+
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
99
102
100
-
http://www.apache.org/licenses/LICENSE-2.0
103
+
```
104
+
http://www.apache.org/licenses/LICENSE-2.0
105
+
```
101
106
102
-
Unless required by applicable law or agreed to in writing, software
103
-
distributed under the License is distributed on an "AS IS" BASIS,
104
-
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
105
-
See the License for the specific language governing permissions and
106
-
limitations under the License.
107
+
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
0 commit comments