{"id":25052438,"url":"https://github.com/derder3010/robyn-web-api","last_synced_at":"2026-04-27T01:31:39.487Z","repository":{"id":274274469,"uuid":"921669628","full_name":"derder3010/robyn-web-api","owner":"derder3010","description":"A modern web API built with Robyn (Python web framework written in Rust) featuring user management with CockroachDB database integration.","archived":false,"fork":false,"pushed_at":"2025-01-28T07:30:13.000Z","size":34,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-07-02T01:36:29.005Z","etag":null,"topics":["backend","docker","pydantic","python","robyn","sqlalchemy"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/derder3010.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-01-24T11:44:47.000Z","updated_at":"2025-01-28T07:30:16.000Z","dependencies_parsed_at":"2025-03-31T06:20:35.849Z","dependency_job_id":"335a72bd-edf1-414e-bb4c-f019dade91c8","html_url":"https://github.com/derder3010/robyn-web-api","commit_stats":null,"previous_names":["derder3010/robyn-web-api"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/derder3010/robyn-web-api","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/derder3010%2Frobyn-web-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/derder3010%2Frobyn-web-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/derder3010%2Frobyn-web-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/derder3010%2Frobyn-web-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/derder3010","download_url":"https://codeload.github.com/derder3010/robyn-web-api/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/derder3010%2Frobyn-web-api/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32319559,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-26T23:26:28.701Z","status":"ssl_error","status_checked_at":"2026-04-26T23:26:25.802Z","response_time":129,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["backend","docker","pydantic","python","robyn","sqlalchemy"],"created_at":"2025-02-06T10:29:49.021Z","updated_at":"2026-04-27T01:31:39.462Z","avatar_url":"https://github.com/derder3010.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Robyn Web API\n\nA modern web API built with [Robyn](https://robyn.tech/) (Python web framework written in **Rust**) featuring user management with [CockroachDB](https://github.com/cockroachdb/cockroach) database integration.\n\n## Features\n\n- ✅ JWT Authentication (Add your implementation details)\n- ✅ User CRUD operations\n- ✅ [Pydantic](https://docs.pydantic.dev) request/response validation\n- ✅ [SQLAlchemy](https://www.sqlalchemy.org/) ORM with Alembic migrations\n- ✅ CockroachDB database support\n- ✅ Environment configuration with `.env`\n- ✅ Hot reload during development\n\n## Installation\n\n1. **Clone the repository**\n\n```bash\ngit clone https://github.com/yourusername/your-repo.git\ncd your-repo\n```\n\n2. **Set up virtual environment**\n\n```bash\npython -m venv .venv\nsource .venv/bin/activate  # Linux/MacOS\n# .venv\\Scripts\\activate   # Windows\n```\n\n3. **Install dependencies**\n\n```bash\npip install -r requirements.txt\n```\n\n4. **Environment Setup**\n\n```bash\ncp .env.example .env\n# Update .env with your database credentials\n```\n\n## Usage\n\n- Development Server\n\n```bash\npython -m robyn src/main.py --dev\n```\n\n- `--dev` enables hot reload on file changes\n\n- Server runs at `http://localhost:8080`\n\n* Example Requests\n\n```bash\n# Create user\ncurl -X POST http://localhost:8080/user \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"username\": \"testuser\", \"password\": \"secret\"}'\n\n# Get user\ncurl http://localhost:8080/user/\u003cuser-uuid\u003e\n```\n- Deployment:\n```bash\npython src/main.py --processes=n --workers=m\n```\n## Using with Docker\n\nIf you want to use this application with Docker, please ensure that you copy the `root.cert` file (downloaded from CockroachDB Cloud) into this directory. This certificate is required to establish a secure connection to the CockroachDB database.\n\n```shell\ndocker compose up -d --build\n```\n\n\n## Database Migration (Using Alembic)\n\n- Initial Setup\n\n```bash\nalembic init alembic\n```\n\nMigration Commands:\n\n- `alembic revision --autogenerate -m \"message\"` - Create new migration\n- `alembic upgrade head` - Apply pending migrations\n- `alembic downgrade -1` - Rollback last migration\n- `alembic current` - Show current revision\n- `alembic history` - Show migration history\n\n## Migration Workflow\n\n1. Modify SQLAlchemy models in `src/models.py`\n\n2. Generate migration:\n\n```bash\nalembic revision --autogenerate -m \"Add new feature\"\n```\n\n3. Review generated migration file\n4. Apply changes:\n\n```bash\nalembic upgrade head\n```\n\n## Configuration\n\nRequired environment variables (`.env file`):\n\n```ini\nDATABASE_URL=cockroachdb://user:password@localhost/dbname\nSECRET_KEY=your-secret-key-here\nACCESS_TOKEN_EXPIRE_MINUTES=30\n```\n\nProject Structure\n\n```\n.\n├── src/\n│   ├── main.py        # Main application entry\n│   ├── models.py      # SQLAlchemy models\n│   ├── schemas.py     # Pydantic models\n│   ├── handlers.py    # Business logic\n│   ├── routes.py      # API endpoints\n│   └── database/      # Database configuration\n├── alembic/           # Migration scripts\n├── .env.example       # Environment template\n├── requirements.txt   # Dependencies\n└── README.md          # This file\n```\n\n## License\n\nMIT License - see [LICENSE](https://github.com/derder3010/robyn-web-api/blob/main/LICENSE) for details\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fderder3010%2Frobyn-web-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fderder3010%2Frobyn-web-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fderder3010%2Frobyn-web-api/lists"}