Skip to content

Commit

Permalink
feat: Add guidelines and update landing page (#4)
Browse files Browse the repository at this point in the history
* Add guidelines and update landing page

* Add missing text

* Change color

* Fix links
  • Loading branch information
jimmarino committed Sep 16, 2024
1 parent 21901b7 commit d61603a
Show file tree
Hide file tree
Showing 24 changed files with 23,005 additions and 96 deletions.
41 changes: 41 additions & 0 deletions assets/scss/_variables_project.scss
Original file line number Diff line number Diff line change
Expand Up @@ -10,4 +10,45 @@ $enable-shadows: false;
$primary: #046EFA;
$secondary: #E4E6F0;
$dark: #2A2C34;
$success: #1A8754;
$primary-bg-subtle-dark: #3c3f44;

.block-text-container {
display: grid;
grid-template-columns: auto;
justify-content: center;
}

.block-text {
display: grid;
max-width: 600px;
padding-left: 1.5rem;
padding-right: 1.5rem;
}

.logo-container {
display: grid;
justify-content: center;
align-content: center;
align-items: center;

grid-template-columns: repeat(4, max-content);

@media screen and (max-width: 1024px) {
grid-template-columns: repeat(3, max-content);
}

@media screen and (max-width: 720px) {
grid-template-columns: max-content;
}

gap: 2rem;
column-gap: 4rem;
& > div {
text-align: center;
}
}




16 changes: 15 additions & 1 deletion content/en/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,21 @@ to deliver innovative solutions for data exchange networks.
<img height="500px" width="600px" src="images/edc.schematic.svg">
{{< /blocks/cover >}}

{{< blocks/section color="300" type="row" >}}
{{< blocks/section color="white" type="row" >}}
<div class="text-center">
<h2>Backed by Leading Companies</h2>
</div>
<div class="pt-5 logo-container">
<div><img height="80" src="images/logos/amadeus.logo.svg"></div>
<div><img height="60" src="images/logos/aws.logo.svg"></div>
<div><img height="80" src="images/logos/bmw.logo.svg"></div>
<div><img height="60" src="images/logos/fraunhofer.logo.svg"></div>
<div><img height="60" src="images/logos/google.logo.svg"></div>
<div><img height="60" src="images/logos/huawei.logo.svg"></div>
<div><img height="60" src="images/logos/microsoft.logo.svg"></div>
<div><img height="60" src="images/logos/sap.logo.svg"></div>
</div>

{{< /blocks/section >}}

{{< blocks/section color="dark" type="row" >}}
Expand Down
6 changes: 0 additions & 6 deletions content/en/community/_index.md

This file was deleted.

53 changes: 36 additions & 17 deletions content/en/documentation/_index.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
---
title: Documentation
linkTitle: Docs
menu: {main: {weight: 20}}
weight: 20

Expand All @@ -9,24 +8,44 @@ cascade:
---

{{% pageinfo %}}
This is a placeholder page that shows you how to use this template site.
Welcome to the EDC, a framework for building globally-scalable data sharing services.
{{% /pageinfo %}}

Many organizations face the challenge of securely sharing data with their partners or other trusted third parties. In
the past, this has been the realm of proprietary EDI solutions. EDC is an alternative to these systems built on the
concept of [dataspaces](https://dataspace.eclipse.org/). EDC is a set of components that enable developers to create
dataspaces using the following building blocks:

This section is where the user documentation for your project lives - all the
information your users need to understand and successfully use your project.
- **Identity service** for managing and verifying organizational credentials
using [DIDs](https://www.w3.org/TR/did-core/)
and [W3C Verifiable Credentials](https://www.w3.org/TR/vc-data-model/) or OAuth2 tokens.
- **Catalog service** for publishing and securing assets that can be shared with other organizations.
- **Control plane services** for the automated creation and processing of data usage agreements that grant access to
data.
- **Data plane and monitoring services** for initiating and managing data transfers using off-the-shelf protocols such
as `HTTP`, `Kafka`, cloud object storage, or virtually any other technology.

For large documentation sets we recommend adding content under the headings in
this section, though if some or all of them don’t apply to your project feel
free to remove them or add your own. You can see an example of a smaller Docsy
documentation site in the [Docsy User Guide](https://docsy.dev/docs/), which
lives in the [Docsy theme
repo](https://github.com/google/docsy/tree/master/userguide) if you'd like to
copy its docs section.
EDC is designed to serve a range of use cases, including large AI data sets, API access, supply-chain data processing,
and research data sharing.

EDC components are standards-based and implement
the [Dataspace Protocol Specification](https://github.com/eclipse-dataspace-protocol-base/DataspaceProtocol)
and [Decentralized Claims Protocol Specification](https://github.com/eclipse-dataspace-dcp/decentralized-claims-protocol).

## What EDC is not

EDC is not a data processing platform, integration framework, or messaging bus. EDC is also not a prepackaged system or
application. Rather, it is a toolbox for building customized distributions. As a generic toolbox, EDC:

- Does not ship an installable distribution; those are provided by downstream projects that customize EDC to their
needs.
- Does not contain use case-specific features; those are added through EDC's *modularity and extension system.*
- Does not provide infrastructure for storing, processing, or moving data; EDC integrates with third-party *data planes*
to provide these services.

## What Next?

If you are new to EDC, start with the [Adopters Manual](for-adopters). If you are an experienced EDC developer and
want to take a deep-dive into the codebase, see the [Contributors Manual](for-contributors).

Other content such as marketing material, case studies, and community updates
should live in the [About](/about/) and [Community](/community/) pages.

Find out how to use the Docsy theme in the [Docsy User
Guide](https://docsy.dev/docs/). You can learn more about how to organize your
documentation (and how we organized this site) in [Organizing Your
Content](https://docsy.dev/docs/best-practices/organizing-content/).
33 changes: 1 addition & 32 deletions content/en/documentation/for-adopters/_index.md
Original file line number Diff line number Diff line change
@@ -1,39 +1,8 @@
---
title: For Adopters
description: What does your user need to know to try your project?
title: Adopters Manual
weight: 20
---

Many organizations face the challenge of securely sharing data with their partners or other trusted third parties. In
the past, this has been the realm of proprietary EDI solutions. EDC is an alternative to these systems built on the
concept of [dataspaces](https://dataspace.eclipse.org/). EDC is a set of components that enable developers to create dataspaces using the following
building blocks:

- **Identity service** for managing and verifying organizational credentials using [DIDs](https://www.w3.org/TR/did-core/)
and [W3C Verifiable Credentials](https://www.w3.org/TR/vc-data-model/) or OAuth2 tokens.
- **Catalog service** for publishing and securing assets that can be shared with other organizations.
- **Negotiation service** for the automated creation and processing of data usage agreements that grant access to data.
- **Data transfer and monitoring services** for automatically initiating and managing data transfers using off-the-shelf
protocols such as `HTTP`, `Kafka`, cloud object storage, or virtually any other technology.

EDC is designed to serve a range of use cases, including large AI data sets, API access, supply-chain data processing,
and research data sharing.

EDC components are standards-based and implement the [Dataspace Protocol Specification](https://github.com/eclipse-dataspace-protocol-base/DataspaceProtocol)
and [Decentralized Claims Protocol Specification](https://github.com/eclipse-dataspace-dcp/decentralized-claims-protocol).

## What EDC is not

EDC is not a data processing platform, integration framework, or messaging bus. EDC is also not a prepackaged system or
application. Rather, it is a toolbox for building customized distributions. As a generic toolbox, EDC:

- Does not ship an installable distribution; those are provided by downstream projects that customize EDC to their
needs.
- Does not contain use case-specific features; those are added through EDC's *modularity and extension system* (more on
that below).
- Does not provide infrastructure for storing, processing, or moving data; EDC integrates with third-party *data planes*
to provide these services.

## The Samples

The quickest way to get started building with EDC is to work through
Expand Down
3 changes: 1 addition & 2 deletions content/en/documentation/for-contributors/_index.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
---
title: For Contributors
description: What do your user need to know to develop with EDC?
title: Contributors Manual
weight: 30
---

Expand Down
169 changes: 169 additions & 0 deletions content/en/documentation/for-contributors/guidelines/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,169 @@
---
title: Contribution Guidelines
linkTitle: Guidelines
weight: 900
---

Thank you for your interest in the EDC! This document provides guidelines and steps members are asked to follow when
contributing to the project.

## Table of Contents

* [Code Of Conduct](#code-of-conduct)
* [How to Contribute](#how-to-contribute)
* [Creating an Issue](#creating-an-issue)
* [Submitting a Pull Request](#submitting-a-pull-request)
* [Stale Issues and PRs](#stale-issues-and-prs)
* [Reporting Flaky Tests](#reporting-flaky-tests)
* [Project and Milestone Planning](#project-and-milestone-planning)
* [Milestones](#milestones)
* [Projects](#projects)
* [Releases](#releases)
* [Contact Us](#contact-us)

## Code Of Conduct

All community members are expected to adhere to
the [Eclipse Code of Conduct](https://www.eclipse.org/org/documents/Community_Code_of_Conduct.php").

## How to Contribute

If you want to share a feature idea or discuss a potential use case, first check the existing issues and discussions to
see if it has already been raised. If not, open a discussion (not an issue).

- For specific technology topics, use [GitHub discussions](https://github.com/features/discussions)
in the appropriate repository.
- For general topics (including project planning, relationship to other projects, etc.) use the [EDC
organization discussions](https://github.com/orgs/eclipse-edc/discussions).

### Creating an Issue

If you have identified a bug first check the existing issues to see if it has already been identified. If not, create
a new issue in the appropriate GitHub repository. Keep in mind the following:

- We
use [GitHub's default label set](https://docs.github.com/en/issues/using-labels-and-milestones-to-track-work/managing-labels)
extended by custom ones to classify issues and improve findability.
- If an issue appears to cover changes that will significantly impact the codebase, open a discussion before creating an
issue.
- If an issue covers a topic or the response to a question that may be interesting for further discussion, it should be
converted to a discussion instead of being closed.

### Submitting a Pull Request

Before submitting code to EDC, you should complete the following prerequisites:

* **DO NOT** submit a PR without first filing an issue (bug) or opening a discussion (new feature).
* Have a thorough understanding of the EDC codebase, including all technical documentation and Decision Records in the
relevant repositories.
* Review the [Eclipse Project Handbook](https://www.eclipse.org/projects/handbook/#contributing).
* Review the [EDC Pull-Request Etiquette](pr-etiquette).
* Follow the [EDC Pull-Request Checklist](pr-checklist).

#### Eclipse Contributor Agreement

Before your contribution can be accepted by the project, you need to create and electronically sign
an [Eclipse Contributor Agreement (ECA)](http://www.eclipse.org/legal/ecafaq.php):

1. Log in to the [Eclipse foundation website](https://accounts.eclipse.org/user/login/). You will
need to create an account within the Eclipse Foundation if you have not already done so.
2. Click on "Eclipse ECA", and complete the form.

Be sure to use the same email address in your Eclipse Account that you intend to use when committing to GitHub.


### Stale Issues and PRs

In order to keep our backlog clean, EDC uses a bot that labels and closes old issues and PRs. The following table
outlines this process:

| | Stale After | Closed After Stale |
|:-----------------------|------------:|-------------------:|
| Issue without assignee | 14 days | 7 days |
| Issue with assignee | 28 days | 7 days |
| PR | 7 days | 7 days |

Note that updating an issue, for example by commenting, will remove the `stale` label and reset the counters. However,
we ask the community **not to abuse** this feature (e.g., periodically commenting "what's the status?" would qualify as
abuse). If an issue receives no attention, usually there are reasons for it. To avoid closed issues, it's recommended to
clarify in advance whether a feature fits into the project roadmap by opening a discussion, which are not automatically
closed.

### Reporting Flaky Tests

If you discover a randomly failing ("flaky") test, please check whether an issue for that already
exists. If not, create one, making sure to provide a meaningful description and a link to the failing run. Also include
the `Bug` and `FlakyTest` labels and assign it to an author of the relevant code. If assigning the issue is not
possible due to missing rights, just comment and @mention the author/last editor.

Be sure not restart the run, as this will overwrite the results. Instead, push an empty commit to trigger another run.

```bash
git commit --allow-empty -m "trigger CI" && git push
```

Note that issues labeled with `Bug` and `FlakyTest` are prioritized.

## Non-Code Contributions

Non-code contributions are another valued way to contribute. Examples include:

- Evangelizing EDC
- Helping to develop the community by hosting events, meetups, summits, and hackathons
- Community education
- Answering questions on GitHub, Discord, etc.
- Writing documentation
- Other writing (Blogs, Articles, Interviews)

## Project and Milestone Planning

We use milestones to set a common focus for a period of 6 to 8 weeks. The group of committers chooses issues based on
customer needs and contributions we expect.

### Milestones

Milestones are organized at the [GitHub Milestones page](https://github.com/eclipse-edc/Connector/milestones).
They are numbered in ascending order. There, contributors, users, and adopters can track the progress.

Please note that the due date of a milestone does not imply any guarantee that all linked issued will
be resolved by then.

When closing the current milestone, issues that were not resolved within a milestone phase will be
reviewed to evaluate their relevance and priority, before being assigned to the next milestone.

#### Issues

Every issue that should be addressed during a milestone phase is assigned to it by using the
`Milestone` feature for linking both items. This way, the issues can easily be filtered by
milestones.

#### Pull Requests

Pull requests are not assigned to milestones as their linking to issues is sufficient to track
the relations and progresses.

### Projects

The [GitHub Projects page](https://github.com/eclipse-edc/Connector/projects)
provides a general overview of the project's working items. Every new issue is automatically assigned
to the ["Dataspace Connector" project](https://github.com/orgs/eclipse-edc/projects/3).
It can be unassigned or moved to any other project that is provided.

In every project, an issue passes four stages: `Backlog`, `In progress`, `Review in progress`, and `Done`,
independent of their association to a specific milestone.

### Releases

Please find more information about our release approach [here](developer/releases.md).

## Contact Us

If you have questions or suggestions, do not hesitate to contact the project developers via
the [project's "dev" list](https://dev.eclipse.org/mailman/listinfo/edc-dev). You may also want to join
our [Discord server](https://discord.gg/n4sD9qtjMQ).

The project holds a biweekly meeting on fridays 2-3 p.m. (CET) to give community members the
opportunity to get in touch with the committer team. We meet in the "general" voice channel.
Schedule details are [on GitHub](https://github.com/eclipse-edc/Connector/discussions/1303).

_If you have a "contributor" or "committer" status, you will also have access to private channels._
Loading

0 comments on commit d61603a

Please sign in to comment.