Spaces:
Running
Running
I’ll generate a complete **GitHub repo layout** with all essential config files, Dockerfiles, Helm charts, CI/CD, monitoring, and deployment scaffolds — fully ready to launch your trillion-scale SaaS platform from Spaces. --- # **Full GitHub Repo Layout for TOTALITY\_SAAS** ``` totality_saas/ ├── README.md ├── spaces/ │ ├── space_app_1/ │ │ ├── app.py │ │ ├── requirements.txt │ │ └── Dockerfile │ └── space_app_2/ │ ├── app.py │ ├── requirements.txt │ └── Dockerfile ├── dockerfiles/ │ └── generic.Dockerfile ├── helm_charts/ │ ├── space_app_1/ │ │ ├── Chart.yaml │ │ ├── values.yaml │ │ └── templates/ │ │ ├── deployment.yaml │ │ └── service.yaml │ └── space_app_2/ │ ├── Chart.yaml │ ├── values.yaml │ └── templates/ │ ├── deployment.yaml │ └── service.yaml ├── ci_cd/ │ └── github-actions.yaml ├── monitoring/ │ ├── prometheus-deployment.yaml │ ├── grafana-deployment.yaml │ └── dashboards/ │ └── totality-dashboard.json ├── api_gateway/ │ └── nginx-ingress.yaml ├── ray_serve/ │ └── ray-serve-cluster.yaml ├── terraform/ │ └── multi-cloud-clusters.tf └── scripts/ ├── build_and_deploy.sh └── scale_autoscaler.yaml ``` --- # Key file templates for each: --- ### 1. `dockerfiles/generic.Dockerfile` ```Dockerfile FROM python:3.10-slim WORKDIR /app COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt COPY . . EXPOSE 7860 CMD ["python", "app.py"] ``` --- ### 2. `spaces/space_app_1/Dockerfile` ```Dockerfile # Use generic base dockerfile or override here FROM python:3.10-slim WORKDIR /app COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt COPY . . EXPOSE 7860 CMD ["python", "app.py"] ``` *(Repeat per app)* --- ### 3. `helm_charts/space_app_1/Chart.yaml` ```yaml apiVersion: v2 name: space_app_1 description: Helm chart for space_app_1 version: 0.1.0 appVersion: "1.0" ``` --- ### 4. `helm_charts/space_app_1/values.yaml` ```yaml replicaCount: 2 image: repository: ghcr.io/agentcyone/space_app_1 tag: latest service: type: ClusterIP port: 80 resources: requests: cpu: 250m memory: 512Mi limits: cpu: 500m memory: 1Gi ``` --- ### 5. `helm_charts/space_app_1/templates/deployment.yaml` ```yaml apiVersion: apps/v1 kind: Deployment metadata: name: space_app_1 spec: replicas: {{ .Values.replicaCount }} selector: matchLabels: app: space_app_1 template: metadata: labels: app: space_app_1 spec: containers: - name: space_app_1 image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}" ports: - containerPort: 7860 resources: requests: cpu: {{ .Values.resources.requests.cpu }} memory: {{ .Values.resources.requests.memory }} limits: cpu: {{ .Values.resources.limits.cpu }} memory: {{ .Values.resources.limits.memory }} ``` --- ### 6. `helm_charts/space_app_1/templates/service.yaml` ```yaml apiVersion: v1 kind: Service metadata: name: space_app_1-service spec: type: {{ .Values.service.type }} selector: app: space_app_1 ports: - protocol: TCP port: {{ .Values.service.port }} targetPort: 7860 ``` --- ### 7. `ci_cd/github-actions.yaml` ```yaml name: Totality Spaces CI/CD on: push: branches: [main] jobs: build_and_deploy: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Set up Docker Buildx uses: docker/setup-buildx-action@v2 - name: Login to GitHub Container Registry uses: docker/login-action@v2 with: registry: ghcr.io username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} - name: Build and push images run: | for app in spaces/*; do appname=$(basename "$app") docker build -t ghcr.io/agentcyone/$appname:latest $app docker push ghcr.io/agentcyone/$appname:latest helm upgrade --install $appname helm_charts/$appname --namespace totality --create-namespace done ``` --- ### 8. `monitoring/prometheus-deployment.yaml` ```yaml apiVersion: apps/v1 kind: Deployment metadata: name: prometheus namespace: totality spec: replicas: 1 selector: matchLabels: app: prometheus template: metadata: labels: app: prometheus spec: containers: - name: prometheus image: prom/prometheus:latest ports: - containerPort: 9090 volumeMounts: - mountPath: /etc/prometheus name: config volumes: - name: config configMap: name: prometheus-config --- apiVersion: v1 kind: Service metadata: name: prometheus namespace: totality spec: type: ClusterIP ports: - port: 9090 selector: app: prometheus ``` --- ### 9. `monitoring/grafana-deployment.yaml` ```yaml apiVersion: apps/v1 kind: Deployment metadata: name: grafana namespace: totality spec: replicas: 1 selector: matchLabels: app: grafana template: metadata: labels: app: grafana spec: containers: - name: grafana image: grafana/grafana:latest ports: - containerPort: 3000 --- apiVersion: v1 kind: Service metadata: name: grafana namespace: totality spec: type: ClusterIP ports: - port: 3000 selector: app: grafana ``` --- ### 10. `api_gateway/nginx-ingress.yaml` ```yaml apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: totality-ingress namespace: totality annotations: nginx.ingress.kubernetes.io/rewrite-target: / spec: rules: - http: paths: {{- range $app := (list "space_app_1" "space_app_2") }} - path: /api/{{ $app }} pathType: Prefix backend: service: name: {{ $app }}-service port: number: 80 {{- end }} ``` --- ### 11. `ray_serve/ray-serve-cluster.yaml` ```yaml apiVersion: ray.io/v1alpha1 kind: RayCluster metadata: name: totality-ray-cluster namespace: totality spec: headGroupSpec: serviceType: ClusterIP replicas: 1 template: spec: containers: - name: ray-head image: rayproject/ray:latest command: ["ray", "start", "--head", "--dashboard-host", "0.0.0.0"] ports: - containerPort: 8265 # Ray dashboard - containerPort: 6379 workerGroupSpecs: - replicas: 3 template: spec: containers: - name: ray-worker image: rayproject/ray:latest command: ["ray", "start", "--address", "ray-head:6379"] ``` --- ### 12. `terraform/multi-cloud-clusters.tf` ```hcl # Example stub: Define clusters for GCP, AWS, Azure using Terraform providers provider "google" { project = var.gcp_project region = var.gcp_region } provider "aws" { region = var.aws_region } provider "azurerm" { features {} subscription_id = var.azure_subscription_id tenant_id = var.azure_tenant_id client_id = var.azure_client_id client_secret = var.azure_client_secret } # Define Kubernetes clusters, nodes, and networking in each provider # Full configs depend on your cloud environment and credentials ``` --- ### 13. `scripts/build_and_deploy.sh` ```bash #!/bin/bash set -euo pipefail echo "🔨 Building all Docker images and pushing..." for app in ../spaces/*; do appname=$(basename "$app") docker build -t ghcr.io/agentcyone/$appname:latest "$app" docker push ghcr.io/agentcyone/$appname:latest done echo "🚀 Deploying Helm charts..." for app in ../helm_charts/*; do appname=$(basename "$app") helm upgrade --install $appname "$app" --namespace totality --create-namespace done echo "✅ Build and deploy complete." ``` --- ### 14. `scripts/scale_autoscaler.yaml` ```yaml apiVersion: autoscaling/v2 kind: HorizontalPodAutoscaler metadata: name: totality-autoscaler namespace: totality spec: scaleTargetRef: apiVersion: apps/v1 kind: Deployment name: space_app_1 minReplicas: 2 maxReplicas: 20 metrics: - type: Resource resource: name: cpu target: type: Utilization averageUtilization: 50 ``` --- # Summary * Each Space app in `spaces/` has Dockerfile + requirements.txt + app.py * Corresponding Helm charts in `helm_charts/` with deployment + service manifests * CI/CD pipeline configured for build & deploy * Monitoring via Prometheus + Grafana manifests * NGINX ingress for unified API gateway routing * Ray Serve cluster manifest for scalable serving * Terraform stubs for multi-cloud clusters * Autoscaler sample manifest * Shell scripts for build & deploy automation --- If you want, I can **generate all these files as downloadable package** or generate specific folder trees/files on your system n - Follow Up Deployment
Browse files- index.html +265 -6
index.html
CHANGED
|
@@ -51,10 +51,15 @@
|
|
| 51 |
</div>
|
| 52 |
<div class="hidden md:flex items-center space-x-8">
|
| 53 |
<a href="#" class="text-indigo-600 font-medium">Home</a>
|
| 54 |
-
<a href="#" class="text-gray-600 hover:text-indigo-600 transition">
|
| 55 |
-
<a href="#" class="text-gray-600 hover:text-indigo-600 transition">
|
| 56 |
-
<a href="#" class="text-gray-600 hover:text-indigo-600 transition">
|
| 57 |
-
<
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 58 |
</div>
|
| 59 |
<div class="md:hidden flex items-center">
|
| 60 |
<button id="menu-btn" class="text-gray-600 hover:text-indigo-600">
|
|
@@ -62,6 +67,12 @@
|
|
| 62 |
</button>
|
| 63 |
</div>
|
| 64 |
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 65 |
</div>
|
| 66 |
|
| 67 |
<!-- Mobile menu -->
|
|
@@ -127,7 +138,60 @@
|
|
| 127 |
</div>
|
| 128 |
</section>
|
| 129 |
|
| 130 |
-
<!--
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 131 |
<section class="py-16 md:py-24 bg-white">
|
| 132 |
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
|
| 133 |
<div class="text-center mb-16">
|
|
@@ -203,6 +267,83 @@
|
|
| 203 |
Join thousands of developers in the thriving Tailwind CSS community.
|
| 204 |
</p>
|
| 205 |
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 206 |
</div>
|
| 207 |
</div>
|
| 208 |
</section>
|
|
@@ -227,8 +368,126 @@
|
|
| 227 |
</div>
|
| 228 |
</section>
|
| 229 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 230 |
<!-- Footer -->
|
| 231 |
-
<footer class="bg-gray-900 text-white
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 232 |
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
|
| 233 |
<div class="grid grid-cols-1 md:grid-cols-4 gap-8">
|
| 234 |
<div>
|
|
|
|
| 51 |
</div>
|
| 52 |
<div class="hidden md:flex items-center space-x-8">
|
| 53 |
<a href="#" class="text-indigo-600 font-medium">Home</a>
|
| 54 |
+
<a href="#" class="text-gray-600 hover:text-indigo-600 transition">Solutions</a>
|
| 55 |
+
<a href="#" class="text-gray-600 hover:text-indigo-600 transition">Platform</a>
|
| 56 |
+
<a href="#" class="text-gray-600 hover:text-indigo-600 transition">Partners</a>
|
| 57 |
+
<a href="#" class="text-gray-600 hover:text-indigo-600 transition">Resources</a>
|
| 58 |
+
<a href="#" class="text-gray-600 hover:text-indigo-600 transition">Company</a>
|
| 59 |
+
<div class="flex space-x-4 ml-4">
|
| 60 |
+
<button class="border border-indigo-600 text-indigo-600 px-4 py-2 rounded-md hover:bg-indigo-50 transition">Contact Sales</button>
|
| 61 |
+
<button class="bg-indigo-600 text-white px-4 py-2 rounded-md hover:bg-indigo-700 transition">Request Demo</button>
|
| 62 |
+
</div>
|
| 63 |
</div>
|
| 64 |
<div class="md:hidden flex items-center">
|
| 65 |
<button id="menu-btn" class="text-gray-600 hover:text-indigo-600">
|
|
|
|
| 67 |
</button>
|
| 68 |
</div>
|
| 69 |
</div>
|
| 70 |
+
<div class="text-center mt-16">
|
| 71 |
+
<h3 class="text-2xl font-bold mb-4">AI Partners</h3>
|
| 72 |
+
<p class="text-gray-600 max-w-3xl mx-auto">
|
| 73 |
+
We collaborate with leading AI providers to bring you the most advanced capabilities
|
| 74 |
+
</p>
|
| 75 |
+
</div>
|
| 76 |
</div>
|
| 77 |
|
| 78 |
<!-- Mobile menu -->
|
|
|
|
| 138 |
</div>
|
| 139 |
</section>
|
| 140 |
|
| 141 |
+
<!-- Solutions Section -->
|
| 142 |
+
<section class="py-16 bg-white">
|
| 143 |
+
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
|
| 144 |
+
<div class="text-center mb-16">
|
| 145 |
+
<h2 class="text-3xl md:text-4xl font-bold mb-4">Enterprise-Grade Solutions</h2>
|
| 146 |
+
<p class="text-lg text-gray-600 max-w-2xl mx-auto">
|
| 147 |
+
Tailored AI solutions for your most complex business challenges
|
| 148 |
+
</p>
|
| 149 |
+
</div>
|
| 150 |
+
|
| 151 |
+
<div class="grid grid-cols-1 md:grid-cols-3 gap-8">
|
| 152 |
+
<div class="bg-gray-50 p-8 rounded-xl border border-gray-200">
|
| 153 |
+
<div class="w-14 h-14 bg-blue-100 rounded-lg flex items-center justify-center mb-6">
|
| 154 |
+
<i class="fas fa-shield-alt text-blue-600 text-2xl"></i>
|
| 155 |
+
</div>
|
| 156 |
+
<h3 class="text-xl font-semibold mb-4">Secure Deployment</h3>
|
| 157 |
+
<p class="text-gray-600 mb-6">
|
| 158 |
+
On-premises, cloud, or hybrid deployment options with enterprise-grade security
|
| 159 |
+
</p>
|
| 160 |
+
<a href="#" class="text-blue-600 font-medium hover:text-blue-700 flex items-center">
|
| 161 |
+
Learn more <i class="fas fa-arrow-right ml-2"></i>
|
| 162 |
+
</a>
|
| 163 |
+
</div>
|
| 164 |
+
|
| 165 |
+
<div class="bg-gray-50 p-8 rounded-xl border border-gray-200">
|
| 166 |
+
<div class="w-14 h-14 bg-purple-100 rounded-lg flex items-center justify-center mb-6">
|
| 167 |
+
<i class="fas fa-chart-network text-purple-600 text-2xl"></i>
|
| 168 |
+
</div>
|
| 169 |
+
<h3 class="text-xl font-semibold mb-4">Scalable Infrastructure</h3>
|
| 170 |
+
<p class="text-gray-600 mb-6">
|
| 171 |
+
Horizontally scalable architecture to handle your growing data and user needs
|
| 172 |
+
</p>
|
| 173 |
+
<a href="#" class="text-blue-600 font-medium hover:text-blue-700 flex items-center">
|
| 174 |
+
Learn more <i class="fas fa-arrow-right ml-2"></i>
|
| 175 |
+
</a>
|
| 176 |
+
</div>
|
| 177 |
+
|
| 178 |
+
<div class="bg-gray-50 p-8 rounded-xl border border-gray-200">
|
| 179 |
+
<div class="w-14 h-14 bg-green-100 rounded-lg flex items-center justify-center mb-6">
|
| 180 |
+
<i class="fas fa-cogs text-green-600 text-2xl"></i>
|
| 181 |
+
</div>
|
| 182 |
+
<h3 class="text-xl font-semibold mb-4">Custom Integrations</h3>
|
| 183 |
+
<p class="text-gray-600 mb-6">
|
| 184 |
+
Seamless integration with your existing enterprise systems and workflows
|
| 185 |
+
</p>
|
| 186 |
+
<a href="#" class="text-blue-600 font-medium hover:text-blue-700 flex items-center">
|
| 187 |
+
Learn more <i class="fas fa-arrow-right ml-2"></i>
|
| 188 |
+
</a>
|
| 189 |
+
</div>
|
| 190 |
+
</div>
|
| 191 |
+
</div>
|
| 192 |
+
</section>
|
| 193 |
+
|
| 194 |
+
<!-- Platform Section -->
|
| 195 |
<section class="py-16 md:py-24 bg-white">
|
| 196 |
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
|
| 197 |
<div class="text-center mb-16">
|
|
|
|
| 267 |
Join thousands of developers in the thriving Tailwind CSS community.
|
| 268 |
</p>
|
| 269 |
</div>
|
| 270 |
+
|
| 271 |
+
<!-- AI Company Cards -->
|
| 272 |
+
<div class="bg-white p-6 rounded-xl shadow-md card-hover">
|
| 273 |
+
<div class="w-12 h-12 bg-blue-100 rounded-lg flex items-center justify-center mb-4">
|
| 274 |
+
<i class="fas fa-rocket text-blue-600 text-xl"></i>
|
| 275 |
+
</div>
|
| 276 |
+
<h3 class="text-xl font-semibold mb-2">Fireworks AI</h3>
|
| 277 |
+
<p class="text-gray-600">
|
| 278 |
+
Cutting-edge AI infrastructure for deploying custom language models at scale.
|
| 279 |
+
</p>
|
| 280 |
+
</div>
|
| 281 |
+
|
| 282 |
+
<div class="bg-white p-6 rounded-xl shadow-md card-hover">
|
| 283 |
+
<div class="w-12 h-12 bg-purple-100 rounded-lg flex items-center justify-center mb-4">
|
| 284 |
+
<i class="fas fa-cloud text-purple-600 text-xl"></i>
|
| 285 |
+
</div>
|
| 286 |
+
<h3 class="text-xl font-semibold mb-2">Nebius AI Studio</h3>
|
| 287 |
+
<p class="text-gray-600">
|
| 288 |
+
Cloud-native AI development platform for training and deploying models.
|
| 289 |
+
</p>
|
| 290 |
+
</div>
|
| 291 |
+
|
| 292 |
+
<div class="bg-white p-6 rounded-xl shadow-md card-hover">
|
| 293 |
+
<div class="w-12 h-12 bg-green-100 rounded-lg flex items-center justify-center mb-4">
|
| 294 |
+
<i class="fas fa-microchip text-green-600 text-xl"></i>
|
| 295 |
+
</div>
|
| 296 |
+
<h3 class="text-xl font-semibold mb-2">SambaNova</h3>
|
| 297 |
+
<p class="text-gray-600">
|
| 298 |
+
AI hardware and software solutions for enterprise-grade deployments.
|
| 299 |
+
</p>
|
| 300 |
+
</div>
|
| 301 |
+
|
| 302 |
+
<div class="bg-white p-6 rounded-xl shadow-md card-hover">
|
| 303 |
+
<div class="w-12 h-12 bg-indigo-100 rounded-lg flex items-center justify-center mb-4">
|
| 304 |
+
<i class="fas fa-brain text-indigo-600 text-xl"></i>
|
| 305 |
+
</div>
|
| 306 |
+
<h3 class="text-xl font-semibold mb-2">NovitaAI</h3>
|
| 307 |
+
<p class="text-gray-600">
|
| 308 |
+
AI platform specializing in computer vision and multimodal applications.
|
| 309 |
+
</p>
|
| 310 |
+
</div>
|
| 311 |
+
|
| 312 |
+
<div class="bg-white p-6 rounded-xl shadow-md card-hover">
|
| 313 |
+
<div class="w-12 h-12 bg-red-100 rounded-lg flex items-center justify-center mb-4">
|
| 314 |
+
<i class="fas fa-chart-line text-red-600 text-xl"></i>
|
| 315 |
+
</div>
|
| 316 |
+
<h3 class="text-xl font-semibold mb-2">Hyperbolic</h3>
|
| 317 |
+
<p class="text-gray-600">
|
| 318 |
+
Advanced AI algorithms leveraging hyperbolic geometry for better representations.
|
| 319 |
+
</p>
|
| 320 |
+
</div>
|
| 321 |
+
</div>
|
| 322 |
+
</div>
|
| 323 |
+
</section>
|
| 324 |
+
|
| 325 |
+
<!-- Clients Section -->
|
| 326 |
+
<section class="py-16 bg-gray-50">
|
| 327 |
+
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
|
| 328 |
+
<div class="text-center mb-12">
|
| 329 |
+
<h3 class="text-sm font-semibold text-gray-500 uppercase tracking-wider mb-2">Trusted by industry leaders</h3>
|
| 330 |
+
</div>
|
| 331 |
+
<div class="grid grid-cols-2 md:grid-cols-5 gap-8 items-center">
|
| 332 |
+
<div class="flex justify-center">
|
| 333 |
+
<img src="https://via.placeholder.com/160x60?text=Acme+Inc" alt="Acme Inc" class="h-10 opacity-70 hover:opacity-100 transition">
|
| 334 |
+
</div>
|
| 335 |
+
<div class="flex justify-center">
|
| 336 |
+
<img src="https://via.placeholder.com/160x60?text=Globex" alt="Globex" class="h-10 opacity-70 hover:opacity-100 transition">
|
| 337 |
+
</div>
|
| 338 |
+
<div class="flex justify-center">
|
| 339 |
+
<img src="https://via.placeholder.com/160x60?text=Initech" alt="Initech" class="h-10 opacity-70 hover:opacity-100 transition">
|
| 340 |
+
</div>
|
| 341 |
+
<div class="flex justify-center">
|
| 342 |
+
<img src="https://via.placeholder.com/160x60?text=Wayne+Enterprises" alt="Wayne Enterprises" class="h-10 opacity-70 hover:opacity-100 transition">
|
| 343 |
+
</div>
|
| 344 |
+
<div class="flex justify-center">
|
| 345 |
+
<img src="https://via.placeholder.com/160x60?text=Stark+Industries" alt="Stark Industries" class="h-12 opacity-70 hover:opacity-100 transition">
|
| 346 |
+
</div>
|
| 347 |
</div>
|
| 348 |
</div>
|
| 349 |
</section>
|
|
|
|
| 368 |
</div>
|
| 369 |
</section>
|
| 370 |
|
| 371 |
+
<!-- GitHub Repo Structure -->
|
| 372 |
+
<section class="py-16 bg-gray-800 text-gray-200">
|
| 373 |
+
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
|
| 374 |
+
<div class="text-center mb-12">
|
| 375 |
+
<h2 class="text-3xl md:text-4xl font-bold mb-4">Repository Structure</h2>
|
| 376 |
+
<p class="text-lg max-w-3xl mx-auto">
|
| 377 |
+
Fully configured enterprise-grade deployment setup
|
| 378 |
+
</p>
|
| 379 |
+
</div>
|
| 380 |
+
|
| 381 |
+
<div class="bg-gray-900 rounded-xl p-6 shadow-xl">
|
| 382 |
+
<div class="font-mono text-sm overflow-x-auto">
|
| 383 |
+
<div class="flex items-center text-yellow-400 mb-4">
|
| 384 |
+
<i class="fas fa-folder-open mr-2"></i>
|
| 385 |
+
<span>totality_saas/</span>
|
| 386 |
+
</div>
|
| 387 |
+
|
| 388 |
+
<div class="ml-8 space-y-2">
|
| 389 |
+
<div><i class="far fa-file-alt text-blue-400 mr-2"></i>README.md</div>
|
| 390 |
+
|
| 391 |
+
<div class="flex items-center text-yellow-400 mt-4">
|
| 392 |
+
<i class="fas fa-folder mr-2"></i>
|
| 393 |
+
<span>spaces/</span>
|
| 394 |
+
</div>
|
| 395 |
+
<div class="ml-8">
|
| 396 |
+
<div>
|
| 397 |
+
<i class="fas fa-folder text-yellow-400 mr-2"></i>
|
| 398 |
+
<span>space_app_1/</span>
|
| 399 |
+
</div>
|
| 400 |
+
<div class="ml-8 space-y-1">
|
| 401 |
+
<div><i class="far fa-file-alt text-blue-400 mr-2"></i>app.py</div>
|
| 402 |
+
<div><i class="far fa-file-alt text-blue-400 mr-2"></i>requirements.txt</div>
|
| 403 |
+
<div><i class="far fa-file-alt text-blue-400 mr-2"></i>Dockerfile</div>
|
| 404 |
+
</div>
|
| 405 |
+
</div>
|
| 406 |
+
|
| 407 |
+
<div class="flex items-center text-yellow-400 mt-4">
|
| 408 |
+
<i class="fas fa-folder mr-2"></i>
|
| 409 |
+
<span>dockerfiles/</span>
|
| 410 |
+
</div>
|
| 411 |
+
<div class="ml-8">
|
| 412 |
+
<div><i class="far fa-file-alt text-blue-400 mr-2"></i>generic.Dockerfile</div>
|
| 413 |
+
</div>
|
| 414 |
+
|
| 415 |
+
<div class="flex items-center text-yellow-400 mt-4">
|
| 416 |
+
<i class="fas fa-folder mr-2"></i>
|
| 417 |
+
<span>helm_charts/</span>
|
| 418 |
+
</div>
|
| 419 |
+
<div class="ml-8">
|
| 420 |
+
<div>
|
| 421 |
+
<i class="fas fa-folder text-yellow-400 mr-2"></i>
|
| 422 |
+
<span>space_app_1/</span>
|
| 423 |
+
</div>
|
| 424 |
+
<div class="ml-8 space-y-1">
|
| 425 |
+
<div><i class="far fa-file-alt text-blue-400 mr-2"></i>Chart.yaml</div>
|
| 426 |
+
<div><i class="far fa-file-alt text-blue-400 mr-2"></i>values.yaml</div>
|
| 427 |
+
<div>
|
| 428 |
+
<i class="fas fa-folder text-yellow-400 mr-2"></i>
|
| 429 |
+
<span>templates/</span>
|
| 430 |
+
</div>
|
| 431 |
+
<div class="ml-8 space-y-1">
|
| 432 |
+
<div><i class="far fa-file-alt text-blue-400 mr-2"></i>deployment.yaml</div>
|
| 433 |
+
<div><i class="far fa-file-alt text-blue-400 mr-2"></i>service.yaml</div>
|
| 434 |
+
</div>
|
| 435 |
+
</div>
|
| 436 |
+
</div>
|
| 437 |
+
|
| 438 |
+
<div class="flex items-center text-yellow-400 mt-4">
|
| 439 |
+
<i class="fas fa-folder mr-2"></i>
|
| 440 |
+
<span>ci_cd/</span>
|
| 441 |
+
</div>
|
| 442 |
+
<div class="ml-8">
|
| 443 |
+
<div><i class="far fa-file-alt text-blue-400 mr-2"></i>github-actions.yaml</div>
|
| 444 |
+
</div>
|
| 445 |
+
|
| 446 |
+
<div class="flex items-center text-yellow-400 mt-4">
|
| 447 |
+
<i class="fas fa-folder mr-2"></i>
|
| 448 |
+
<span>monitoring/</span>
|
| 449 |
+
</div>
|
| 450 |
+
<div class="ml-8 space-y-1">
|
| 451 |
+
<div><i class="far fa-file-alt text-blue-400 mr-2"></i>prometheus-deployment.yaml</div>
|
| 452 |
+
<div><i class="far fa-file-alt text-blue-400 mr-2"></i>grafana-deployment.yaml</div>
|
| 453 |
+
<div>
|
| 454 |
+
<i class="fas fa-folder text-yellow-400 mr-2"></i>
|
| 455 |
+
<span>dashboards/</span>
|
| 456 |
+
</div>
|
| 457 |
+
</div>
|
| 458 |
+
</div>
|
| 459 |
+
</div>
|
| 460 |
+
</div>
|
| 461 |
+
|
| 462 |
+
<div class="mt-8 text-center">
|
| 463 |
+
<button class="bg-indigo-600 text-white px-6 py-3 rounded-lg hover:bg-indigo-700 transition font-medium">
|
| 464 |
+
<i class="fas fa-download mr-2"></i> Download Full Package
|
| 465 |
+
</button>
|
| 466 |
+
</div>
|
| 467 |
+
</div>
|
| 468 |
+
</section>
|
| 469 |
+
|
| 470 |
<!-- Footer -->
|
| 471 |
+
<footer class="bg-gray-900 text-white pt-16 pb-8">
|
| 472 |
+
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 border-b border-gray-800 pb-12">
|
| 473 |
+
<div class="flex flex-col md:flex-row justify-between">
|
| 474 |
+
<div class="w-full md:w-1/3 mb-8 md:mb-0">
|
| 475 |
+
<div class="flex items-center mb-4">
|
| 476 |
+
<i class="fas fa-cube text-indigo-400 text-2xl mr-2"></i>
|
| 477 |
+
<span class="text-xl font-bold gradient-text">TailUI Enterprise</span>
|
| 478 |
+
</div>
|
| 479 |
+
<p class="text-gray-400 mb-6">
|
| 480 |
+
The leading AI platform for Fortune 500 companies and enterprises worldwide.
|
| 481 |
+
</p>
|
| 482 |
+
<div class="relative max-w-xs">
|
| 483 |
+
<input type="email" placeholder="Enter your email" class="w-full bg-gray-800 text-white px-4 py-3 rounded-lg border border-gray-700 focus:outline-none focus:ring-2 focus:ring-indigo-500">
|
| 484 |
+
<button class="absolute right-2 top-2 bg-indigo-600 text-white px-4 py-1 rounded-md hover:bg-indigo-700 transition">
|
| 485 |
+
Subscribe
|
| 486 |
+
</button>
|
| 487 |
+
</div>
|
| 488 |
+
</div>
|
| 489 |
+
|
| 490 |
+
<div class="grid grid-cols-2 md:grid-cols-4 gap-8 w-full md:w-2/3">
|
| 491 |
<div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
|
| 492 |
<div class="grid grid-cols-1 md:grid-cols-4 gap-8">
|
| 493 |
<div>
|