-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Move content from lamin-static repo here
- Loading branch information
0 parents
commit 4202455
Showing
14 changed files
with
361 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
name: build | ||
|
||
on: | ||
push: | ||
branches: [main] | ||
pull_request: | ||
branches: [main] | ||
|
||
jobs: | ||
build: | ||
runs-on: ubuntu-latest | ||
strategy: | ||
fail-fast: false | ||
timeout-minutes: 10 | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
- uses: actions/setup-python@v5 | ||
- name: cache pre-commit | ||
uses: actions/cache@v3 | ||
with: | ||
path: ~/.cache/pre-commit | ||
key: pre-commit-${{ runner.os }}-${{ hashFiles('.pre-commit-config.yaml') }} | ||
- run: pip install "laminci@git+https://@github.com/laminlabs/laminci" | ||
- run: pip install "lndocs@git+https://x-access-token:${{ secrets.LAMIN_BUILD_DOCS }}@github.com/laminlabs/lndocs" | ||
# - run: nox -s lint | ||
- run: nox -s build | ||
- uses: cloudflare/wrangler-action@v3 | ||
id: cloudflare | ||
with: | ||
apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }} | ||
accountId: 472bdad691b4483dea759eadb37110bd | ||
command: pages deploy "_build/html" --project-name=lamin-legal | ||
gitHubToken: ${{ secrets.GITHUB_TOKEN }} | ||
- uses: edumserrano/find-create-or-update-comment@v2 | ||
if: github.event_name == 'pull_request' | ||
with: | ||
issue-number: ${{ github.event.pull_request.number }} | ||
body-includes: "Deployment URL" | ||
comment-author: "github-actions[bot]" | ||
body: | | ||
Deployment URL: ${{ steps.cloudflare.outputs.deployment-url }} | ||
edit-mode: replace |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
{{pr.title}} | [{{pr.number}}]({{pr.html_url}}) | [{{pr.user.login}}]({{pr.user.html_url}}) | {{pr.closed_at.date().isoformat()}} | | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
name: latest-changes | ||
|
||
on: | ||
pull_request_target: | ||
branches: | ||
- main | ||
types: | ||
- closed | ||
workflow_dispatch: | ||
inputs: | ||
number: | ||
description: PR number | ||
required: true | ||
|
||
jobs: | ||
latest-changes: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v2 | ||
- uses: docker://tiangolo/latest-changes:0.0.3 | ||
with: | ||
token: ${{ secrets.GITHUB_TOKEN }} | ||
latest_changes_file: docs/changelog.md | ||
latest_changes_header: '--- \| --- \| --- \| --- \| ---\n' | ||
template_file: ./.github/workflows/latest-changes.jinja2 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
_docs_tmp/ | ||
lamin_sphinx | ||
|
||
# misc | ||
.DS_Store | ||
.env.local | ||
.env.development.local | ||
.env.test.local | ||
.env.production.local | ||
|
||
# python | ||
.doctrees | ||
__pycache__ | ||
/_website | ||
.nox | ||
_build |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
repos: | ||
- repo: https://github.com/pre-commit/pre-commit-hooks | ||
rev: v3.2.0 | ||
hooks: | ||
- id: trailing-whitespace | ||
- id: end-of-file-fixer | ||
- id: check-yaml | ||
- id: check-added-large-files | ||
- repo: https://github.com/pre-commit/mirrors-prettier | ||
rev: v2.6.2 | ||
hooks: | ||
- id: prettier | ||
args: | ||
- --ignore-path=.gitignore |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
# Lamin Legal | ||
|
||
The site is served at [lamin.ai](https://legal.lamin.ai). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
# Changelog | ||
|
||
<!-- prettier-ignore --> | ||
Name | PR | Editor | Date | Number | ||
--- | --- | --- | --- | --- |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
import sys | ||
from pathlib import Path | ||
from dirsync import sync | ||
|
||
HERE = Path(__file__).parent | ||
sys.path[:0] = [str(HERE), str(HERE.parent)] | ||
|
||
from lamin_sphinx import * # noqa | ||
from lamin_sphinx import html_theme_options # noqa | ||
|
||
sync("../lamin-about/about", ".", "sync", exclude=["^.*README.md$"]) | ||
|
||
project = "Lamin" | ||
html_title = "Company | Lamin" | ||
html_context["github_repo"] = "lamin-about" # noqa | ||
|
||
ogp_site_url = "https://lamin.ai" | ||
|
||
html_theme_options["logo"] = { | ||
"link": "https://lamin.ai", | ||
"text": project, | ||
"root": "https://lamin.ai", | ||
} | ||
html_theme_options["icon_links"] = [ | ||
{ | ||
"name": "GitHub", | ||
"url": "https://github.com/laminlabs/lamin-about", | ||
"icon": "fa-brands fa-github", | ||
}, | ||
] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
# Lamin | ||
|
||
```{toctree} | ||
:hidden: true | ||
:maxdepth: 1 | ||
privacy-policy | ||
terms | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
--- | ||
orphan: true | ||
--- | ||
|
||
# Legal notes | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,86 @@ | ||
--- | ||
orphan: true | ||
--- | ||
|
||
# Privacy policy | ||
|
||
Last updated Jul 16th, 2024. | ||
|
||
We are Lamin Labs GmbH (registered with number HRB 279584) trading as Lamin. | ||
|
||
Our registered address is: | ||
Ruth Drexel Str. 128, | ||
81927 Munich, | ||
Germany. | ||
|
||
If you have any questions about this privacy notice, including any requests to exercise your legal rights, please contact us at `[email protected]` | ||
|
||
Lamin operates the lamin.ai website, which provides | ||
|
||
1. documentation for an open-source software package called LaminDB | ||
2. a web service called LaminHub to connect & explore so-called "LaminDB instances" | ||
|
||
This page is used to inform website visitors regarding our policies with the collection, use, and disclosure of Personal Information if anyone decided to use the lamin.ai website. If you choose to use our Service (LaminHub), then you agree to the collection and use of information in relation with this policy. The Personal Information that we collect are used for providing and improving the Service. We will not use or share your information with anyone except as described in this Privacy Policy. The terms used in this Privacy Policy have the same meanings as in our Terms and Conditions unless otherwise defined in this Privacy Policy. | ||
|
||
## Which privacy-related data do we collect? | ||
|
||
If you sign up on lamin.ai, we store your email address, a "user handle", and data that you agree to transmit to us through a secondary authentication provider such as Google, GitHub, Microsoft, or Okta. | ||
|
||
## How do we use your data? | ||
|
||
Your personal data is used to identify you on LaminHub Service. A basic feature of LaminHub consists in attributing actions on LaminHub to a user identity. If all changes were made anonymously, LaminHub had little value. | ||
|
||
## What about cookies and other identifiers? | ||
|
||
We exclusively use cookies to manage and persist user sessions within the lamin.ai Service through a service called [Supabase](https://supabase.com/). | ||
|
||
We do not use cookies to track usage, device, or third-party information that is not strictly necessary for authentication to the lamin.ai Service. | ||
|
||
If you wish to opt-out completely from cookie usage, we recommend that you disable cookie tracking in you browser's privacy settings or contact us directly. Note that you may not be able to use some parts of our Service, particularly the LaminHub web service. | ||
|
||
## Where is data stored? | ||
|
||
Your personal data is stored is stored on AWS in the us-east-1 region through a service called [Supabase](https://supabase.com/). | ||
|
||
Lamin retains service data for the duration of the customer’s business relationship with Lamin and for a period of time thereafter, to analyze the data for Lamin’s own operations, and for historical and archiving purposes associated with Lamin’s services. Lamin retains prospect data until such time as it no longer has business value and is purged from Lamin systems. All personal data that Lamin controls may be deleted upon verified request from Data Subjects or their authorized agents. For more information on where and how long your personal data is stored, and for more information on your rights of erasure and portability, please contact us at: `[email protected]` | ||
|
||
## Is data shared with third parties? | ||
|
||
A list of our third party sub processors can be found here: [trust.lamin.ai](https://trust.lamin.ai). However, only Supabase has access to personal data through it's hosted offer. | ||
|
||
We may share data if: (1) you request or authorize it; (2) the information is provided to comply with the law (for example, compelled by law enforcement to comply with a search warrant, subpoena, or court order), enforce an agreement we have with you, or to protect our rights, property or safety, or the rights, property or safety of our employees or others; (3) to address emergencies; or (4) to address disputes, claims, or to persons demonstrating legal authority to act on your behalf. | ||
|
||
In the future, we may gather aggregated data about our services and website visitors and disclose the results of such aggregated (but not personally identifiable) information to our partners, service providers, advertisers, and/or other third parties for marketing or promotional purposes. | ||
|
||
The Lamin website connects with third party services such as LinkedIn, GitHub, and X. If you choose to share information from the Lamin website through these services, you should review the privacy policy of that service. If you are a member of a third party service, the aforementioned connections may allow that service to connect your visit to our site to your personal data. | ||
|
||
## Transferring personal data to the U.S. | ||
|
||
Lamin has its headquarters in Germany but some information we collect about you will be processed in the United States due to the large US-based customer base. By using Lamin’s services, you acknowledge that your personal information will be processed in the United States. The United States has not sought nor received a finding of “adequacy” from the European Union under Article 45 of the GDPR. Pursuant to Article 46 of the GDPR, Lamin is providing for appropriate safeguards by entering binding, standard data protection clauses, enforceable by data subjects in the EEA and the UK. These clauses have been enhanced based on the guidance of the European Data Protection Board and will be updated when the new draft model clauses are approved. | ||
|
||
Depending on the circumstance, Lamin also collects and transfers to the U.S. personal data with consent; to perform a contract with you; or to fulfill a compelling legitimate interest of Lamin in a manner that does not outweigh your rights and freedoms. Lamin endeavors to apply suitable safeguards to protect the privacy and security of your personal data and to use it only consistent with your relationship with Lamin and the practices described in this Privacy Statement. Lamin also enters into data processing agreements and model clauses with its vendors whenever feasible and appropriate. Since it was founded, Lamin has received zero government requests for information. | ||
For more information or if you have any questions, please contact us at `[email protected]` | ||
|
||
## Children’s data | ||
|
||
We do not knowingly attempt to solicit or receive information from children. | ||
|
||
## What are my rights under data protection laws? | ||
|
||
You have various other rights under applicable data protection laws, including the right to: | ||
|
||
- access your personal data (also known as a “subject access request”) | ||
- correct incomplete or inaccurate data we hold about you | ||
- ask us to erase the personal data we hold about you | ||
- ask us to restrict our handling of your personal data | ||
- ask us to transfer your personal data to a third party | ||
- object to how we are using your personal data | ||
- withdraw your consent to us handling your personal data | ||
|
||
You also have the right to lodge a complaint with your relevant supervisory authority, you can find which one applies to you [here](https://edpb.europa.eu/about-edpb/about-edpb/members_en). | ||
|
||
Please keep in mind that privacy law is complicated, and these rights will not always be available to you all of the time. | ||
|
||
## Questions, concerns or complaints | ||
|
||
If you have questions, concerns, complaints, or would like to exercise your rights, please contact us at: `[email protected]` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,102 @@ | ||
--- | ||
orphan: true | ||
--- | ||
|
||
# Terms | ||
|
||
Last updated Sep 23rd, 2023. | ||
|
||
We are Lamin Labs GmbH (registered with number HRB 279584) trading as Lamin. | ||
|
||
Our registered address is: | ||
Ruth Drexel Str. 122, | ||
81927 Munich, | ||
Germany. | ||
|
||
If you have any questions about these Terms, please contact us at `[email protected]`. | ||
|
||
Lamin operates the lamin.ai website, which provides | ||
|
||
1. documentation for an open-source software package called LaminDB | ||
2. a web service called LaminHub to connect & explore so-called "LaminDB instances" | ||
|
||
By using our service (LaminHub) you accept these Terms. If you disagree with these Terms, you must not use our Service. | ||
|
||
In using our service, we may process your personal data; more information about this can be found in the [privacy policy](/legal/privacy-policy). | ||
|
||
## Subscriptions | ||
|
||
### Free plan | ||
|
||
On a free plan, the Service will be provided to you as is based on the Terms described on this page. | ||
|
||
### Enterprise plan | ||
|
||
On an enterprise plan, you engage us in a dedicated agreement that may amend the Terms described on this page. Most importantly, the Enterprise Plan enables usage of LaminHub for private data & support. For details, see [pricing](https://lamin.ai/pricing). | ||
|
||
## Performance of the Service | ||
|
||
During your use of the Service, we will take steps to ensure that the Service functions as described. | ||
|
||
What happens when the Service stops working as described? If you report to us a substantial error with the Service, we will seek to correct this within a reasonable amount of time – where legally permitted, this will be your sole remedy. | ||
|
||
You must maintain a secure internet connection. Where you lose access to the Service and any User Content due to a disruption in your telecommunications or internet services, we will in no way be liable for any losses suffered. | ||
|
||
Where our Service contains links to other sites, User Content, and resources provided by third parties, these are provided for your information only. They should not be interpreted as our approval of those linked websites or information you may obtain from them. | ||
|
||
## Stored data | ||
|
||
For privacy-related data, see the [privacy policy](/legal/privacy-policy). | ||
|
||
If you create a "LaminDB instance" and decide to "register it on lamin.ai", we store: | ||
|
||
- a string reference to a default storage location, like `"s3://my-bucket"` | ||
- the database connection string that you provide | ||
- the schema module identifiers that you provide | ||
|
||
These data are sufficient for you to load instances from any computer through LaminHub, assuming you manage secrets and VPCs client side. | ||
|
||
We do _not_ store any of your R&D data. | ||
|
||
If you do not explicitly grant us access through secrets to storage or database within an Enterprise Plan engagement, Lamin will not be able to access your data. | ||
|
||
In case you provide us with secrets, we will store them in a secure way (Secret store, Vault). They are decoupled from all our infrastructure and solely used so that you can explore your LaminDB instances through LaminHub. At any time, you will be able to revoke Lamin's access by invalidating secrets. | ||
|
||
## Intellectual property | ||
|
||
We are the owner or the licensee of all intellectual property rights in the Service, including any modifications and improvements made by us or suggested by you. Copyright laws and treaties around the world protect those works. All such rights are reserved. We provide you with a worldwide, non-exclusive, non-transferable, non-sublicensable, revocable limited term licence for internal use only to use the Service in accordance with these Terms. Such a right to use the Service and any User Content on the Service will expire at the point your subscription ends or when we terminate the Agreement, whichever is sooner. | ||
|
||
Data you transmit through the Service. All documents, messages, logos, images, files, and other information you transmit through our Service, will remain yours and you shall retain all rights, titles and interest in those. | ||
|
||
## Cancellation | ||
|
||
Your free plan will start when you sign up as a service user and agree to these Terms. Your access to the service will continue until the earlier of you canceling your subscription, we terminate your right to access the service, or you commit a material breach of these Terms. | ||
|
||
If you wish to cancel the free plan, you can do this via email to: `[email protected]`. | ||
|
||
Deletion of data. We will only retain your data for as long as we need it. Your data is usually deleted 6 months after the deactivation of your account with us, unless we are required to keep it for longer to comply with our legal, accounting, or regulatory requirements. | ||
|
||
Survival of important terms. Please note that all rights under this Agreement, which by nature should survive termination, will, including Indemnity, Liability, Governing Law, Notices and Intellectual Property. | ||
|
||
## Indemnity | ||
|
||
Your indemnity to us. You agree to indemnify us, our affiliates, directors, officers, and employees against all loss, costs, damages, liabilities and expenses that arise out of your breach of these Terms and/ or use of the Service. | ||
|
||
## Liability | ||
|
||
We do not limit any losses that we are not allowed to limit: We do not exclude or limit in any way our liability to you where it would be unlawful to do so including death or personal injury caused by our negligence. | ||
|
||
What we do limit: We exclude all implied conditions, warranties, representations or other terms that may apply to our Service or any Services on it. We will not be liable to you for any loss or damage, whether in contract, tort (including negligence), breach of statutory duty, or otherwise, even if foreseeable, arising under or in connection with the use of, or inability to use, our Service; or use of or reliance on any Services displayed on our Service. | ||
|
||
In particular, we will not be liable for loss of profits, sales, business, or revenue; business interruption; loss of anticipated savings; loss of business opportunity, goodwill or reputation; or any indirect or consequential loss or damage. | ||
|
||
No services guarantees. The Service is provided “as is”. We make no guarantee as to the quality of the Service and its suitability for your individual purposes, and will not be liable in the event you do not undertake your own prior due diligence. | ||
|
||
Severability. Each of the paragraphs of these terms operates separately. If any court or relevant authority decides that any of them are unlawful or unenforceable, the remaining paragraphs will remain in full force and effect. | ||
|
||
## Governing law | ||
|
||
What laws apply to these Terms? These terms are governed by English law, and you can bring legal proceedings in the English courts. | ||
However, if you are a consumer, you may also benefit from any mandatory provisions of the law of the country in which you are resident. Nothing in these Terms affects your rights as a consumer to rely on such mandatory provisions of local law. | ||
|
||
Changes to these Terms. As our service grows and improves, we might have to make changes to these Terms. We will do this by uploading the latest version with a date confirming when they went live. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
project_name: Lamin Legal | ||
description: Privacy policy & terms | ||
project_slug: "" | ||
repository_name: lamin-legal | ||
package_name: "" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
import nox | ||
from laminci.nox import run_pre_commit | ||
|
||
nox.options.default_venv_backend = "none" | ||
|
||
|
||
@nox.session | ||
def lint(session: nox.Session) -> None: | ||
run_pre_commit(session) | ||
|
||
|
||
@nox.session | ||
def build(session: nox.Session): | ||
session.run(*["lndocs", "--strict"]) |