Skip to content

Initial commit #1

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 10 commits into from
Feb 2, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .env.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# RushDB Configuration
RUSHDB_TOKEN=your_api_token_here
RUSHDB_URL=http://localhost:3000
73 changes: 73 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
name: Python SDK CI/CD

on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
release:
types: [published]

jobs:
lint:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.8", "3.9", "3.10", "3.11"]

steps:
- uses: actions/checkout@v4

- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}

- name: Install Poetry
uses: snok/install-poetry@v1
with:
version: 1.7.1
virtualenvs-create: true
virtualenvs-in-project: true

- name: Install dependencies
run: |
poetry install --no-interaction --no-root

- name: Run linters
run: |
poetry run black . --check
poetry run isort . --check
poetry run ruff check .
poetry run mypy src/rushdb

publish:
if: startsWith(github.ref, 'refs/tags/v')
runs-on: ubuntu-latest
needs: lint

steps:
- uses: actions/checkout@v4

- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.11"

- name: Install Poetry
uses: snok/install-poetry@v1
with:
version: 1.7.1
virtualenvs-create: true
virtualenvs-in-project: true

- name: Install dependencies
run: |
poetry install --no-interaction --no-root

- name: Build and publish
env:
POETRY_PYPI_TOKEN_PYPI: ${{ secrets.PYPI_TOKEN }}
run: |
poetry build
poetry publish
18 changes: 18 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
node_modules
dist
*.log
*.tgz
.env
.next
.DS_Store
.idea
.vscode
.eslintcache
examples/**/yarn.lock
package-lock.json
*.tsbuildinfo
coverage
.rollup.cache
cjs
esm
packages/javascript-sdk/types
56 changes: 56 additions & 0 deletions CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
# Code of Conduct

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.

## Scope

This Code of Conduct applies to all contributors, including maintainers, users, and collaborators, in all project spaces and public communication channels.

## Our Standards

1. **Respectful Communication**
- Use welcoming and inclusive language.
- Be respectful of differing viewpoints and experiences.
- Refrain from personal attacks or derogatory comments.

2. **Collaboration**
- Provide constructive feedback and suggestions.
- Share knowledge and help others grow within the community.

3. **Responsibility**
- Take responsibility for your actions and their impact on others.
- Report issues or concerns to maintainers or moderators.

4. **Inclusivity**
- Actively seek to include and empower underrepresented groups.
- Avoid biased or discriminatory behavior.

## Unacceptable Behavior

Examples of unacceptable behavior include:

- Harassment, bullying, or intimidation.
- Disrespectful, offensive, or inappropriate comments.
- Discriminatory jokes or language.
- Publishing private information without explicit permission.

## Reporting Violations

If you observe or experience behavior that violates this Code of Conduct, please report it by:

- Contacting the project maintainer: [tg:onepx](https://t.me/onepx)
- Messaging via LinkedIn: [linkedin.com/onepx](https://linkedin.com/in/onepx)

We take all reports seriously and will investigate and address them promptly.

## Enforcement

Participants found to be in violation of this Code of Conduct may face actions such as:

- A private warning or reprimand.
- Temporary or permanent ban from project spaces.
- Removal of contributions or privileges.

## Acknowledgments

This Code of Conduct is adapted from widely recognized community guidelines to reflect our commitment to a healthy and collaborative environment.
43 changes: 43 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
# Contribution Guidelines for RushDB

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.

## Reporting Issues

When reporting an issue, include the following information:

1. **Minimum Reproducible Data Set**
- Provide a small JSON or CSV dataset if the issue is related to the core, dashboard, or SDK.
- Ensure the dataset highlights the problem clearly.

2. **RushDB Version**
- Specify the version of RushDB you are using:
- **Cloud**: Mention if you are using the latest cloud version.
- **Self-hosted**: Provide the tag from Docker Hub or the SDK version.

3. **Steps to Reproduce**
- Give a detailed explanation of how to reproduce the issue.
- Include any configurations, commands, or environment settings.

4. **Query Examples**
- If applicable, include specific queries that trigger the error.

5. **Minimum Repository (if SDK-related)**
- For issues related to the SDK, a minimal GitHub repository demonstrating the bug may be required.

## Submitting Changes

Before submitting a pull request:

- Ensure your code adheres to the project's coding standards.
- Include unit tests for new functionality or bug fixes.
- Update documentation if necessary.

## Contact Information

For urgent issues or further assistance, you can reach out directly:

- **Telegram**: [tg:onepx](https://t.me/onepx)
- **LinkedIn**: [linkedin.com/onepx](https://linkedin.com/in/onepx)

We appreciate your contributions and look forward to your feedback!
Loading