mirror of
				https://github.com/kevinveenbirkenbach/infinito.git
				synced 2025-10-31 01:09:41 +00:00 
			
		
		
		
	Optimized documentation
This commit is contained in:
		| @@ -1,11 +1,7 @@ | ||||
| # Documentation | ||||
| ## convention | ||||
| The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, | ||||
| “SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL” in this document are to be | ||||
| “SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL” in the README.md files and in the comments of the code are to be | ||||
| interpreted as described in [RFC 2119](https://tools.ietf.org/html/rfc2119). | ||||
| 
 | ||||
| # architecture | ||||
| 
 | ||||
| ## application | ||||
| 
 | ||||
| The application MUST be based in the application folder. | ||||
| 
 | ||||
| The application MUST use Symfony 4. | ||||
| ## README.md | ||||
| Each folder SHOULD contain a README.md file, which describes the domain of the folder. | ||||
							
								
								
									
										31
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										31
									
								
								README.md
									
									
									
									
									
								
							| @@ -3,9 +3,19 @@ | ||||
| [](https://app.codacy.com/app/KevinFrantz/infinito?utm_source=github.com&utm_medium=referral&utm_content=KevinFrantz/infinito&utm_campaign=Badge_Grade_Dashboard) | ||||
| [](https://travis-ci.org/KevinFrantz/infinito) [](https://codecov.io/gh/KevinFrantz/infinito) [](https://www.gnu.org/licenses/agpl-3.0) [](https://github.com/KevinFrantz/infinito/blob/master/CODE_OF_CONDUCT.md) | ||||
|  | ||||
| ## Setup | ||||
| All setup and administration scripts you will find in the folder *administration*. | ||||
| ## Idea | ||||
| This software should offer a cloud based application\\framework for GUI based development and data management. | ||||
|  | ||||
| ### Core\\USP\\Target | ||||
| - High differentiable of rights for persons, groups and devices | ||||
| - Interface for persons and devices (IoT) | ||||
| - Support of mixtures between executables and data | ||||
| - Versioning of every state of the used data | ||||
| - Automized transparency for users about their data | ||||
| - Expanding the standard program paradigma of classes and objects through ***sources*** | ||||
| - Implementation of all big standard applications via API to manage them over one interface  | ||||
|  | ||||
| ## Setup | ||||
| To run the application you need docker. | ||||
|  | ||||
| After installing docker you just need to run | ||||
| @@ -13,8 +23,21 @@ After installing docker you just need to run | ||||
| bash ./administration/init.sh | ||||
| ``` | ||||
| in the root directory of the repository. | ||||
|  | ||||
| ## License | ||||
| The "GNU AFFERO GENERAL PUBLIC LICENSE" applies to this project. See LICENSE.txt. | ||||
| The "GNU AFFERO GENERAL PUBLIC LICENSE" applies to this project. See [LICENSE.txt](./LICENSE.txt). | ||||
|  | ||||
| ## Code of Conduct | ||||
| To contributions of this project the "Contributor Covenant Code of Conduct" applies. See CODE_OF_CONDUCT.md. | ||||
| To contributions of this project the "Contributor Covenant Code of Conduct" applies. See [CODE_OF_CONDUCT.md](./CODE_OF_CONDUCT.md). | ||||
|  | ||||
| ## Administration | ||||
| Further information you will find in the [administration README.md](./administration/README.md). | ||||
|  | ||||
| ## Application | ||||
| Further information you will find in the [application README.md](./application/README.md). | ||||
|  | ||||
| ## Documentation | ||||
| Further information you will find in the [DOCUMENTATION.md](./DOCUMENTATION.md). | ||||
|  | ||||
| ## Main Author | ||||
| [Kevin Veen-Birkenbach](kevin@veen.world) aka. [Kevin Frantz](mail@Kevin-Frantz.de).   | ||||
|   | ||||
| @@ -1,14 +1,14 @@ | ||||
| # requirements | ||||
| #administration | ||||
| 
 | ||||
| In this folder you will find all necessary scripts to run and configure the application. | ||||
| 
 | ||||
| ## requirements | ||||
| 
 | ||||
| This scripts are optimized for Ubuntu, but may they will run on MAC OS. | ||||
| 
 | ||||
| Tested on a Ubuntu 18.04.1 LTS machine. | ||||
| 
 | ||||
| # administration | ||||
| 
 | ||||
| In the administration folder you will find all necessary scripts to run and configure the application. | ||||
| 
 | ||||
| # initialization | ||||
| ## initialization | ||||
| 
 | ||||
| To initialize the docker environment, please execute in the root: | ||||
| 
 | ||||
| @@ -1,15 +1,16 @@ | ||||
| The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, | ||||
| “SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL” in this document are to be | ||||
| interpreted as described in [RFC 2119](https://tools.ietf.org/html/rfc2119). | ||||
| ## backend application | ||||
| 
 | ||||
| # standards | ||||
| ## conventions | ||||
| 
 | ||||
| ## coding standards | ||||
| ### coding | ||||
| 
 | ||||
| ### php | ||||
| #### symfony | ||||
| The application MUST use Symfony 4. coding standards | ||||
| 
 | ||||
| #### php | ||||
| PHP code MUST follow the [PSR-4](https://www.php-fig.org/psr/psr-4/) standard. | ||||
| 
 | ||||
| ### twig | ||||
| #### twig | ||||
| Twig templates MUST follow the [Symfony Template best practices](https://symfony.com/doc/current/best_practices/templates.html). | ||||
| 
 | ||||
| ### naming | ||||
| @@ -26,8 +27,8 @@ A abstract class MUST be named *AbstractClassname*. | ||||
| 
 | ||||
| It SHOULD be based in the directory of the classes which inherit from it. | ||||
| 
 | ||||
| #### entities | ||||
| ###### entities | ||||
| 
 | ||||
| ##### source | ||||
| ####### source | ||||
| 
 | ||||
| A source MUST be named *SourcenameSource*. | ||||
							
								
								
									
										0
									
								
								documentation/process/.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										0
									
								
								documentation/process/.gitignore
									
									
									
									
										vendored
									
									
								
							| @@ -1,137 +0,0 @@ | ||||
| The key words “MUST”, “MUST NOT”, “REQUIRED”, “SHALL”, “SHALL NOT”, “SHOULD”, | ||||
| “SHOULD NOT”, “RECOMMENDED”, “MAY”, and “OPTIONAL” in this document are to be | ||||
| interpreted as described in [RFC 2119](https://tools.ietf.org/html/rfc2119). | ||||
|  | ||||
| "entity" or "entities" are to be interpreted as [Doctrine Objects](https://www.doctrine-project.org/projects/doctrine-orm/en/2.6/reference/working-with-objects.html). | ||||
|  | ||||
| **Bold** words define a unique type. | ||||
|  | ||||
| # requiremts | ||||
|  | ||||
| ## interfaces | ||||
| The application MUST contain the following interfaces: | ||||
| * HTML | ||||
| * JSON | ||||
|  | ||||
| ## actors | ||||
|  | ||||
| ### user | ||||
| The application MUST provide the following functions: | ||||
| * delete user | ||||
| * register user | ||||
| * modify user | ||||
| * create user (child) | ||||
| * login | ||||
| * logout | ||||
|  | ||||
| A **user** MUST have one **node**. | ||||
|  | ||||
| A **user** MUST be a **source**. | ||||
|  | ||||
| ### law | ||||
| A **law** MUST belong exclusive to a **node**. | ||||
|  | ||||
| A **law** MUST contain one of each of **right** types one time. | ||||
|  | ||||
| #### right | ||||
| A **right** MUST NOT be a **source**. | ||||
|  | ||||
| A **right** MUST belong to a **law**. | ||||
|  | ||||
| A **right** MUST be of one of the following types: | ||||
| * read | ||||
| * write | ||||
| * administrate | ||||
|  | ||||
| #### permission | ||||
| A **permission** MAY have a father from which it inherit. | ||||
|  | ||||
| A **permission** MUST belong to a **right**. | ||||
|  | ||||
| A **permission** MUST allow blacklisting. | ||||
|  | ||||
| A **permission** MUST allow whitelisting. | ||||
|  | ||||
| A **permission** MUST allow that it applies to the parent **relative collection** s of the rule set. | ||||
|  | ||||
| A **permission** MUST allow that it applies to the child **relative collection** s of the rule set. | ||||
|  | ||||
| A **permission** MUST contain a **collection** on which the rule set applies. | ||||
|  | ||||
| ### node | ||||
| A **node** MUST have one **source**. | ||||
|  | ||||
| A **node** MUST contain a parent **relative collection**. | ||||
|  | ||||
| A **node** MUST contain a children **relative collection**. | ||||
|  | ||||
| A **node** MAY be a member of one or more **relative collection** s. | ||||
|  | ||||
| A **node** MAY be a member of one or more **collection** entity. | ||||
|  | ||||
| A **node** MUST have a **law**. | ||||
|  | ||||
| A **node** MUST have a **history**. | ||||
|  | ||||
| #### relative collection | ||||
|  | ||||
| A **relative collection** MUST belong to a **node**. | ||||
|  | ||||
| A **relative collection** MUST contain **node** s. | ||||
|  | ||||
| A **relative collection** MUST provide the following functions: | ||||
| * get all relatives | ||||
| * get specific relative | ||||
| * get relatives | ||||
| * get relatives of generation | ||||
|  | ||||
| ### source | ||||
| A **source** MUST have one node. | ||||
|  | ||||
| A **source** MUST be an entity. | ||||
|  | ||||
| A **source** MUST contain a file fabric. | ||||
|  | ||||
| #### entities | ||||
| Sources MUST be on of the following entities: | ||||
|  | ||||
| entity|attributes | ||||
| --- | --- | ||||
| user|username,password,identity | ||||
| identity|names,addresses | ||||
| address| | ||||
| date|datetime | ||||
| name|string | ||||
| birthday|date | ||||
| death|date | ||||
| text|text(varchar) | ||||
| collection|nodes | ||||
| live|birthday,death | ||||
|  | ||||
| #### file | ||||
|  | ||||
| A **file** MUST be on of the following types: | ||||
|  | ||||
| * HTML | ||||
| * JSON | ||||
| * XML | ||||
| * TEXT | ||||
| * CSV | ||||
| * JPG | ||||
| * MD | ||||
|  | ||||
| It SHOULD be possible to export a **file** to one or more other **file** s. | ||||
|  | ||||
| It MUST be possible to edit a **file**. | ||||
|  | ||||
| IT MUST be possible to save a **file**. | ||||
|  | ||||
| #### collection | ||||
| A **source** MAY contain other **nodes**. | ||||
|  | ||||
| ### history | ||||
| A **history** MUST log all of the actions which happen to a **node**. | ||||
|  | ||||
| A **history** MUST exclusive belong to a **node**. | ||||
|  | ||||
| A **history** MUST allow to give the state of a **node** of a special date back. | ||||
		Reference in New Issue
	
	Block a user