About • Functionalities • Run the project • Tecnologies • License
InstaBytes is an application developed as part of the Alura Backend Immersion, in partnership with Google Gemini. This project showcases key backend development concepts while leveraging Node.js, Express, and Google Cloud technologies for a scalable and robust application. The main functionality revolves around image uploads and data management, with deployment handled via Google Cloud Run, ensuring scalability and efficiency.
- Image Upload: Allows image uploads via an API.
- Image Description and Accessibility: Google Gemini connection to generate descriptive text and alternative text (alt) for uploaded images, enhancing accessibility and usability.
- Retrieve All Images: Fetch all uploaded images and their metadata, such as descriptions and alt text, using the
/postsendpoint with a GET request. - Update Image Details: Edit or update the description and alt text of a specific image using the
/upload/{id}endpoint with a PUT request.
💡 try the deployed version: https://instabytes-601881814473.southamerica-east1.run.app/posts
# Clone this repository:
$ git clone git@github.com:Kauanedev/InstaBytes.git
# Access the project folder:
$ cd InstaBytes
# Go to server folder:
$ cd server
# Install dependencies:
$ npm install
# Run the app in the development mode
$ npm run dev
# Server will start on port:3000
# Clone this repository:
$ git clone git@github.com:Kauanedev/InstaBytes.git
# Access the project folder:
$ cd InstaBytes
# Go to frontend folder:
$ cd frontend
# Install dependencies:
$ npm install
# Run the app in the development mode:
$ npm run start
# Server will start on port:3000 - Open ~ http://localhost:8000 ~ to view it in your browser.
To configure the required environment variables, follow these steps:
- Create a
.envfile in the root of the frontend and server directories. - Add the environment variables as shown in the examples below:
# Port where the server will run
PORT=3000
# MongoDB database connection string
MONGO_DB=mongodb+srv://your_user:password@cluster.mongodb.net/database_name
# API key for Google Gemini integration
GEMINI_API_KEY=your_gemini_key
# Application deployment URL
url_deploy=https://instabytes-601881814473.southamerica-east1.run.app
# API URL for frontend requests
API_URL=https://instabytes-601881814473.southamerica-east1.run.app/posts
# or using your local project URL
API_URL=http://localhost:3000/posts
- API: API
- Google Cloud: Google Cloud SDK
- Source-Code Editor: Visual Studio Code
This project is under license MIT.
Made with 💓 by Kauane Santos 👋 Contact me!


