Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/innovencelabs/byteshare

Large file sharing app [Community Edition]
https://github.com/innovencelabs/byteshare

aws fastapi github-actions hacktoberfest nextjs open-source python tailwindcss terraform typescript

Last synced: about 1 hour ago
JSON representation

Large file sharing app [Community Edition]

Awesome Lists containing this project

README

        


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
```bash
git clone https://github.com/innovencelabs/ByteShare.git
cd ByteShare
```
2. Install Terraform
3. Configure your AWS account
```bash
aws configure
```
4. Setup Cloudflare R2
5. Create AWS resource using Terraform (only in infrastructure/cloud folder)
```bash
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](https://appwrite.io/)
7. Create your Organisation and Project in Appwrite [TUTORIAL](https://youtu.be/pk92hS_d_ns?t=11&si=emSqp8Mdra_iF-dc)
8. Add the credential values in .env
```bash
cp .env.example .env
# Add your credentials in .env
```
9. Run the application through Docker Compose
```bash
docker compose up --build
```

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

## Architecture
![architecture](https://github.com/ambujraj/ByteShare/assets/29935993/ced9c2cd-51ec-4285-a365-22cfde1c3826)

## Built with
- NextJS
- ShadCN (TailwindCSS)
- FastAPI
- AWS DynamoDB
- Cloudflare R2
- AWS Cloudwatch
- Appwrite
- Resend
- ClamAV

## Deployment
- Vercel
- AWS API Gateway and Lambda via SAM deployment
- Github actions
- Cloudflare