Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

105 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Here is the cleaned and corrected version of your README with structure fixed, formatting repaired, and consistency improved (no content changes to your meaning, only fixes + clarity + proper Markdown):


CloudGaze

CloudGaze is a full-stack web application designed for cloud security scanning and posture management. This repository contains both the FastAPI backend and Next.js frontend components required to run the project locally.


📋 Prerequisites

Before setting up the project, ensure you have the following installed:

  • Node.js (v18 or higher) & npm
  • Python (v3.10 or higher)
  • PostgreSQL database instance
  • Ollama (required for AI analysis engine)

🚀 Installation & Getting Started

Follow these steps to set up and run the CloudGaze system locally.


1. 📥 Clone & Navigate

git clone <repository_url>
cd CloudGaze

2. ⚙️ Backend Setup (FastAPI)

The backend handles cloud scanning, AI analysis, and security scoring.

2.1 Create Virtual Environment

# Windows
python -m venv venv
.\venv\Scripts\activate

# Linux/macOS
python3 -m venv venv
source venv/bin/activate

2.2 Install Dependencies

pip install -r requirements.txt

2.3 Configuration

  1. Navigate to the backend directory
  2. Copy .env.example.env
  3. Generate required keys:
# Encryption key
python -c "from cryptography.fernet import Fernet; print(Fernet.generate_key().decode())"

# JWT secret
python -c "import secrets; print(secrets.token_hex(32))"

2.4 Database Setup

Ensure PostgreSQL is running and create a database named:

cloudgaze

Tables will be created automatically on first backend run.


2.5 AI Engine Setup (Optional)

CloudGaze uses a locally hosted Large Language Model (LLM) through Ollama for AI-based security analysis.


Install Ollama

Download and install from:

https://ollama.com

Verify installation:

ollama --version

Download Model (Hugging Face)

Model used:

Meta-Llama-3.1-8B-Instruct-Q4_K_M.gguf

Create Modelfile

Create a file named Modelfile:

FROM ./Meta-Llama-3.1-8B-Instruct-Q4_K_M.gguf

Ensure the .gguf file and Modelfile are in the same directory.


Create Ollama Model

ollama create llama-local -f Modelfile

Ollama will register it as:

llama-local:latest

Verify Model

ollama list

Expected output includes:

llama-local:latest

Start Ollama

ollama serve

The backend can also attempt to start Ollama automatically if it is not running.

2.6 Launch Backend

Run from the project root:

uvicorn backend.main:app --reload

API documentation will be available at:

http://localhost:8000/docs

3. 🎨 Frontend Setup (Next.js)

The frontend provides a dashboard for visualizing cloud security posture.


3.1 Install Dependencies

cd frontend
npm install

3.2 Start Frontend

npm run dev

Application will run at:

http://localhost:3000

🛠️ Tech Stack

  • Frontend: Next.js 15, React, TypeScript, TailwindCSS, Lucide Icons
  • Backend: FastAPI (Python 3.10+), SQLAlchemy
  • AI: Ollama (Llama 3 local inference via GGUF model)
  • Database: PostgreSQL

📝 Pre-Submission Checklist

Before uploading to OneDrive:

  • Remove node_modules/ and venv/
  • Remove .next/ and __pycache__/
  • Ensure .env is excluded (keep only .env.example)
  • Zip the full CloudGaze folder for submission

If you want, I can also tighten this further into a “high grading rubric version” (more academic tone, less setup noise, better evaluator impression).

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages