-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
create readme, clean up incl. gitignore
- Loading branch information
1 parent
081ec66
commit a9bd713
Showing
15 changed files
with
247 additions
and
33 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
/build/* | ||
/coben.egg-info/* | ||
/dist/* |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
include README.md | ||
include requirements.txt | ||
recursive-include coben/utils * |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,106 @@ | ||
# coben | ||
# Coben | ||
|
||
Coben is a comprehensive tool designed to manage and streamline all aspects of software development. It provides a holistic and hardware-agnostic approach to handle every stage of the development process, from conception and architecture to testing, compiling, code change notifications, and more. The tool ensures synergy across all development disciplines, enhancing overall productivity and efficiency. | ||
|
||
## Features | ||
|
||
- **Holistic Development Management**: Coben covers every stage of the development lifecycle, ensuring a seamless and integrated workflow. | ||
- **Hardware-Agnostic**: Designed to work with various hardware platforms, including plain systems, ESP32, ARM64, and more. | ||
- **Project Conception and Architecture**: Tools to help you plan and structure your projects effectively. | ||
- **Comprehensive Testing**: Automated testing and validation to maintain high code quality. | ||
- **Compilation and Build Management**: Simplifies the build process across different platforms. | ||
- **Code Change Notifications**: Monitors and notifies about code changes, ensuring all team members are up-to-date. | ||
- **Synergistic Approach**: Every feature is designed to complement others, providing synergy across different development tasks. | ||
|
||
## Installation | ||
|
||
You can install Coben using pip: | ||
|
||
```sh | ||
pip install coben | ||
``` | ||
|
||
## Usage | ||
|
||
### Initialize a New Project | ||
|
||
To create a new project: | ||
|
||
```sh | ||
coben init <project_name> --platform <platform> | ||
``` | ||
|
||
### Build the Project | ||
|
||
To build the project: | ||
|
||
```sh | ||
coben build <project_name> | ||
``` | ||
|
||
### Check the Project | ||
|
||
To perform checks on the project: | ||
|
||
```sh | ||
coben check <project_name> | ||
``` | ||
|
||
### Run the Project | ||
|
||
To run the project: | ||
|
||
```sh | ||
coben run <project_name> | ||
``` | ||
|
||
### Monitor the Project | ||
|
||
To monitor the project's runtime behavior: | ||
|
||
```sh | ||
coben monitor <project_name> | ||
``` | ||
|
||
### Serve Documentation | ||
|
||
To serve the project's documentation using MkDocs: | ||
|
||
```sh | ||
coben docu <project_name> | ||
``` | ||
|
||
### Synchronize Files and Documentation | ||
|
||
To synchronize project files and update related documentation: | ||
|
||
```sh | ||
coben sync <project_name> | ||
``` | ||
|
||
### Update Project from Directories | ||
|
||
To update UML and documentation from project directories: | ||
|
||
```sh | ||
coben from-dirs <project_name> | ||
``` | ||
|
||
## Project Structure | ||
|
||
Coben organizes your project with a well-defined structure: | ||
|
||
(TODO) | ||
|
||
## Contributing | ||
|
||
Contributions are welcome! Please read the [CONTRIBUTING.md](CONTRIBUTING.md) for details on our code of conduct and the process for submitting pull requests. | ||
|
||
## License | ||
|
||
This project is licensed under the Apache License - see the [LICENSE](LICENSE) file for details. | ||
|
||
## Acknowledgements | ||
|
||
Special thanks to all contributors and the open-source community for their support and contributions. | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
mkdocs | ||
plantuml | ||
clang | ||
psutil | ||
mkdocs-plantuml | ||
plantuml-markdown | ||
mkdocs-include-markdown-plugin | ||
mkdocs-extra-sass-plugin | ||
mkdocs-git-revision-date-localized-plugin | ||
mkdocs-material | ||
mkdocs-material-extensions | ||
mkdocs-with-pdf | ||
weasyprint | ||
regex | ||
libsass | ||
jinja2 | ||
mkdocs_puml | ||
ruamel.yaml | ||
click |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
from setuptools import setup, find_packages | ||
|
||
setup( | ||
name='coben', | ||
version='0.1.0', | ||
description='A tool to manage and streamline software project workflows.', | ||
long_description=open('README.md').read(), | ||
long_description_content_type='text/markdown', | ||
author='Dieter Steuten', | ||
author_email='dieter@dingste.de', | ||
url='https://github.com/dingste/coben', | ||
packages=find_packages(), | ||
include_package_data=True, | ||
install_requires=[ | ||
'mkdocs', | ||
'plantuml', | ||
'clang', | ||
'psutil', | ||
'mkdocs-plantuml', | ||
'plantuml-markdown', | ||
'mkdocs-include-markdown-plugin', | ||
'mkdocs-extra-sass-plugin', | ||
'mkdocs-git-revision-date-localized-plugin', | ||
'mkdocs-material', | ||
'mkdocs-material-extensions', | ||
'mkdocs-with-pdf', | ||
'weasyprint', | ||
'regex', | ||
'libsass', | ||
'jinja2', | ||
'mkdocs_puml', | ||
'ruamel.yaml', | ||
'click', | ||
], | ||
entry_points={ | ||
'console_scripts': [ | ||
'coben=coben.coben:main', | ||
], | ||
}, | ||
classifiers=[ | ||
'Programming Language :: Python :: 3', | ||
'License :: OSI Approved :: Apache Software License', | ||
'Operating System :: OS Independent', | ||
], | ||
python_requires='>=3.6', | ||
) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
import unittest | ||
from coben.coben import parse_hierarchy, format_puml_content, extract_uml_content | ||
|
||
class TestCoben(unittest.TestCase): | ||
|
||
def test_parse_hierarchy(self): | ||
uml_content = """ | ||
class A { | ||
} | ||
class B { | ||
} | ||
""" | ||
hierarchy = parse_hierarchy(uml_content) | ||
expected = {'A': {}, 'B': {}} | ||
self.assertEqual(hierarchy, expected) | ||
|
||
def test_format_puml_content(self): | ||
puml_content = """ | ||
class A { | ||
} | ||
""" | ||
formatted_content = format_puml_content(puml_content) | ||
expected = "class A {\n}" | ||
self.assertEqual(formatted_content.strip(), expected.strip()) | ||
|
||
def test_extract_uml_content(self): | ||
diff_content = """ | ||
```puml | ||
class A { | ||
} | ||
``` | ||
""" | ||
uml_content = extract_uml_content(diff_content) | ||
expected = "class A {\n}" | ||
self.assertEqual(uml_content.strip(), expected.strip()) | ||
|
||
if __name__ == '__main__': | ||
unittest.main() |