Skip to content

Commit ec2f402

Browse files
Merge pull request #2 from PanMarkCake/master
Readme updates
2 parents fdba667 + 1ac9e4d commit ec2f402

File tree

2 files changed

+159
-15
lines changed

2 files changed

+159
-15
lines changed

CONTRIBUTING.md

Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,92 @@
1+
# Contributing
2+
3+
When contributing to this repository, please first discuss the change you wish to make via issue,
4+
email, or any other method with the owners of this repository before making a change.
5+
6+
Please note we have a code of conduct, please follow it in all your interactions with the project.
7+
8+
## Pull Request Process
9+
10+
1. Ensure any install or build dependencies are removed before the end of the layer when doing a
11+
build.
12+
2. Update the README.md with details of changes to the interface, this includes new environment
13+
variables, exposed ports, useful file locations and container parameters.
14+
3. Increase the version numbers in any examples files and the README.md to the new version that this
15+
Pull Request would represent. The versioning scheme we use is [SemVer](http://semver.org/).
16+
4. You may merge the Pull Request in once you have the sign-off of two other developers, or if you
17+
do not have permission to do that, you may request the second reviewer to merge it for you.
18+
19+
## Code of Conduct
20+
21+
### Our Pledge
22+
23+
In the interest of fostering an open and welcoming environment, we as
24+
contributors and maintainers pledge to making participation in our project and
25+
our community a harassment-free experience for everyone, regardless of age, body
26+
size, disability, ethnicity, gender identity and expression, level of experience,
27+
nationality, personal appearance, race, religion, or sexual identity and
28+
orientation.
29+
30+
### Our Standards
31+
32+
Examples of behavior that contributes to creating a positive environment
33+
include:
34+
35+
* Using welcoming and inclusive language
36+
* Being respectful of differing viewpoints and experiences
37+
* Gracefully accepting constructive criticism
38+
* Focusing on what is best for the community
39+
* Showing empathy towards other community members
40+
41+
Examples of unacceptable behavior by participants include:
42+
43+
* The use of sexualized language or imagery and unwelcome sexual attention or
44+
advances
45+
* Trolling, insulting/derogatory comments, and personal or political attacks
46+
* Public or private harassment
47+
* Publishing others' private information, such as a physical or electronic
48+
address, without explicit permission
49+
* Other conduct which could reasonably be considered inappropriate in a
50+
professional setting
51+
52+
### Our Responsibilities
53+
54+
Project maintainers are responsible for clarifying the standards of acceptable
55+
behavior and are expected to take appropriate and fair corrective action in
56+
response to any instances of unacceptable behavior.
57+
58+
Project maintainers have the right and responsibility to remove, edit, or
59+
reject comments, commits, code, wiki edits, issues, and other contributions
60+
that are not aligned to this Code of Conduct, or to ban temporarily or
61+
permanently any contributor for other behaviors that they deem inappropriate,
62+
threatening, offensive, or harmful.
63+
64+
### Scope
65+
66+
This Code of Conduct applies both within project spaces and in public spaces
67+
when an individual is representing the project or its community. Examples of
68+
representing a project or community include using an official project e-mail
69+
address, posting via an official social media account, or acting as an appointed
70+
representative at an online or offline event. Representation of a project may be
71+
further defined and clarified by project maintainers.
72+
73+
### Enforcement
74+
75+
Instances of abusive, harassing, or otherwise unacceptable behavior may be
76+
reported by contacting the project team at @placeholdermail. All
77+
complaints will be reviewed and investigated and will result in a response that
78+
is deemed necessary and appropriate to the circumstances. The project team is
79+
obligated to maintain confidentiality with regard to the reporter of an incident.
80+
Further details of specific enforcement policies may be posted separately.
81+
82+
Project maintainers who do not follow or enforce the Code of Conduct in good
83+
faith may face temporary or permanent repercussions as determined by other
84+
members of the project's leadership.
85+
86+
### Attribution
87+
88+
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
89+
available at [http://contributor-covenant.org/version/1/4][version]
90+
91+
[homepage]: http://contributor-covenant.org
92+
[version]: http://contributor-covenant.org/version/1/4/

README.md

Lines changed: 67 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,66 @@
1-
# netdriver
2-
3-
## Overview
4-
5-
NetDriver is a network device automation framework that enables CLI command execution through HTTP RESTful APIs. It simplifies network automation development while enhancing security and reliability.
6-
1+
# NetDriver
2+
<a name="top"></a>
3+
4+
[![Python](https://img.shields.io/badge/Python-3.12%2B-blue.svg)](https://www.python.org/)
5+
[![Poetry](https://img.shields.io/badge/Poetry-1.8.3-60A5FA.svg)](https://python-poetry.org/)
6+
[![License](https://img.shields.io/badge/License-Apache_2.0-green.svg)](./LICENSE)
7+
[![Build Status](https://img.shields.io/badge/build-passing-brightgreen.svg)]()
8+
[![Tests](https://img.shields.io/badge/tests-passing-success.svg)]()
9+
[![Contributions Welcome](https://img.shields.io/badge/contributions-welcome-orange.svg)]()
10+
[![Last Commit](https://img.shields.io/github/last-commit/PanMarkCake/netdriver)](https://github.com/PanMarkCake/netdriver/commits/main)
11+
[![Release](https://img.shields.io/badge/release-v0.1.0-blue.svg)](https://github.com/PanMarkCake/REPO/releases/tag/v0.1.0)
12+
![Release Date](https://img.shields.io/badge/release--date-August_2025-blue.svg)
13+
14+
⭐ Star us on GitHub — your support motivates us a lot! 🙏😊
15+
16+
[![Share](https://img.shields.io/badge/share-000000?logo=x&logoColor=white)](https://x.com/intent/tweet?text=Check%20out%20this%20project%20on%20GitHub:%20https://github.com/Abblix/Oidc.Server%20%23OpenIDConnect%20%23Security%20%23Authentication)
17+
[![Share](https://img.shields.io/badge/share-1877F2?logo=facebook&logoColor=white)](https://www.facebook.com/sharer/sharer.php?u=https://github.com/Abblix/Oidc.Server)
18+
[![Share](https://img.shields.io/badge/share-0A66C2?logo=linkedin&logoColor=white)](https://www.linkedin.com/sharing/share-offsite/?url=https://github.com/Abblix/Oidc.Server)
19+
[![Share](https://img.shields.io/badge/share-FF4500?logo=reddit&logoColor=white)](https://www.reddit.com/submit?title=Check%20out%20this%20project%20on%20GitHub:%20https://github.com/Abblix/Oidc.Server)
20+
[![Share](https://img.shields.io/badge/share-0088CC?logo=telegram&logoColor=white)](https://t.me/share/url?url=https://github.com/Abblix/Oidc.Server&text=Check%20out%20this%20project%20on%20GitHub)
21+
22+
# Table of Contents
23+
- [About](#about)
24+
- [Updates](#updates)
25+
- [Comparison](#comparison)
26+
- [Build](#Build)
27+
- [Usage](#usage)
28+
- [Contributions](#contributions)
29+
- [License](#license)
30+
- [Contacts](#contacts)
31+
32+
## About
33+
Everyone loves netmiko cause it's the best at what it can do, so instead of reinventing the wheel we decided to add couple of sticks in to it by implementing some Quality-of-life features.
34+
NetDriver is a network device automation framework that enables CLI command execution through HTTP RESTful APIs.
35+
With features like session persistence for efficiency a command queue to avoid configuration conflicts and an HTTP RESTful API for simple third-party integration. With its plugin architecture which combines automation scalability and contemporary network management in a single framework it offers high concurrency and is built on top of AsyncSSH
36+
for your convinience.
737

838
NetDriver adopts a Monorepo architecture consisting of multiple sub-projects:
939

1040
- **netdriver-agent** - Provides REST APIs for device connectivity testing and command execution
1141
- **netdriver-simunet** - Simulates network device terminals for automated testing and other scenarios requiring device emulation
1242

13-
14-
## Features
43+
Features:
1544

1645
- 🌐 **HTTP RESTful API** : Easy integration with third-party platforms
1746
- 🔄 **Session Management** : Customizable session persistence for improved efficiency, eliminating repeated connections per command
1847
- 📋 **Command Queue** : Ensures sequential command execution on devices, preventing configuration errors and failures caused by concurrent modifications
1948
-**AsyncSSH Foundation** : Superior concurrency capabilities through asynchronous SSH implementation
2049
- 🔌 **Plugin Architecture** : Simplified and accelerated development of new vendor support
50+
51+
## Comparison
52+
53+
| Feature | NetDriver | Netmiko |
54+
|------------|:--------:|:----:|
55+
| **HTTP RESTful API for third-party integration** |||
56+
| **Session persistence with customizable duration** |||
57+
| **Python-based implementation** |||
58+
| **Command execution queue to prevent concurrent conflicts** |||
59+
| **Plugin architecture for easier device support development** |||
60+
| **Standard CLI automation** |||
61+
| **Open source** |||
62+
| **AsyncSSH-based architecture for high concurrency** |||
63+
2164

2265

2366
## Project Structure
@@ -43,7 +86,9 @@ netdriver/
4386
└── pyproject.toml # Project metadata and dependencies
4487
```
4588

46-
## Installation
89+
## Build
90+
91+
Fallow this steps to build our package:
4792

4893
### Prerequisites
4994

@@ -54,7 +99,7 @@ netdriver/
5499

55100
### Python Installation
56101

57-
We recommend using pyenv to manage and install Python.
102+
Recommended using pyenv to manage and install Python.
58103

59104
Install Python build dependencies
60105

@@ -196,9 +241,10 @@ Run integration tests only:
196241
poetry run pytest -m integration
197242
```
198243

199-
## Contributing
244+
##🤝 Contributions and Requests
200245

201-
Contributions are welcome! Please feel free to submit a Pull Request.
246+
Your contributions matter!Our project can always be better so we would be happy to recive your help!Please take a look at [contributing](./CONTRIBUTING.md) guide before submiting a pull request!
247+
For questions, issues, or feature requests, please open an issue on the project repository.
202248

203249
### Development Guidelines
204250

@@ -209,9 +255,9 @@ Contributions are welcome! Please feel free to submit a Pull Request.
209255

210256
## Support
211257

212-
For questions, issues, or feature requests, please open an issue on the project repository.
213258

214-
## License
259+
260+
## 📃 License
215261

216262
This project is licensed under the [Apache License 2.0](LICENSE).
217263

@@ -220,4 +266,10 @@ This project is licensed under the [Apache License 2.0](LICENSE).
220266
221267
222268
223-
269+
270+
271+
## 🗨️ Contacts
272+
273+
We look forward to assisting you and ensuring your experience with our products is successful and enjoyable!
274+
275+
[Back to top](#top)

0 commit comments

Comments
 (0)