{"id":21942752,"url":"https://github.com/kennymwendwax/reformat","last_synced_at":"2025-12-30T22:54:20.545Z","repository":{"id":263876247,"uuid":"890584682","full_name":"KennyMwendwaX/reformat","owner":"KennyMwendwaX","description":"Reformat is a modern file conversion tool designed to handle multiple file formats with ease and efficiency. ","archived":false,"fork":false,"pushed_at":"2024-12-20T19:35:57.000Z","size":393,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-03T16:18:12.469Z","etag":null,"topics":["file-converter","geist","golang","nextjs","reactjs","shadcn-ui","tailwindcss","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/KennyMwendwaX.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-11-18T20:36:00.000Z","updated_at":"2024-12-20T19:36:52.000Z","dependencies_parsed_at":"2024-11-20T19:32:56.632Z","dependency_job_id":"30e9ffaf-fbc5-442a-a35b-10c9ef142c57","html_url":"https://github.com/KennyMwendwaX/reformat","commit_stats":null,"previous_names":["kennymwendwax/reformat"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KennyMwendwaX%2Freformat","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KennyMwendwaX%2Freformat/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KennyMwendwaX%2Freformat/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KennyMwendwaX%2Freformat/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/KennyMwendwaX","download_url":"https://codeload.github.com/KennyMwendwaX/reformat/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244981010,"owners_count":20542287,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["file-converter","geist","golang","nextjs","reactjs","shadcn-ui","tailwindcss","typescript"],"created_at":"2024-11-29T03:26:20.388Z","updated_at":"2025-12-30T22:54:20.493Z","avatar_url":"https://github.com/KennyMwendwaX.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Reformat\n\nReformat is a modern file conversion tool designed to handle multiple file formats with ease and efficiency. It consists of a **Next.js-based frontend** and a **Go-based backend**, providing a sleek interface for uploading and converting files.\n\n---\n\n## Features\n\n### 🌟 Frontend\n\n- Intuitive drag-and-drop file upload\n- Real-time conversion progress tracking\n- Responsive design with **Tailwind CSS**\n- Quality settings for optimized conversions\n- Smooth animations and transitions\n\n### 🛠 Backend\n\n- Support for multiple formats: **PDF, DOCX, Images (JPG, PNG, GIF)**\n- Context-based request handling with timeouts\n- Temporary file storage with cleanup\n- Progress monitoring for large file uploads\n\n---\n\n## Tech Stack\n\n### Frontend\n\n- **Framework:** Next.js 14\n- **Language:** TypeScript\n- **Styling:** Tailwind CSS\n- **UI Components:** shadcn/ui\n- **Animations:** Motion React\n\n### Backend\n\n- **Language:** Go\n- **Server Framework:** net/http\n- **Conversion Libraries:** Custom-built converters\n\n---\n\n## Project Structure\n\n```plaintext\nreformat/\n├── frontend/\n│    ├── src/\n│    │   ├── app/                    # Next.js app router files\n│    │   │   ├── globals.css         # Global styles\n│    │   │   ├── layout.tsx          # Root layout\n│    │   │   └── page.tsx            # Home page\n│    │   ├── components/             # React components\n│    │   │   ├── conversion-config.ts\n│    │   │   └── upload-area.ts\n│    │   └── lib/                    # Utility functions and configs\n│    │       ├── config.ts           # File type configurations\n│    │       ├── file-utils.ts       # File handling utilities\n│    │       ├── types.ts            # TypeScript type definitions\n│    │       └── utils.ts            # General utilities\n│    ├── next.config.ts\n│    ├── tailwind.config.ts\n│    ├── components.json\n│    ├── package-lock.json\n│    ├── package.json\n│    ├── tsconfig.json\n│    ├── .gitignore\n│    └── README.md\n├── backend/\n│   ├── cmd/                    # Main application entry points\n│   │   └── main.go             # Server entry point\n│   ├── internal/               # Private application code\n│   │   └── handlers/           # HTTP request handlers\n│   │       └── conversion_handler.go\n│   ├── pkg/                    # Public packages\n│   │    └── converter/          # Conversion libraries\n│   │        ├── common.go\n│   │        ├── pdf_converter.go\n│   │        ├── image_converter.go\n│   │        └── docx_converter.go\n│   ├── go.mod\n│   ├── go.sum\n│   └── README.md\n└── README.md              # Project documentation\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkennymwendwax%2Freformat","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkennymwendwax%2Freformat","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkennymwendwax%2Freformat/lists"}