Core-Web-Hub


  ██████╗ ██████╗ ██████╗ ███████╗    ██╗    ██╗███████╗██████╗ 
 ██╔════╝██╔═══██╗██╔══██╗██╔════╝    ██║    ██║██╔════╝██╔══██╗
 ██║     ██║   ██║██████╔╝█████╗      ██║ █╗ ██║█████╗  ██████╔╝
 ██║     ██║   ██║██╔══██╗██╔══╝      ██║███╗██║██╔══╝  ██╔══██╗
 ╚██████╗╚██████╔╝██║  ██║███████╗    ╚███╔███╔╝███████╗██████╔╝
  ╚═════╝ ╚═════╝ ╚═╝  ╚═╝╚══════╝     ╚══╝╚══╝ ╚══════╝╚═════╝ 
  

Core Web

A production-ready, multi-protocol web platform built with Rust

CI Status CodeQL Status Security Audit Status Crates.io Documentation License


🚀 Welcome to Core Web

Core Web is a comprehensive, production-ready web platform built with Rust that provides everything you need to build scalable, secure, and high-performance web applications. With support for multiple protocols, advanced security features, and enterprise-grade observability, Core Web is designed to handle the most demanding workloads.

 ██████╗ ██████╗ ██████╗ ███████╗    ██╗    ██╗███████╗██████╗ 
██╔════╝██╔═══██╗██╔══██╗██╔════╝    ██║    ██║██╔════╝██╔══██╗
██║     ██║   ██║██████╔╝█████╗      ██║ █╗ ██║█████╗  ██████╔╝
██║     ██║   ██║██╔══██╗██╔══╝      ██║███╗██║██╔══╝  ██╔══██╗
╚██████╗╚██████╔╝██║  ██║███████╗    ╚███╔███╔╝███████╗██████╔╝
 ╚═════╝ ╚═════╝ ╚═╝  ╚═╝╚══════╝     ╚══╝╚══╝ ╚══════╝╚═════╝ 

✨ Key Features

🌐 Multi-Protocol Support

🗄️ Multi-Database Integration

🔒 Advanced Security

📈 Observability & Monitoring

⚡ Performance & Resilience

🛠️ Developer Experience

📦 Architecture Overview

┌─────────────────────────────────────────────────────────────┐
│                    Load Balancer/Proxy                      │
└─────────────────────┬───────────────────────────────────────┘
                      │
┌─────────────────────┴───────────────────────────────────────┐
│                    Core Web Server (8080)                   │
│  ┌─────────────┐  ┌─────────────┐  ┌─────────────────────┐ │
│  │   REST API  │  │  GraphQL    │  │       gRPC          │ │
│  └─────────────┘  └─────────────┘  └─────────────────────┘ │
│  ┌─────────────────────────────────────────────────────────┐ │
│  │                 Authentication & AuthZ                  │ │
│  └─────────────────────────────────────────────────────────┘ │
└─────────────────────┬───────────────────────────────────────┘
                      │
        ┌─────────────┼─────────────┐            ┌────────────┐
        │             │             │            │            │
┌───────▼──┐   ┌──────▼──┐  ┌───────▼──┐  ┌──────▼──┐   ┌─────▼──────┐
│  MySQL   │   │  Redis  │  │ MongoDB  │  │ClickHouse│   │ WASM Host  │
│ (Primary)│   │(Caching)│  │(Documents)│  │(Analytics)│   │ (Plugins)  │
└──────────┘   └─────────┘  └──────────┘  └──────────┘   └────────────┘
        │             │             │            │            │
        └─────────────┼─────────────┘            │            │
                      │                          │            │
              ┌───────▼───────┐          ┌───────▼──────┐     │
              │ Job Workers   │          │   Events     │     │
              │ (Background)  │          │ (Streaming)  │     │
              └───────────────┘          └──────────────┘     │
                      │                          │            │
              ┌───────▼───────┐          ┌───────▼──────┐     │
              │ Outbox Pattern│          │ Redis Streams│     │
              │   Publisher   │          │  Consumer    │     │
              └───────────────┘          └──────────────┘     │
                                                             │
                                                     ┌───────▼───────┐
                                                     │ Admin Dashboard│
                                                     │   (Yew/WASM)  │
                                                     └───────────────┘

🚀 Quick Start

Prerequisites

1. Clone the Repository

git clone https://github.com/your-org/core-web.git
cd core-web

2. Start Supporting Services

./scripts/dev-up.sh

3. Run the Main Web Server

cd apps/core-web
cargo run

The server will start on port 8080. Visit http://localhost:8080/healthz to verify it’s running.

🧪 Testing

Run the full test suite:

cargo test

📚 Documentation

🛠️ CLI Tool

Core Web includes a powerful CLI tool for managing the application:

# Navigate to the CLI crate
cd crates/core-cli

# Run CLI commands
cargo run -- --help        # Show help
cargo run -- start         # Start the server
cargo run -- status        # Check server status
cargo run -- health        # Run health checks
cargo run -- logs          # View logs

🛡️ Security

Core Web takes security seriously. We implement several measures to ensure the safety and integrity of our codebase:

For security-related issues, please see our Security Policy.

📈 Performance

Core Web is optimized for high performance:

🤝 Contributing

We welcome contributions! Please see our Contributing Guide for details on how to get started.

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a pull request

Please also read our Code of Conduct before contributing.

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

🙏 Acknowledgments

📞 Support

For support, please open an issue on GitHub.

Project Maintainers:

🚀 Scaling Up

Core Web is designed with scalability in mind. The architecture supports horizontal scaling through:

To scale the application:

  1. Vertical Scaling: Increase resources (CPU, RAM) for existing instances
  2. Horizontal Scaling: Add more instances behind a load balancer
  3. Database Scaling: Implement read replicas and sharding strategies
  4. Caching: Expand Redis cluster for better performance
  5. Background Jobs: Scale job workers independently based on workload

For production deployments, consider using the provided Kubernetes manifests in the k8s/ directory to orchestrate scaling automatically based on metrics and resource usage.


Made with ❤️ and 🦀 Rust