Skip to content

dailyfoss/dailyfoss.github.io

Repository files navigation

Daily FOSS

Discover, explore, and deploy open-source applications with ease

A modern, comprehensive platform for browsing and deploying 1000+ self-hosted applications and open-source tools. Built with Next.js, featuring real-time community insights, advanced filtering, and detailed deployment guides.

Next.js React TypeScript Tailwind CSS License

✨ Features

πŸ” Discovery & Search

  • Smart Search - Fuzzy search with keyboard shortcuts (press / to focus)
  • Advanced Filtering - Filter by platform, deployment method, hosting type, interface, community integrations, and activity status
  • Quick Filters - One-click filters for Desktop, Mobile, Web App, and Browser Extensions
  • Category Browsing - Organized by use case with 50+ categories

οΏ½ Coimmunity Insights

  • Real-time GitHub Stats - Contributors, commits this year, open/closed issues, releases
  • Repository Status Indicators - Visual badges showing project activity:
    • 🟒 Active (updated within 30 days)
    • 🟑 Regular (updated within 6 months)
    • 🟠 Occasional (updated within 1 year)
    • ant (no updates in over 1 year)
    • πŸ“¦ Archread-only, no longer maintained)
  • Trending This Month - Real-time visitor tracking with Plausible Analytics
  • Popular Scripts - Ranked by GitHub stars and deployment versatility

🀝 Community Integrations

  • Proxmox VE Support - Automatic detection of 303+ apps with Proxmox community scripts
  • YunoHost Support - Automatic detection of 412+ apps with YunoHost packages
  • Dual Platform Support - 177 apps available on both platforms
  • Integration Filtering - Filter apps by community platform support

🎨 User Experience

  • Responsive Design - Mobile-first UI with smooth animations and transitions
  • Dark/Light Mode - Theme support with system preference detection
  • Keyboard Navigation - Full accessibility with keyboard shortcuts
  • Tooltips & Hints - Contextual information on hover
  • NEW Badges - Highlight recently added apps (within 7 days)

πŸ“ˆ Rich Metadata

  • Version Tracking - Latest release versions with relative timestamps
  • License Information - SPDX license identifiers
  • Star Counts - Formatted GitHub star counts (e.g., 3.5k, 1.2m)
  • Release Dates - Last release and commit timestamps
  • Platform Support - Desktop (Linux, Windows, macOS), Mobile (Android, iOS), Web, Browser Extensions
  • Deployment Methods - Docker, Docker Compose, Kubernetes, Helm, Terraform, Scripts
  • Hosting Options - Self-hosted, SaaS, Managed Cloud
  • Interface Types - CLI, TUI, GUI, Web UI, API

⚑ Performance

  • Static Site Generation - Pre-rendered pages for instant loading
  • Optimized Images - Automatic image optimization with Next.js
  • Code Splitting - Lazy loading for optimal bundle sizes
  • Edge Caching - CDN distribution via GitHub Pages

β™Ώ Accessibility

  • WCAG Compliant - Meets accessibility standards
  • Screen Reader Support - Semantic HTML and ARIA labels
  • Keyboard Navigation - Full keyboard support
  • Focus Management - Clear focus indicators

πŸ› οΈ Tech Stack

Framework & Core

Styling & Components

Data & State

Tooling

πŸš€ Quick Start

Prerequisites: Node.js 18+ and npm/yarn/pnpm/bun

# Clone the repository
git clone https://github.com/dailyfoss/dailyfoss.git
cd dailyfoss

# Install dependencies
npm install

# Start development server
npm run dev

# Open http://localhost:3000

Environment Setup

Create a .env.local file for local development:

# Optional: GitHub token for metadata updates
GITHUB_TOKEN=your_github_token_here

πŸ“¦ Available Scripts

# Development
npm run dev                    # Start dev server with Turbopack
npm run build                  # Build for production
npm run start                  # Start production server

# Code Quality
npm run lint                   # Run ESLint with auto-fix
npm run typecheck              # TypeScript type checking

# Tools & Automation
npm run download-icons                    # Download and optimize app icons
npm run update-repo-metadata              # Update GitHub metadata (requires GITHUB_TOKEN)
npm run check-community-integrations      # Check Proxmox VE & YunoHost support
npm run validate-apps                     # Validate JSON schema for all apps

# Deployment
npm run deploy                 # Build and deploy to GitHub Pages

πŸ—οΈ Project Structure

dailyfoss-website/
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ app/                      # Next.js app router pages
β”‚   β”‚   β”œβ”€β”€ scripts/              # Main application pages
β”‚   β”‚   └── category-view/        # Category browsing
β”‚   β”œβ”€β”€ components/               # Reusable components
β”‚   β”‚   └── ui/                   # shadcn/ui components
β”‚   β”œβ”€β”€ lib/                      # Utilities and types
β”‚   β”‚   β”œβ”€β”€ types.ts              # TypeScript definitions
β”‚   β”‚   └── utils.ts              # Helper functions
β”‚   └── hooks/                    # Custom React hooks
β”œβ”€β”€ public/
β”‚   β”œβ”€β”€ json/                     # Application data (1000+ files)
β”‚   └── icons/                    # Application logos
β”œβ”€β”€ tools/                        # Build and maintenance scripts
β”‚   β”œβ”€β”€ download-icons.js         # Icon downloader
β”‚   └── update-repo-metadata.js   # GitHub data fetcher
└── .github/workflows/            # CI/CD automation

πŸ”§ Development Guidelines

Code Style

  • TypeScript strict mode enabled
  • Functional components with hooks
  • Tailwind CSS for styling (no custom CSS)
  • Mobile-first responsive design
  • Accessibility-first approach

Component Pattern

import { cn } from "@/lib/utils";

interface Props {
  title: string;
  className?: string;
}

export function Component({ title, className }: Props) {
  return (
    <div className={cn("base-styles", className)}>
      {title}
    </div>
  );
}

Adding New Apps

  1. Create a JSON file in public/json/ following the schema in src/lib/types.ts
  2. Add app icon to public/icons/ (PNG or SVG, 512x512 recommended)
  3. Run npm run validate-apps to check schema compliance
  4. Submit a pull request with your changes

JSON Schema Example

{
  "slug": "app-name",
  "name": "App Name",
  "description": "Brief description",
  "categories": ["category-id"],
  "resources": {
    "source_code": "https://github.com/user/repo",
    "website": "https://example.com",
    "logo": "/icons/app-name.png"
  },
  "metadata": {
    "license": "MIT",
    "github_stars": 1000
  },
  "platform_support": {
    "desktop": { "linux": true },
    "web_app": true
  },
  "deployment_methods": {
    "docker": true,
    "docker_compose": true
  }
}

🀝 Contributing

Contributions are welcome! Here's how to get started:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

Areas to Contribute:

  • πŸ› Bug fixes and issue reports
  • ✨ New features and enhancements
  • πŸ“š Documentation improvements
  • 🎨 UI/UX refinements
  • β™Ώ Accessibility improvements
  • πŸš€ Performance optimizations

Guidelines:

  • Follow existing code patterns
  • Write descriptive commit messages
  • Test your changes thoroughly
  • Update documentation as needed

οΏ½ Automaeted Updates

The project includes automated workflows that run daily:

  • Repository Metadata - Updates GitHub stats (stars, contributors, commits, issues, releases)
  • Icon Downloads - Fetches and optimizes application logos
  • Status Tracking - Monitors repository activity levels

These workflows ensure the platform always displays current information.

οΏ½ Staetistics

  • 1,160+ Applications - Curated collection of self-hosted apps
  • 50+ Categories - Organized by use case
  • 303 Proxmox VE - Community scripts available
  • 412 YunoHost - App packages available
  • 177 Dual Support - Apps on both platforms
  • Daily Updates - Automated metadata refresh

πŸ“„ License

MIT License - see LICENSE for details.

πŸ™ Acknowledgments

  • Open Source Community - For creating amazing self-hosted applications
  • Contributors - Thank you for your valuable contributions
  • ProxmoxVE Frontend - For the beautiful frontend
  • selfh.st Icons - For awesome icons

οΏ½ Links


Built with ❀️ for the open-source community

About

Curated platform for exploring and deploying free and open source software

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

Packages

 
 
 

Contributors