Skip to content

CortexBrain is an ambitious open source project aimed at creating an intelligent, lightweight, and efficient service mesh architecture to seamlessly connect cloud and edge devices

License

Notifications You must be signed in to change notification settings

CortexFlow/CortexBrain

CortexBrain © 2025

Release License Documentation Trello Docker Kubernetes Discussions Contributors

Dev.To

alt text

📬Contacts

🧑‍💻What is CortexBrain?

CortexBrain is an ambitious open source project aimed at creating an intelligent, lightweight, and efficient architecture to seamlessly connect cloud and edge devices.

⚛️ Current Development Focus

Our current development efforts are dedicated to the following key improvements:

  • 🔧 System Architecture: Optimizing the actual architecture by eliminating sidecar proxies while maintaining scalability
  • 🌐 Kernel-Level Observability with eBPF: Enhancing system observability by leveraging eBPF to collect logs,metrics at the kernel level
  • 📊 Expanded Metrics: Extending the current metrics landscape to provide deeper understanding
  • 🖥️ Integrating a Command Line Interface: We're actually working on a CLI to let users interact with the cluster without any stress or frustation. You can track the progress of the CLI tool by referring to the [Milestone]
  • 📡 Cloud-Edge Multi-Cluster Integration: Enabling orchestration between cloud environments and edge devices

Architecture

🤖 Getting Started

CortexBrain is still in its development stages, so you can expect some bugs. Contributions and feedback are highly appreciated to help improve the project! 🚀
Below there's a guide to get started

🥷 Installation

To get started with CortexBrain, follow these steps:

  • Clone the Repository: First, clone the repository to your local machine.

    git clone https://github.com/CortexFlow/CortexBrain.git
  • Install required packages:

    Feature Requirements
    CortexBrain Core - Kubernetes or Minikube v1.34.0
    - Linux Ubuntu system (preferred for development)
    - Rust programming language (rustc >= 1.83.0)
    CortexBrain Dashboard - npm v10.7.0
    - React v18.2.0
    - Electron v33.2.0
  • Core Development:

    1. Install Rust using RustUp tools :
      curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
    2. Install Docker
    3. Install Minikube
    4. Run minikube
      minikube start
    5. Run the installation script:
         cd Scripts
         ./install.sh
  • Dashboard Development:

    1. Install Node.js
    2. Open the dashboard folder and install the required packages
         cd dashboard
         npm install 
    3. Run the local development server
         npm start 

💪🏻 Contributing

Do you think the project is missing something? Contributing is the best way to show your skills and leave your mark in a project If you have knowledge in DevOps/Kubernetes or Networks please write an email to lorenzotettamanti5@gmail.com

Role Skills Tasks Related Issues and Milestones
CortexBrain Core Developer - Kubernetes
- Networks
- Rust programming language
- Work alongside us to build and optimize the core functionalities (Client,DNS,Proxy,Telemetry,etc..)
- Rust
- Core
CortexBrain Dashboard Developer - React
- Frontend Development
- Javascript/TypeScript
- Work alongside us to design and improve the dashboard
Javascript
General Mantainers - Github
- Practical organition
- Documentation
- Keep the repository organized and clean
- Write/Update documentation
- Spot typos in the repository
- Documentation
- question
Code Reviewers/Testers - Rust
- Javascript/TypeScript
- Kubernetes
- Docker
- Review code and suggest changes/optimizations
- Write tests for CI/CD
Code refactoring

🤖 How to Contribute?

We welcome contributions from the community! To contribute to the project, please follow these steps:

  1. Fork the repository.
  2. Check out Contributing Best Practices
  3. Create a new branch for your feature (git checkout -b feature/feature-name).
  4. Submit a Pull Request with a detailed explanation of your changes.

🙋Proposing New Features

If you would like to contribute a new feature, we ask you to open a discussion before submitting a PR. This is to ensure that all new features align with the project's goals and to avoid overlapping work or conflicting views.

Please initiate a discussion in the GitHub Discussions section where we can collectively review, refine, and approve your idea before you begin implementation. Pull Requests for new features that have not been discussed beforehand may be declined to maintain project coherence and ensure alignment with the broader roadmap.

By collaborating in this manner, we can maintain clarity and consistency, ensuring that all contributors are working towards the same objectives. Thank you for your understanding and contributions!

🐐 Top contributors

Top contributors