Skip to content

Commit de7c0ca

Browse files
author
nicosammito
committed
add initial README with project overview, architecture, and contribution guidelines
0 parents  commit de7c0ca

1 file changed

Lines changed: 52 additions & 0 deletions

File tree

README.md

Lines changed: 52 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,52 @@
1+
# CodeZero
2+
3+
> **Placeholder for project logo**
4+
>
5+
> ![Codezero Logo](./docs/images/codezero-logo.png)
6+
7+
## What is CodeZero?
8+
9+
CodeZero is an open-source platform for building, managing, and automating flows, as well as organizing projects, organizations, roles, members, and users. It enables comprehensive process automation and organizational management in a scalable, modular system.
10+
11+
A "flow" in CodeZero is a sequence of connected nodes, each representing a step in a process. Flows can be used to automate business logic, data processing, integrations, and more. Projects and organizations provide structure and access control, while roles and members enable fine-grained permissions and collaboration.
12+
13+
## Architecture & Infrastructure
14+
15+
- **Frontend (sculptor):** The main user interface, built with Next.js and React. Users create and manage flows, projects, organizations, and more. Sculptor communicates directly with the backend service.
16+
- **Backend (sagittarius):** Central service for data storage, orchestration, and validation. All data (flows, projects, organizations, users, etc.) is persisted here. Sculptor communicates exclusively with Sagittarius.
17+
- **Runtime Block:**
18+
- **Aquila:** Gateway for a runtime. Manages connections, receives triggers, and coordinates execution.
19+
- **Taurus:** Executes flows. Contains all standard functions and data types. Highly scalable and can be extended with custom logic.
20+
- **Draco:** Adapter for external requests (e.g., HTTP, MQTT). Triggers executions in the runtime.
21+
- **Actions & Action SDK:** Plugin system for extending runtimes. Actions can define new flow types, nodes, and triggers. They connect to Aquila and can be developed independently.
22+
- **Runtimes:** Any number of runtime blocks can connect to Sagittarius. Each service (Aquila, Taurus, Draco) is individually scalable. This allows for hybrid setups: use the frontend in the cloud and connect your own local runtimes for self-hosting and data sovereignty.
23+
24+
## Key Concepts
25+
26+
- **Project:** Workspace for organizing flows, resources, and settings.
27+
- **Organization:** Collection of projects and users, representing a company or team.
28+
- **Role:** Defines permissions and access rights for members.
29+
- **Member:** User assigned to a project or organization with a specific role.
30+
- **User:** Individual account in the system.
31+
- **Flow:** Directed graph of nodes, representing a process or automation. Flows have settings to control their behavior.
32+
- **Node:** An individual step in a flow, with parameters and logic.
33+
- **Flow Type:** Defines the structure, input, and output types for a flow.
34+
- **Parameter:** Nodes have parameters that define their input and configuration.
35+
- **Action:** Plugin that extends a runtime with new flow types, nodes, and triggers.
36+
37+
> **Placeholder for architecture diagram**
38+
>
39+
> ![Architecture Overview](./docs/images/architecture-overview.png)
40+
41+
42+
## Contribution & Community
43+
44+
CodeZero is modular and extensible. You can define new flow types, nodes, roles, organizational structures, and extend runtimes with Actions. Contributions are welcome—join the community to help improve process automation and organizational management.
45+
46+
## License
47+
48+
The licensing for CodeZero and its components may vary. Please refer to the LICENSE file(s) in each subproject for details. Not all components are under the MIT license, and some restrictions may apply.
49+
50+
---
51+
52+
*Made with ❤️ by the CodeZero community*

0 commit comments

Comments
 (0)