forked from synrc/synrc.com
-
Notifications
You must be signed in to change notification settings - Fork 1
/
apps.htm
242 lines (224 loc) · 12.3 KB
/
apps.htm
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
<!DOCTYPE html>
<html>
<head>
<link rel=stylesheet type="text/css" href="//synrc.com/synrc.css?v=3">
<meta name="Author" content="5HT">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta property="og:image" content="images/s_64.png"/>
<meta http-equiv="X-UA-Compatible" content="IE=IE10,chrome=1" />
<title>Application Stack
</title>
</head>
<body >
<!--HEVEA command line is: hevea apps.tex -o apps.htm -->
<!--CUT STYLE article--><!--HTMLHEAD-->
<div class="nonselectedwrapper white" style="padding: 10px 0px 10px 0px;margin: 0px 0px 10px 0px;">
<a href="//synrc.com/">
<img style="float:left; margin-left: 55px; margin-top: 5px; margin-bottom:-5px;" src="//synrc.com/images/synrc.png" border="0"></a>
<form action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_top" style="display:none;margin-top:39px;">
<input type="hidden" name="cmd" value="_s-xclick">
<input type="hidden" name="hosted_button_id" value="P8WQHAQK5HWWW">
<input type="image" src="https://www.paypalobjects.com/en_US/i/btn/btn_donate_SM.gif" border="0" name="submit" style="width:74px;margin-top:0px;">
</form>
<div align=right style="float:right;width:700px;height: auto; margin: 20px 50px 0px 0px;">
<script type="text/javascript">
var args = (window.location).toString().split('/');
var page_name = args[args.length-1];
var menu = {'//synrc.com/index.htm': 'Home',
'//synrc.com/research.htm': 'Showcase',
'//synrc.com/apps/': 'Apps',
'//synrc.com/feedback.htm': 'Contacts' };
Object.keys(menu).forEach(function (key) {
if (page_name == key) { document.write('<div class="menu" style="font-weight: bold;">'+menu[key]+'</div>'); }
else { document.write('<a class="menu" href="'+key+'">'+menu[key]+'</a>'); }
});
</script>
</div>
</div>
<hr size="1">
<!--ENDHTML-->
<!--CUT DEF section 1 --><div class="selectedwrapper">
<div class="wrapper"><div class="block">
<!--TOC section id="sec1" BPE-->
<h2 id="sec1" class="section"><a href="http://synrc.com/apps/bpe">BPE</a></h2><!--SEC END -->
<!--TOC paragraph id="sec2" -->
<!--SEC END --><p>
The engine defines business flows according to industry standards.
Each flow is accompanied by all relevant documents, such as
approval forms, sing-off sheets, legal agreements.</p><p><a href="https://spawnproc.github.io/forms/">spawnproc.github.io/bpe</a> ver 1.9
</p></div><div class="block">
<!--TOC section id="sec3" N2O-->
<h2 id="sec3" class="section"><a href="http://synrc.com/apps/n2o">N2O</a></h2><!--SEC END -->
<!--TOC paragraph id="sec4" -->
<!--SEC END --><p>
Most Powerful Erlang WebSocket Application Server. Server-render and SPA modes.
Extensible WebSocket protocol for JSON, BERT, RAW binary data transfer.
Includes: REST, JavaScript Compiler, Pub/Sub, Sessions, Controls, Templates, etc.</p><p><a href="https://synrc.github.io/n2o">synrc.github.io/n2o</a> ver 2.9
</p></div><div class="block">
<!--TOC section id="sec5" MAD-->
<h2 id="sec5" class="section"><a href="http://synrc.com/apps/mad">MAD</a></h2><!--SEC END -->
<!--TOC paragraph id="sec6" -->
<!--SEC END --><p>
Mad is Erlang Dependency Manager that aims to be small and fast rebar
replacement which supports rebar.config files, YRL and DTL compilation.</p><p><a href="https://synrc.github.io/mad">synrc.github.io/mad</a> ver 1.9
</p></div><div class="block">
<!--TOC section id="sec7" UPL-->
<h2 id="sec7" class="section"><a href="http://synrc.com/apps/upl">UPL</a></h2><!--SEC END -->
<!--TOC paragraph id="sec8" -->
<!--SEC END --><p>
The foundation of Spawnproc is strictly typed banking specific
programming language, which has loans/deposits, cashbacks,
grace periods as its primitives, all defined in clean manner.</p><p><a href="https://spawnproc.github.io/upl/">spawnproc.github.io/upl</a>
</p></div><div class="block">
<!--TOC section id="sec9" FORMS-->
<h2 id="sec9" class="section"><a href="http://synrc.com/apps/forms">FORMS</a></h2><!--SEC END -->
<!--TOC paragraph id="sec10" -->
<!--SEC END --><p>
We automatically generates the visual forms for data assessment
based on ontological model. These forms are fulfilled with native
data for KVS storage.</p><p><a href="https://spawnproc.github.io/forms/">spawnproc.github.io/forms</a> ver 0.7
</p></div><div class="block">
<!--TOC section id="sec11" KVS-->
<h2 id="sec11" class="section">KVS</h2><!--SEC END -->
<!--TOC paragraph id="sec12" -->
<!--SEC END --><p>
KVS is Key-Value Storage Data Framework that provide high-level API for handling
social data like Users, Feeds, Comments, etc. It is designed with sequential consistency in mind.</p><p><a href="https://synrc.github.io/kvs">synrc.github.io/kvs</a> ver 2.9
</p></div><div class="block">
<!--TOC section id="sec13" SHEN-->
<h2 id="sec13" class="section">SHEN</h2><!--SEC END -->
<!--TOC paragraph id="sec14" -->
<!--SEC END --><p>
JavaScript parse transform allows you to write JavaScript in Erlang and
compile it with erlc. This compiler preserves program semantics closure to closure.</p><p><a href="https://synrc.github.io/shen">synrc.github.io/shen</a> ver 1.5
</p></div><div class="block">
<!--TOC section id="sec15" REST-->
<h2 id="sec15" class="section">REST</h2><!--SEC END -->
<!--TOC paragraph id="sec16" -->
<!--SEC END --><p>
REST toolkit that allows you to deal with typed JSON as Erlang records.
It will automatically generates JSON/Records converters for well knwon records.
It is released as standalone micro-REST app that could be used with Cowboy.</p><p><a href="https://synrc.github.io/rest">synrc.github.io/rest</a> ver 2.9
</p></div><div class="block">
<!--TOC section id="sec17" ACTIVE-->
<h2 id="sec17" class="section">ACTIVE</h2><!--SEC END -->
<!--TOC paragraph id="sec18" -->
<!--SEC END --><p>
Active is sync replacement that uses native FileSystem OS async
listeners to compile and reload Erlang files, DTL templates and other files.
It acts as FS subscriber under supervision and uses MAD under the hood.</p><p><a href="https://synrc.github.io/active">synrc.github.io/active</a> ver 1.9
</p></div><div class="block">
<!--TOC section id="sec19" FS-->
<h2 id="sec19" class="section">FS</h2><!--SEC END -->
<!--TOC paragraph id="sec20" -->
<!--SEC END --><p>
File System listener provides native async way of watching on
file system changes unlike polling in Nitrogen’s sync. It will save
your CPU in production.</p><p><a href="https://synrc.github.io/fs">synrc.github.io/fs</a> ver 1.9
</p></div><div class="block">
<!--TOC section id="sec21" SH-->
<h2 id="sec21" class="section">SH</h2><!--SEC END -->
<!--TOC paragraph id="sec22" -->
<!--SEC END --><p>
Erlang Shell Executor will give you safe access to calling system shell
from erlang and also prevent your erlang processes from leaking on port closing.</p><p><a href="https://synrc.github.io/sh">synrc.github.io/sh</a> ver 1.9
</p></div><div class="block">
<!--TOC section id="sec23" AVZ-->
<h2 id="sec23" class="section">AVZ</h2><!--SEC END -->
<!--TOC paragraph id="sec24" -->
<!--SEC END --><p>
AVZ provides simple and sane API for JavaScript based and HTTP-redirect
based auth methods like Google, Facebook, Microsoft, Twitter and Github.
It is very tiny, clean and useful for your land pages.</p><p><a href="https://synrc.github.io/avz">synrc.github.io/avz</a> ver 2.8
</p></div><div class="block">
<!--TOC section id="sec25" OTP.MK-->
<h2 id="sec25" class="section">OTP.MK</h2><!--SEC END -->
<!--TOC paragraph id="sec26" -->
<!--SEC END --><p>Tiny Makefile-based Erlang/OTP and reltool/relx/rebar/mix/mad compatible
build solutions. Today otp.mk costs us 52 LOC and orderapps.erl 15 LOC
and we want to keep that size. Consider this as top level Makefile-base
API for Erlang tools.</p><p><a href="https://synrc.github.io/otp.mk">synrc.github.io/otp.mk</a> ver 1.5
</p></div><div class="block">
<!--TOC section id="sec27" FEEDS-->
<h2 id="sec27" class="section">FEEDS</h2><!--SEC END -->
<!--TOC paragraph id="sec28" -->
<!--SEC END --><p>
Feed Server is node of user workers region. It handles all MQ
requests for write operations for user’s data and other APIs.
Also it acts as distributed cache for user feeds and other list chains.</p><p><a href="https://synrc.github.io/feeds/">synrc.github.io/feeds</a>
</p></div><div class="block">
<!--TOC section id="sec29" MQS-->
<h2 id="sec29" class="section">MQS</h2><!--SEC END -->
<!--TOC paragraph id="sec30" -->
<!--SEC END --><p>
MQS is RabbitMQ client library that handles conections, channels,
subscriptions has its own routing interface that you can use for building
sophisticated subscriptions topology. It also supports RPC over MQ.</p><p><a href="https://synrc.github.io/mqs/">synrc.github.io/mqs</a> ver 1.9</p></div></div>
</div><div class="nonselectedwrapper">
<div class="verywidecol"><p><br>
<br>
<br>
</p>
<!--TOC section id="sec31" Application Depot-->
<h2 id="sec31" class="section">Application Depot</h2><!--SEC END --><p>To bundle binary BEAM or LING along with synrc spplications MAD
can use global repository statically avaliable at Github Pages:</p><p>
<br><br>
<code style="font-weight:lighter;">
$ curl -X GET <a href="//synrc.com/apps/index.txt">http://synrc.com/apps/index.txt</a>
[
{bin,[<a href="//synrc.com/apps/beam/bin/beam.txt">beam</a>], ["7.0.3"]},
{lib,[<a href="//synrc.com/apps/kernel/ebin/kernel.txt">kernel</a>], ["4.0"]},
{lib,[<a href="//synrc.com/apps/stdlib/ebin/stdlib.txt">stdlib</a>], ["2.5"]},
{lib,[<a href="//synrc.com/apps/mnesia/ebin/mnesia.txt">mnesia</a>], ["4.13"]},
{lib,[<a href="//synrc.com/apps/syntax_tools/ebin/syntax_tools.txt">syntax_tools</a>], ["1.7"]},
{lib,[<a href="//synrc.com/apps/compiler/ebin/compiler.txt">compiler</a>], ["6.0"]},
{lib,[<a href="//synrc.com/apps/crypto/ebin/crypto.txt">crypto</a>], ["3.6"]},
{lib,[<a href="//synrc.com/apps/cowboy/ebin/cowboy.txt">cowboy</a>], ["1.0.1"]},
{lib,[<a href="//synrc.com/apps/cowlib/ebin/cowlib.txt">cowlib</a>], ["1.0.0"]},
{lib,[<a href="//synrc.com/apps/ranch/ebin/ranch.txt">ranch</a>], ["1.0.0"]},
{lib,[<a href="//synrc.com/apps/erlydtl/ebin/erlydtl.txt">erlydtl</a>], ["0.8.0"]},
{lib,[<a href="//synrc.com/apps/gproc/ebin/gproc.txt">gproc</a>], ["0.3"]},
{lib,[<a href="//synrc.com/apps/jsone/ebin/jsone.txt">jsone</a>], ["v0.3.3"]},
{lib,[<a href="//synrc.com/apps/kvs/ebin/kvs.txt">kvs</a>], ["2.9"]},
{lib,[<a href="//synrc.com/apps/mad/ebin/mad.txt">mad</a>], ["2.9"]},
{lib,[<a href="//synrc.com/apps/n2o/ebin/n2o.txt">n2o</a>], ["2.9"]},
{lib,[<a href="//synrc.com/apps/rest/ebin/rest.txt">rest</a>], ["2.9"]},
{lib,[<a href="//synrc.com/apps/active/ebin/active.txt">active</a>], ["1.9"]},
{lib,[<a href="//synrc.com/apps/fs/ebin/fs.txt">fs</a>], ["1.9"]},
{lib,[<a href="//synrc.com/apps/sh/ebin/sh.txt">sh</a>], ["1.9"]},
{lib,[<a href="//synrc.com/apps/nitro/ebin/nitro.txt">nitro</a>], ["0.9"]}
].
</code>
</p></div>
</div><div class="clear"> </div><div class="nonselectedwrapper">
<div class="verywidecol"><p><a href="http://synrc.com/feedback.htm">Contact Us</a> </p></div>
</div><!--CUT END -->
<!--HTMLFOOT-->
<div class="nonselectedwrapper">
<div class="verywidecol">
<div style="width:100%;height:300px;float:left;font-size:16pt;" align=center>
<hr size=1>
<br><br><br>
<a href="//synrc.com/news/index.htm">Events</a> |
<a href="//synrc.com/privacy.htm">Privacy Policy</a> |
<a href="//synrc.com/feedback.htm">Feedback</a> |
<a href="//synrc.com/brandbook.htm">Brandbook</a><br>
Copyright © 2005–2018 <a href="//synrc.com/index.htm"> Synrc Research Center s.r.o.</a>
</div>
</div>
</div>
<div class="clear"></div>
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-29227518-1']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'https://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
<script type="text/javascript" src="//synrc.com/hi.js"></script>
<!--ENDHTML-->
</body>
</html>