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.)
Watch the demo video of AuraAccess in action:
Below is a high-level architecture diagram of the AuraAccess system:
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
- 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)
Install Node.js dependencies:
cd BACKEND
npm install
# or
npm i
Environment:
-
Create a
.env
file inBACKEND/
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
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 inFRONTEND/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
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
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 inINTEGRATION/
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
andtoken.json
files (for Google API access) in theINTEGRATION/
folder.
Run the integration service:
python app.py
- Start the backend server (
BACKEND/
) - Start the IMG-API Flask server (
IMG-API/
) - Start the integration service (
INTEGRATION/
) - Run the Flutter frontend (
FRONTEND/auraaccess/
) - 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.
- 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.
- Fork the repo and create a feature branch.
- Make your changes and commit with clear messages.
- Push to your fork and open a pull request.
- Describe your changes and reference issues if any.
DevByZero NovaSpark Team @ DevOps Malayalam