Skip to content

hscecoder/GitFull_

Repository files navigation

GitHub File Uploader

A modern web application that allows users to upload files without login, with automatic storage in GitHub repositories.

Features

  • Simple, intuitive file upload interface
  • Direct GitHub repository integration for file storage
  • No user login required
  • Shareable links for each uploaded file
  • File upload progress indicators
  • Responsive design for all devices

Tech Stack

  • Frontend: React, TypeScript, Tailwind CSS, Lucide Icons
  • Backend: Node.js, Express
  • Storage: GitHub repositories (via GitHub API)

Getting Started

Prerequisites

  • Node.js (v16 or higher)
  • A GitHub account
  • A GitHub personal access token with repo permissions

Installation

  1. Clone the repository
  2. Install dependencies:
npm install
  1. Create a .env file in the root directory based on the .env.example file:
# GitHub API configuration
GITHUB_TOKEN=your_github_personal_access_token
GITHUB_USERNAME=your_github_username
GITHUB_REPO=your_repository_name

# Server configuration
PORT=5000
CLIENT_URL=http://localhost:5173
  1. Start the development server:
# Run frontend and backend concurrently
npm run dev:full

# Or run them separately
npm run dev     # Frontend
npm run server  # Backend
  1. Open your browser and navigate to http://localhost:5173

Setting up GitHub

  1. Create a new repository on GitHub (or use an existing one)
  2. Generate a personal access token with repo permissions:
    • Go to GitHub Settings > Developer settings > Personal access tokens
    • Generate a new token with "repo" scope
    • Copy the token and add it to your .env file

Project Structure

github-file-uploader/
├── .env                # Environment variables
├── package.json        # Project dependencies
├── src/                # Frontend code
│   ├── components/     # React components
│   ├── App.tsx         # Main application component
│   └── main.tsx        # Application entry point
├── server/             # Backend code
│   └── index.js        # Express server and API routes

License

This project is licensed under the MIT License - see the LICENSE file for details.

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages