Skip to content

lonelycoder2004/DEVOPS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

NovaSpark DevOps Hackathon Project

This repository contains a full-stack AI-powered dashboard application, including:

  • FRONTEND: Flutter app (mobile/web/desktop)
  • BACKEND: Node.js/Express API server
  • IMG-API: Python Flask API for image/AI processing
  • INTEGRATION: Python integration service (Google APIs, document processing, AI analyze and summarization etc.)

Table of Contents


Demo Video

Watch the demo video of AuraAccess in action:

▶️ Click here to watch the demo video on Google Drive


Architecture Diagram

Below is a high-level architecture diagram of the AuraAccess system:

Aura Access Architecture Diagram


Project Structure

e:\DEVOPS-HACKATHON/
│
├── BACKEND/         # Node.js/Express backend API
├── FRONTEND/        # Flutter app (mobile/web/desktop)
│   └── auraaccess/  # Main Flutter project
├── IMG-API/         # Python Flask AI/image API
├── INTEGRATION/     # Python integration service
└── README.md        # This file

Requirements

General

  • Git
  • Node.js (v18+ recommended)
  • npm (comes with Node.js)
  • Python 3.10+ (for IMG-API and INTEGRATION)
  • pip (Python package manager)
  • Flutter SDK (for FRONTEND)
  • Android Studio/Xcode (for mobile builds, optional)

Setup Instructions

1. Backend Setup (BACKEND/)

Install Node.js dependencies:

cd BACKEND
npm install
# or
npm i

Environment:

  • Create a .env file in BACKEND/ with your database connection string and any other secrets. Example:

    DATABASE_URL=postgres://user:password@host:port/dbname
    # or for MySQL
    # DB_HOST=localhost
    # DB_USER=root
    # DB_PASS=yourpassword
    # DB_NAME=yourdb
    Visit the [YugabyteDB website](https://www.yugabyte.com/) for more information.
    
  • Ensure root.crt is present if using SSL/secure DB connections.

Run the server:

npm start
# or
node index.js

Default port: 3000


2. Frontend Setup (FRONTEND/auraaccess/)

App Features:

  • Material Design 3 UI with dynamic theming
  • Face authentication using camera
  • Dashboard with personalized AI insights from Google Drive
  • Cross-platform (mobile/web/desktop)

Install Flutter dependencies:

cd FRONTEND/auraaccess
flutter pub get
# or
pub get

Required permissions:

  • Camera access (for face authentication)
  • Internet access (for API calls)

Environment variables (.env):

  • To enable API integration and manage secrets (such as API endpoints, keys, etc.), create a .env file in FRONTEND/auraaccess/.
  • Example .env file:
    # API endpoints
    BACKEND_API_URL=http://localhost:3000
    IMG_API_URL=http://localhost:5001
    INTEGRATION_API_URL=http://localhost:5002
    
    # Any other secrets or keys
  • Use packages like flutter_dotenv to load environment variables in your Flutter app.

Run the app:

# For web
flutter run -d chrome

# For Android/iOS
flutter run

# For Windows/Linux/Mac
flutter run -d windows  # or -d linux / -d macos

Build for production:

# Android APK
flutter build apk --release

# Android App Bundle (Google Play)
flutter build appbundle

# iOS
flutter build ios

# Web
flutter build web

# Desktop
flutter build windows  # or macos / linux

3. IMG-API Setup (IMG-API/)

Create and activate virtual environment (optional but recommended):

cd IMG-API
python -m venv venv310
# On Windows:
venv310\Scripts\activate
# On Mac/Linux:
source venv310/bin/activate

Install Python dependencies:

pip install -r requirements.txt
# or
python -m pip install -r requirements.txt

Run the Flask API:

python main.py
# or
flask run

Default port: 5001


4. Integration Setup (INTEGRATION/)

Create and activate virtual environment (optional):

cd INTEGRATION
python -m venv renv
# On Windows:
renv\Scripts\activate
# On Mac/Linux:
source renv/bin/activate

Install Python dependencies:

pip install -r requirements.txt  # If requirements.txt exists
# or
python -m pip install -r requirements.txt
# Or manually install needed packages (see below)

Environment:

  • Create a .env file in INTEGRATION/ with the following (as needed):

    # Google API credentials
    GOOGLE_CLIENT_ID=your_google_client_id
    GOOGLE_CLIENT_SECRET=your_google_client_secret
    # Gemini API key
    GEMINI_API_KEY=your_gemini_api_key
  • Place your credentials.json and token.json files (for Google API access) in the INTEGRATION/ folder.

Run the integration service:

python app.py

Workflow

  1. Start the backend server (BACKEND/)
  2. Start the IMG-API Flask server (IMG-API/)
  3. Start the integration service (INTEGRATION/)
  4. Run the Flutter frontend (FRONTEND/auraaccess/)
  5. Access the dashboard via the Flutter app (web/mobile/desktop)

Data flow:

  • The Flutter app communicates with the Node.js backend for dashboard data.
  • The backend may call the IMG-API for AI/image analysis.
  • The integration service handles Google API and document processing.

Troubleshooting

  • Ports in use: Make sure ports 3000 (backend), 5001 (IMG-API), and any others are free.
  • CORS errors: Ensure CORS is enabled on backend and Flask servers.
  • Environment variables: Check .env files for required secrets/keys.
  • Flutter issues: Run flutter doctor to diagnose SDK/setup issues.
  • Python issues: Ensure correct Python version and virtual environment activation.

Contributing

  1. Fork the repo and create a feature branch.
  2. Make your changes and commit with clear messages.
  3. Push to your fork and open a pull request.
  4. Describe your changes and reference issues if any.

Credits

DevByZero NovaSpark Team @ DevOps Malayalam

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published