|
14 | 14 | <meta name="apple-mobile-web-app-status-bar-style" content="black">
|
15 | 15 | <meta name="description" content="A Cloud native multi-package registry.
|
16 | 16 | Enseada is a modern, fast and scalable package registry, designed from the ground up to run in elastic, container-based environments and to be highly available and distributed.
|
17 |
| -It leverages scalability by using natively distributed technologies |
18 |
| -The registry itself is written in Elixir, an Erlang compatible, functional and process-based programming language that is both fast and resource efficient. |
| 17 | + It leverages scalability by using natively distributed technologies |
| 18 | +The registry itself is written in Go, a statically typed and extremely fast programming language very popular in Cloud native applications. |
19 | 19 | CouchDB is used as the primary datastore, containing information about repositories, users and access control.">
|
20 | 20 | <meta property="og:title" content="About Enseada &middot; Enseada">
|
21 | 21 | <meta property="og:url" content="/about/">
|
22 | 22 | <meta property="og:description" content="A Cloud native multi-package registry.
|
23 | 23 | Enseada is a modern, fast and scalable package registry, designed from the ground up to run in elastic, container-based environments and to be highly available and distributed.
|
24 |
| -It leverages scalability by using natively distributed technologies |
25 |
| -The registry itself is written in Elixir, an Erlang compatible, functional and process-based programming language that is both fast and resource efficient. |
| 24 | + It leverages scalability by using natively distributed technologies |
| 25 | +The registry itself is written in Go, a statically typed and extremely fast programming language very popular in Cloud native applications. |
26 | 26 | CouchDB is used as the primary datastore, containing information about repositories, users and access control.">
|
27 | 27 | <meta property="og:site_name" content="Enseada">
|
28 | 28 | <meta property="og:type" content="website">
|
29 | 29 | <meta name="twitter:card" content="summary_large_image">
|
30 | 30 | <meta name="twitter:title" content="About Enseada &middot; Enseada" />
|
31 | 31 | <meta name="twitter:description" content="A Cloud native multi-package registry.
|
32 | 32 | Enseada is a modern, fast and scalable package registry, designed from the ground up to run in elastic, container-based environments and to be highly available and distributed.
|
33 |
| -It leverages scalability by using natively distributed technologies |
34 |
| -The registry itself is written in Elixir, an Erlang compatible, functional and process-based programming language that is both fast and resource efficient. |
| 33 | + It leverages scalability by using natively distributed technologies |
| 34 | +The registry itself is written in Go, a statically typed and extremely fast programming language very popular in Cloud native applications. |
35 | 35 | CouchDB is used as the primary datastore, containing information about repositories, users and access control.">
|
36 | 36 | <meta name="twitter:url" content="/about/" />
|
37 | 37 | <meta property="og:image" content="">
|
38 | 38 | <meta name="twitter:image" content="">
|
39 | 39 | <meta name="author" content="Enseada">
|
40 | 40 |
|
41 |
| - <meta name="generator" content="Hugo 0.59.1" /> |
| 41 | + <meta name="generator" content="Hugo 0.60.1" /> |
42 | 42 |
|
43 | 43 | <title>About Enseada · Enseada</title>
|
44 | 44 |
|
|
387 | 387 | align-self: stretch !important; }
|
388 | 388 | </style>
|
389 | 389 |
|
390 |
| - <link href="/style.min.dfc76e0a4c03faab88f81d517d6efa6a235c422f57d1fa1a10e56eba3fe728ea.css" rel="stylesheet"> |
| 390 | + <link href="/style.min.a3636f61285a533daad479f35324a9957d578abc7b90e33f92123377123a455b.css" rel="stylesheet"> |
391 | 391 | <link rel="shortcut icon" type="image/x-icon" href="/favicon.ico">
|
392 | 392 | <link rel="icon" sizes="16x16 32x32" type="image/x-icon" href="/favicon.ico">
|
393 | 393 | <link rel="icon" href="/favicon.png">
|
@@ -454,56 +454,41 @@ <h2>About Enseada</h2>
|
454 | 454 | </div>
|
455 | 455 | </div>
|
456 | 456 | <div class="col-12 content px-0 text-body"><p>A Cloud native multi-package registry.</p>
|
457 |
| - |
458 | 457 | <p>Enseada is a modern, fast and scalable package registry, designed from the ground up
|
459 | 458 | to run in elastic, container-based environments and to be highly available and distributed.</p>
|
460 |
| - |
461 |
| -<hr /> |
462 |
| - |
| 459 | +<hr> |
463 | 460 | <p>It leverages scalability by using natively distributed technologies</p>
|
464 |
| - |
465 |
| -<p>The registry itself is written in <a href="https://elixir-lang.org">Elixir</a>, an <a href="https://www.erlang.org/">Erlang</a> compatible, |
466 |
| -functional and process-based programming language that is both fast and resource efficient.</p> |
467 |
| - |
| 461 | +<p>The registry itself is written in <a href="https://golang.org">Go</a>, a statically typed and extremely fast programming language very popular in Cloud native applications.</p> |
468 | 462 | <p><a href="https://couchdb.apache.org/">CouchDB</a> is used as the primary datastore, containing information about
|
469 |
| -repositories, users and access control. CouchDB is a web-native database written in Erlang and based on web technologies |
470 |
| -like HTTP and JSON.</p> |
471 |
| - |
472 |
| -<p>As far as storage is concerned, both local disks an object storage services are supported, altough |
473 |
| -the latter are strongly recommended for production deployments.</p> |
474 |
| - |
| 463 | +repositories, users and access control. CouchDB is a web-native database written in Erlang and based on web technologies like HTTP and JSON.</p> |
| 464 | +<p>As far as storage is concerned, both local disks an object storage services are supported altough the latter are strongly recommended for production deployments.</p> |
| 465 | +<h2 id="security-first">Security first</h2> |
| 466 | +<p>Enseada aims at providing a small, yet complete set of feature for managing software packages. |
| 467 | +Security is a priority concern, so an advanced policy engine provides the capabilities to define fine grained permissions over repositories and packages. From human users to automated service accounts, every access to the system is controlled, filtered and logged. A fully compliant <a href="https://auth0.com/docs/protocols/oauth2">OAuth 2</a> implementation allows integration with third party systems with ease.</p> |
| 468 | +<h2 id="management-api">Management API</h2> |
| 469 | +<p>A set of <a href="https://twitchtv.github.io/twirp">Twirp</a> APIs allows to programmatically interact with Enseada and its resources. Check the <a href="#">documentation</a> for more information.</p> |
| 470 | +<h2 id="management-ui">Management UI</h2> |
| 471 | +<p>The same set of functionalities exposed in the <a href="#management-api">API</a> is available as a built-in web GUI. Check the <a href="#">documentation</a> for more information.</p> |
475 | 472 | <h2 id="supported-package-repositories">Supported package repositories</h2>
|
476 |
| - |
477 |
| -<p>Enseada is a multi-package registry, meaning it can support a large number of package |
478 |
| -formats and registry APIs.</p> |
479 |
| - |
| 473 | +<p>Enseada is a multi-package registry, meaning it can support a large number of package formats and registry APIs.</p> |
480 | 474 | <p>At the moment, the following formats are supported:</p>
|
481 |
| - |
482 | 475 | <ul>
|
483 | 476 | <li><a href="https://maven.apache.org/guides/introduction/introduction-to-repositories.html">Maven 2 / 3</a></li>
|
484 | 477 | <li><a href="https://github.com/npm/registry/blob/master/docs/REGISTRY-API.md">NPM</a> (planned, coming soon)</li>
|
485 | 478 | <li><a href="https://docs.docker.com/registry/spec/api/">Docker</a> (planned, coming soon)</li>
|
486 | 479 | <li><a href="https://rubygems.org">RubyGems</a> (planned, coming soon)</li>
|
487 | 480 | </ul>
|
488 |
| - |
489 | 481 | <h2 id="supported-storage-providers">Supported storage providers</h2>
|
490 |
| - |
491 |
| -<p>Enseada uses the wonderful library <a href="https://github.com/stavro/arc">Waffle</a> to implement |
492 |
| -its storage layer, and is therefore compatible with any provider supported by Waffle. |
| 482 | +<p>Enseada abstracts the underlying storage provider with an agnostic engine based on <a href="https://github.com/chartmuseum/storage">ChartMuseum's library</a> |
493 | 483 | See <a href="#configuration">Configuration</a> for how to setup the storage layer.</p>
|
494 |
| - |
495 | 484 | <p>At the moment, only these providers are supported:</p>
|
496 |
| - |
497 | 485 | <ul>
|
498 | 486 | <li>Local disk</li>
|
499 | 487 | <li>S3 compatible (AWS S3, Minio, DigitalOcean Spaces, Scaleway Object Storage, Ceph, etc)</li>
|
500 | 488 | <li>Google Cloud Storage</li>
|
501 | 489 | </ul>
|
502 |
| - |
503 | 490 | <p>Local disk is only supported in single-node mode. To support <a href="#cluster-mode">cluster mode</a> use an object storage provider.</p>
|
504 |
| - |
505 | 491 | <h2 id="cluster-mode">Cluster mode</h2>
|
506 |
| - |
507 | 492 | <p>Coming soon</p>
|
508 | 493 | </div>
|
509 | 494 | </article>
|
@@ -537,7 +522,6 @@ <h4>Resources</h4>
|
537 | 522 | </div>
|
538 | 523 | <div class="col-md m-2 text-body">
|
539 | 524 | <div><h4 id="disclaimer">Disclaimer</h4>
|
540 |
| - |
541 | 525 | <p>This project is in its very infancy.
|
542 | 526 | Features are missings and bugs are frequent. Feedback and contributions are much
|
543 | 527 | appreciated.</div>
|
|
0 commit comments