innovencelabs / byteshare

Large file sharing app [Community Edition]
BSD 3-Clause "New" or "Revised" License
13 stars 4 forks source link
aws fastapi github-actions hacktoberfest nextjs open-source python tailwindcss terraform typescript

ByteShare logo

ByteShare

An open-source file sharing app.

GitHub License GitHub Actions Workflow Status GitHub closed pull requests GitHub commit activity Static Badge Static Badge

Overview

Meet ByteShare, your go-to platform for seamless and secure file sharing. Designed for simplicity, ByteShare offers easy generation of shareable links and QR codes, making file sharing a breeze. Whether it's a single document or a collection of files, ByteShare streamlines the process, ensuring a user-friendly experience for all.

Product Introduction

Local Setup

  1. Clone the repository
    git clone https://github.com/innovencelabs/ByteShare.git
    cd ByteShare
  2. Install Terraform
  3. Configure your AWS account
    aws configure
  4. Setup Cloudflare R2
  5. Create AWS resource using Terraform (only in infrastructure/cloud folder)
    cd ByteShare/infrastructure/cloud
    cp terraform.tfvars.example terraform.tfvars
    # Add your credentials in terraform.tfvars
    terraform init
    terraform plan
    terraform apply
    cd ../../
  6. Setup your Appwrite account HERE
  7. Create your Organisation and Project in Appwrite TUTORIAL
  8. Add the credential values in .env
    cp .env.example .env
    # Add your credentials in .env
  9. Run the application through Docker Compose
    docker compose up --build

By default, UI runs on port 3000 and Middleware runs on port 8000

Architecture

architecture

Built with

Deployment