Skip to content

Commit fd04eef

Browse files
authored
Merge pull request #1 from rush-db/feature/python-sdk
Initial commit
2 parents 98419c6 + c8c5660 commit fd04eef

31 files changed

+2604
-2
lines changed

.env.example

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# RushDB Configuration
2+
RUSHDB_TOKEN=your_api_token_here
3+
RUSHDB_URL=http://localhost:3000

.github/workflows/ci.yml

Lines changed: 73 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,73 @@
1+
name: Python SDK CI/CD
2+
3+
on:
4+
push:
5+
branches: [ main ]
6+
pull_request:
7+
branches: [ main ]
8+
release:
9+
types: [published]
10+
11+
jobs:
12+
lint:
13+
runs-on: ubuntu-latest
14+
strategy:
15+
matrix:
16+
python-version: ["3.8", "3.9", "3.10", "3.11"]
17+
18+
steps:
19+
- uses: actions/checkout@v4
20+
21+
- name: Set up Python ${{ matrix.python-version }}
22+
uses: actions/setup-python@v4
23+
with:
24+
python-version: ${{ matrix.python-version }}
25+
26+
- name: Install Poetry
27+
uses: snok/install-poetry@v1
28+
with:
29+
version: 1.7.1
30+
virtualenvs-create: true
31+
virtualenvs-in-project: true
32+
33+
- name: Install dependencies
34+
run: |
35+
poetry install --no-interaction --no-root
36+
37+
- name: Run linters
38+
run: |
39+
poetry run black . --check
40+
poetry run isort . --check
41+
poetry run ruff check .
42+
poetry run mypy src/rushdb
43+
44+
publish:
45+
if: startsWith(github.ref, 'refs/tags/v')
46+
runs-on: ubuntu-latest
47+
needs: lint
48+
49+
steps:
50+
- uses: actions/checkout@v4
51+
52+
- name: Set up Python
53+
uses: actions/setup-python@v4
54+
with:
55+
python-version: "3.11"
56+
57+
- name: Install Poetry
58+
uses: snok/install-poetry@v1
59+
with:
60+
version: 1.7.1
61+
virtualenvs-create: true
62+
virtualenvs-in-project: true
63+
64+
- name: Install dependencies
65+
run: |
66+
poetry install --no-interaction --no-root
67+
68+
- name: Build and publish
69+
env:
70+
POETRY_PYPI_TOKEN_PYPI: ${{ secrets.PYPI_TOKEN }}
71+
run: |
72+
poetry build
73+
poetry publish

.gitignore

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
node_modules
2+
dist
3+
*.log
4+
*.tgz
5+
.env
6+
.next
7+
.DS_Store
8+
.idea
9+
.vscode
10+
.eslintcache
11+
examples/**/yarn.lock
12+
package-lock.json
13+
*.tsbuildinfo
14+
coverage
15+
.rollup.cache
16+
cjs
17+
esm
18+
packages/javascript-sdk/types

CODE_OF_CONDUCT.md

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
# Code of Conduct
2+
3+
We value open collaboration and respect in all interactions. To foster a welcoming and productive community, all participants are expected to adhere to the following guidelines.
4+
5+
## Scope
6+
7+
This Code of Conduct applies to all contributors, including maintainers, users, and collaborators, in all project spaces and public communication channels.
8+
9+
## Our Standards
10+
11+
1. **Respectful Communication**
12+
- Use welcoming and inclusive language.
13+
- Be respectful of differing viewpoints and experiences.
14+
- Refrain from personal attacks or derogatory comments.
15+
16+
2. **Collaboration**
17+
- Provide constructive feedback and suggestions.
18+
- Share knowledge and help others grow within the community.
19+
20+
3. **Responsibility**
21+
- Take responsibility for your actions and their impact on others.
22+
- Report issues or concerns to maintainers or moderators.
23+
24+
4. **Inclusivity**
25+
- Actively seek to include and empower underrepresented groups.
26+
- Avoid biased or discriminatory behavior.
27+
28+
## Unacceptable Behavior
29+
30+
Examples of unacceptable behavior include:
31+
32+
- Harassment, bullying, or intimidation.
33+
- Disrespectful, offensive, or inappropriate comments.
34+
- Discriminatory jokes or language.
35+
- Publishing private information without explicit permission.
36+
37+
## Reporting Violations
38+
39+
If you observe or experience behavior that violates this Code of Conduct, please report it by:
40+
41+
- Contacting the project maintainer: [tg:onepx](https://t.me/onepx)
42+
- Messaging via LinkedIn: [linkedin.com/onepx](https://linkedin.com/in/onepx)
43+
44+
We take all reports seriously and will investigate and address them promptly.
45+
46+
## Enforcement
47+
48+
Participants found to be in violation of this Code of Conduct may face actions such as:
49+
50+
- A private warning or reprimand.
51+
- Temporary or permanent ban from project spaces.
52+
- Removal of contributions or privileges.
53+
54+
## Acknowledgments
55+
56+
This Code of Conduct is adapted from widely recognized community guidelines to reflect our commitment to a healthy and collaborative environment.

CONTRIBUTING.md

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
# Contribution Guidelines for RushDB
2+
3+
Thank you for your interest in contributing to RushDB! To ensure a smooth contribution process, please follow the checklist below when reporting issues or submitting changes.
4+
5+
## Reporting Issues
6+
7+
When reporting an issue, include the following information:
8+
9+
1. **Minimum Reproducible Data Set**
10+
- Provide a small JSON or CSV dataset if the issue is related to the core, dashboard, or SDK.
11+
- Ensure the dataset highlights the problem clearly.
12+
13+
2. **RushDB Version**
14+
- Specify the version of RushDB you are using:
15+
- **Cloud**: Mention if you are using the latest cloud version.
16+
- **Self-hosted**: Provide the tag from Docker Hub or the SDK version.
17+
18+
3. **Steps to Reproduce**
19+
- Give a detailed explanation of how to reproduce the issue.
20+
- Include any configurations, commands, or environment settings.
21+
22+
4. **Query Examples**
23+
- If applicable, include specific queries that trigger the error.
24+
25+
5. **Minimum Repository (if SDK-related)**
26+
- For issues related to the SDK, a minimal GitHub repository demonstrating the bug may be required.
27+
28+
## Submitting Changes
29+
30+
Before submitting a pull request:
31+
32+
- Ensure your code adheres to the project's coding standards.
33+
- Include unit tests for new functionality or bug fixes.
34+
- Update documentation if necessary.
35+
36+
## Contact Information
37+
38+
For urgent issues or further assistance, you can reach out directly:
39+
40+
- **Telegram**: [tg:onepx](https://t.me/onepx)
41+
- **LinkedIn**: [linkedin.com/onepx](https://linkedin.com/in/onepx)
42+
43+
We appreciate your contributions and look forward to your feedback!

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy