Skip to content

Commit ccd3a23

Browse files
committed
Added CITATION.cff, CONTRIBUTING.md, SECURITY.md
1 parent d8d19f3 commit ccd3a23

File tree

4 files changed

+155
-1
lines changed

4 files changed

+155
-1
lines changed

CITATION.cff

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
cff-version: 1.2.0
2+
title: FastOpenAPI
3+
message: 'If you use this software, please cite it as below.'
4+
type: software
5+
authors:
6+
- given-names: Nikita
7+
family-names: Ryzhenkov
8+
9+
identifiers:
10+
repository-code: 'https://github.com/mr-fatalyst/fastopenapi'
11+
url: 'https://fastopenapi.fatalyst.dev/'
12+
abstract: >-
13+
FastOpenAPI is a library for generating and integrating OpenAPI schemas
14+
using Pydantic v2 and various frameworks
15+
(AioHttp, Falcon, Flask, Quart, Sanic, Starlette, Tornado).
16+
keywords:
17+
- aiohttp
18+
- falcon
19+
- flask
20+
- quart
21+
- sanic
22+
- starlette
23+
- tornado
24+
- pydantic
25+
- openapi
26+
license: MIT

CONTRIBUTING.md

Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
# Welcome!
2+
3+
Thanks for considering contributing to **FastOpenAPI** 🎉
4+
This guide explains how to get started, make contributions, write commits, open pull requests, and run tests.
5+
6+
---
7+
8+
## 📦 Setup & Running
9+
10+
Install dependencies with:
11+
12+
```bash
13+
git clone https://github.com/yourusername/fastopenapi.git
14+
cd fastopenapi
15+
poetry install
16+
```
17+
18+
If you don't use `poetry`, you can install manually from `pyproject.toml`:
19+
20+
```bash
21+
pip install -e .[dev]
22+
```
23+
24+
---
25+
26+
## 🚧 Project Structure
27+
28+
- `fastopenapi/` — core library
29+
- `examples/` — examples for different frameworks
30+
- `tests/` — tests for each supported framework
31+
- `benchmarks/` — performance comparisons
32+
- `docs/` — documentation in multiple languages
33+
34+
---
35+
36+
## 🧪 Running Tests
37+
38+
To run tests:
39+
40+
```bash
41+
pytest
42+
```
43+
44+
Tests cover both internal logic and integration with aiohttp, flask, sanic, and more.
45+
46+
---
47+
48+
## 🧼 Code Style
49+
50+
This project uses:
51+
- `black` — code formatting
52+
- `flake8` — linting
53+
- `isort` — import sorting
54+
- `pre-commit` — hooks for clean code before commit
55+
56+
Install pre-commit hooks:
57+
58+
```bash
59+
pre-commit install
60+
```
61+
62+
Run all checks manually:
63+
64+
```bash
65+
pre-commit run --all-files
66+
```
67+
68+
---
69+
70+
## 🧾 Git & Pull Requests
71+
72+
1. Fork the repository
73+
2. Create a new branch: `feature/your-feature` or `fix/your-fix`
74+
3. Keep commits atomic and meaningful
75+
4. Open a PR with a clear description:
76+
- What was added/changed?
77+
- Which frameworks were affected?
78+
- How was it tested?
79+
80+
---
81+
82+
## 📚 Documentation
83+
84+
If your change affects public APIs or behavior, update the relevant documentation:
85+
- `docs/en/`
86+
- If possible, update other languages too (optional)
87+
88+
---
89+
90+
## 📤 Feedback
91+
92+
Not sure how to implement a feature?
93+
Feel free to open an issue with your proposal. We’re happy to discuss it with you!
94+

SECURITY.md

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
# Security Policy
2+
3+
## Reporting a Vulnerability
4+
5+
If you discover a security vulnerability in **FastOpenAPI**, we ask that you report it responsibly using GitHub's private security advisories.
6+
7+
👉 [Report a vulnerability](https://github.com/mr-fatalyst/fastopenapi/security/advisories/new)
8+
9+
Please include the following details:
10+
- Description of the vulnerability
11+
- Steps to reproduce
12+
- Potential impact
13+
- Suggested fix (if any)
14+
15+
I appreciate all reports and aim to respond within **5 business days**.
16+
17+
---
18+
19+
## ⚠️ Project Status
20+
21+
FastOpenAPI is currently under **active development**.
22+
Please be aware that the project may contain bugs or unstable features.
23+
24+
I am grateful for any reports of security issues, unexpected behaviors, or improvement suggestions — your feedback helps make the project better for everyone 🙏
25+
26+
---
27+
28+
## Responsible Disclosure
29+
30+
Please do not create public issues for security problems. Use the GitHub advisory form linked above to report them privately.
31+
32+
Thank you for helping to keep FastOpenAPI secure!
33+
34+
---

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
[project]
22
name = "fastopenapi"
33
version = "0.5.0"
4-
description = "FastOpenAPI is a library for generating and integrating OpenAPI schemas using Pydantic."
4+
description = "FastOpenAPI is a library for generating and integrating OpenAPI schemas using Pydantic v2 and various frameworks (AioHttp, Falcon, Flask, Quart, Sanic, Starlette, Tornado)."
55
authors = [
66
{name = "Nikita Ryzhenkov", email = "[email protected]"}
77
]

0 commit comments

Comments
 (0)