No description
- TypeScript 93.7%
- JavaScript 5.5%
- CSS 0.8%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
- Add server actions for adding, removing, retrying and clearing downloads - Implement rate limiting and input validation for all actions - Add CSRF protection and proper error handling - Support revalidation of affected paths - Include comprehensive logging for all operations ``` ```msg refactor(security): enhance security utilities for edge runtime - Rewrite sanitizeFilePath to work without Node.js path module - Add validateFileName utility for additional security checks - Implement Web Crypto API for CSRFToken generation - Improve identifier validation with path traversal checks - Make utilities compatible with Edge Runtime ``` ```msg feat(components): add health monitoring and settings components - Create HealthSection component for system status monitoring - Implement SettingsForm with server actions integration - Add proper validation and error handling - Include rate limiting for settings updates - Support revalidation and state management ``` ```msg perf(cache): improve LRU cache behavior in pagination - Refresh LRU status on cache hits by deleting and re-adding entries - Maintain proper LRU ordering while preserving cache performance - Ensure frequently accessed items stay in cache longer ``` ```msg fix(metadata): add CORS and security headers to metadata API - Implement OPTIONS handler for CORS preflight requests - Add Access-Control-Allow-Origin header for cross-origin requests - Include security headers (X-Content-Type-Options, Cache-Control) - Support proper content disposition for file downloads ``` ```msg chore(deps): update dependencies to latest versions - Upgrade Next.js to 16.1.1 - Update React to 19.2.3 - Bump TypeScript to 5.9.3 - Update other dependencies (lodash, debug, sharp) - Enable turbo mode for development builds ``` ```msg feat(proxy): implement comprehensive request middleware - Add security headers and CORS handling - Implement rate limiting and CSRF protection - Add admin route authentication checks - Include request logging and timing - Support suspicious request detection |
||
| cache/other/finalfantasyiiidawnofsoulsguide | ||
| public | ||
| scripts | ||
| src | ||
| .gitignore | ||
| config.json | ||
| next-env.d.ts | ||
| next.config.js | ||
| package-lock.json | ||
| package.json | ||
| postcss.config.js | ||
| README.md | ||
| tailwind.config.js | ||
| TODO.md | ||
| tsconfig.json | ||
| tsconfig.tsbuildinfo | ||
Internet Archive Mirror
A Next.js application that allows you to browse and download content from the Internet Archive locally. Create your own offline digital library with millions of books, movies, software, music, and more from archive.org.
Features
- 🌐 Browse Internet Archive content offline
- 📥 Download and store items locally
- 🔍 Search through your local library
- 🖼️ View item details, metadata, and files
- 📚 Support for multiple media types (books, videos, software, etc.)
- 💾 Efficient local storage system
- 🚀 Fast, modern web interface
Prerequisites
- Windows 10 or later
- Node.js 18 or higher
- npm or yarn
- Git (optional, for development)
- At least 1GB of free RAM
- Storage space for downloaded content (varies based on usage)
Windows Prerequisites Installation
-
Install Node.js:
- Download the latest LTS version from Node.js website
- Run the installer and follow the installation wizard
- Make sure to check "Automatically install the necessary tools"
- Verify installation:
node --version npm --version
-
Install Git (Optional):
- Download from Git website
- Run the installer with default options
Installation
-
Clone the repository:
git clone https://github.com/RyuuSlayer/IA-Mirror.git cd IA-Mirror -
Install dependencies:
npm install -
Change
config.jsonfile in the root directory:{ "cacheDir": "path/to/storage", "maxConcurrentDownloads": 3 } -
Start the development server:
npm run dev -
Open your browser and navigate to:
http://localhost:3000
Usage
Browsing Content
- Visit the homepage to see featured items and collections
- Use the search bar to find specific items
- Browse by media type (books, videos, software, etc.)
- Click on an item to view its details
Downloading Items
- Navigate to an item's page
- Click the download button for individual files or the entire item
- Monitor download progress in the downloads section
- Access downloaded content offline through your local library
Running as a Windows Service (Optional)
To have the application start automatically with Windows:
-
Install node-windows globally:
npm install -g node-windows -
Install the service:
npm run install-service -
The service will now start automatically with Windows
-
Manage it in Windows Services (services.msc)
Development
-
Run the development server:
npm run dev -
Build for production:
npm run build -
Start production server:
npm start
Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Submit a pull request