{"id":28572588,"url":"https://github.com/daquino94/linux-path","last_synced_at":"2026-03-10T19:32:28.632Z","repository":{"id":295128095,"uuid":"989268023","full_name":"daquino94/linux-path","owner":"daquino94","description":"An interactive learning platform that has helped thousands of people take their first steps into the world of Linux.","archived":false,"fork":false,"pushed_at":"2025-09-30T16:08:43.000Z","size":40001,"stargazers_count":48,"open_issues_count":1,"forks_count":3,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-09-30T18:09:16.035Z","etag":null,"topics":["linux","next-intl","nextjs","react"],"latest_commit_sha":null,"homepage":"https://linux-path.com","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"cc-by-sa-4.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/daquino94.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"license","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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-05-23T19:19:53.000Z","updated_at":"2025-09-30T16:05:42.000Z","dependencies_parsed_at":"2025-06-09T10:29:22.444Z","dependency_job_id":null,"html_url":"https://github.com/daquino94/linux-path","commit_stats":null,"previous_names":["daquino94/linux-path"],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/daquino94/linux-path","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daquino94%2Flinux-path","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daquino94%2Flinux-path/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daquino94%2Flinux-path/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daquino94%2Flinux-path/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/daquino94","download_url":"https://codeload.github.com/daquino94/linux-path/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daquino94%2Flinux-path/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30350083,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-10T15:55:29.454Z","status":"ssl_error","status_checked_at":"2026-03-10T15:54:58.440Z","response_time":106,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["linux","next-intl","nextjs","react"],"created_at":"2025-06-10T21:00:44.338Z","updated_at":"2026-03-10T19:32:28.622Z","avatar_url":"https://github.com/daquino94.png","language":"TypeScript","readme":"# Linux Path\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"public/images/penguinCar.png\" width=\"300\" alt=\"Linux Path Logo\"\u003e\n\u003c/p\u003e\n\n\u003ch2 align=\"center\"\u003eA New Life for LinuxJourney\u003c/h2\u003e\n\u003ch4 align=\"center\"\u003eAn interactive learning platform that has helped thousands of people take their first steps into the world of Linux.\u003c/h4\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg alt=\"Next.js\" src=\"https://img.shields.io/badge/Next.js-000000?style=for-the-badge\u0026logo=nextdotjs\u0026logoColor=white\"\u003e\n  \u003cimg alt=\"TypeScript\" src=\"https://img.shields.io/badge/TypeScript-007ACC?style=for-the-badge\u0026logo=typescript\u0026logoColor=white\"\u003e\n  \u003cimg alt=\"Tailwind CSS\" src=\"https://img.shields.io/badge/Tailwind_CSS-38B2AC?style=for-the-badge\u0026logo=tailwind-css\u0026logoColor=white\"\u003e\n  \u003cimg alt=\"Docker\" src=\"https://img.shields.io/badge/Docker-2496ED?style=for-the-badge\u0026logo=docker\u0026logoColor=white\"\u003e\n\u003c/p\u003e\n\n## Support the Project\n\nIf you find Linux Path helpful and want to support its development, consider buying me a coffee! Your support helps keep this project alive and enables continuous improvements to help more people learn Linux.\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://buymeacoffee.com/balsamic9239\" target=\"_blank\"\u003e\n    \u003cimg src=\"https://www.buymeacoffee.com/assets/img/custom_images/orange_img.png\" alt=\"Buy Me A Coffee\" style=\"height: 41px !important;width: 174px !important;\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n## Features\n\n- 🐧 **Interactive Linux Learning**: Step-by-step lessons covering Linux fundamentals\n- 🌍 **Multi-language Support**: Built with internationalization (i18n) using next-intl\n- 📚 **Comprehensive Curriculum**: Structured chapters covering everything from basics to advanced topics\n- 🎯 **Interactive Exercises**: Hands-on practice with real Linux commands\n- 📱 **Responsive Design**: Beautiful, modern interface that works on all devices\n- 🔧 **Easy Deployment**: Multiple deployment options including Docker\n- 📖 **JSON-Based Content**: Flexible content management through JSON dictionaries\n- 🚀 **Fast Performance**: Built with Next.js for optimal loading times\n\n## Roadmap\n\nHere are the exciting features coming to Linux Path:\n\n| Feature                 | Status |\n| ----------------------- | ------ |\n| SSG                     | ✅     |\n| Lesson generator script | 📋     |\n| Dark Mode               | 📋     |\n| New Lessons             | 📋     |\n| View progress           | 📋     |\n\n**Legend:**\n\n- 🔄 In Development\n- 📋 Planned\n- 💡 Research Phase\n- ✅ Complete\n\n## Dictionary System\n\nLinux Path uses a sophisticated dictionary system for content management and internationalization. For detailed information, see the [Dictionary Documentation](dictionaries/README.md).\n\n### Dictionary Status\n\n| Language      | Status         | Completion    |\n| ------------- | -------------- | ------------- |\n| 🇺🇸 English    | ✅ Complete    | 100% (Master) |\n| 🇮🇹 Italian    | 🔄 In Progress | ~80%          |\n| 🇩🇪 German     | ✅ Complete    | 100% (🤖 AI)  |\n| 🇫🇷 French     | ✅ Complete    | 100% (🤖 AI)  |\n| 🇪🇸 Spanish    | ✅ Complete    | 100% (🤖 AI)  |\n| 🇮🇳 Hindi      | ✅ Complete    | 100% (🤖 AI)  |\n| 🇯🇵 Japanese   | ✅ Complete    | 100% (🤖 AI)  |\n| 🇵🇹 Portuguese | ✅ Complete    | 100% (🤖 AI)  |\n| 🇷🇺 Russian    | ✅ Complete    | 100% (🤖 AI)  |\n| 🇨🇳 Chinese    | ✅ Complete    | 100% (🤖 AI)  |\n\n\u003csmall\u003eUnfortunately, I am a native Italian speaker, so I cannot guarantee the accuracy or naturalness of the translations in other languages.\u003c/small\u003e\n\n## Quick Start\n\n### Prerequisites\n\nChoose one of the following:\n\n- **Node.js**: 18.0+ and npm (for local development)\n- **Docker**: Latest version (for containerized deployment)\n\n### Option 1: Local Development\n\n1. **Clone the repository**:\n\n   ```bash\n   git clone https://github.com/daquino94/linux-path.git\n   cd linux-path\n   ```\n\n2. **Install dependencies**:\n\n   ```bash\n   npm install\n   ```\n\n3. **Start the development server**:\n\n   ```bash\n   npm run dev\n   ```\n\n4. **Open your browser**:\n   Navigate to `http://localhost:3000`\n\n### Option 2: Production Build (Local)\n\n1. **Clone and install** (same as above steps 1-2)\n\n2. **Build the application**:\n\n   ```bash\n   npm run build\n   ```\n\n3. **Start the production server**:\n   ```bash\n   npm start\n   ```\n\n### Option 3: Docker Deployment\n\n#### Using Docker Compose (Recommended)\n\n1. **Clone the repository**:\n\n   ```bash\n   git clone https://github.com/daquino94/linux-path.git\n   cd linux-path\n   ```\n\n2. **Run with Docker Compose**:\n   ```bash\n   docker-compose up -d\n   ```\n\n#### Manual Docker Build\n\n1. **Build the Docker image**:\n\n   ```bash\n   docker build -t linux-path .\n   ```\n\n2. **Run the container**:\n   ```bash\n   docker run -d \\\n     --name linux-path \\\n     -p 3000:3000 \\\n     -e NODE_ENV=production \\\n     linux-path\n   ```\n\n## Architecture\n\n### Multi-stage Docker Build\n\nThe project uses a sophisticated multi-stage Docker build process:\n\n- **Stage 1 (Builder)**: Compiles and builds the Next.js application\n- **Stage 2 (Runner)**: Creates a lean production image with only necessary files\n\nThis approach results in:\n\n- ✅ Smaller final image size\n- 🔒 Enhanced security (no build tools in production)\n- ⚡ Faster deployment times\n- 🧹 Cleaner production environment\n\n### Technology Stack\n\n- **Frontend Framework**: Next.js 15+ with App Router\n- **Language**: TypeScript for type safety\n- **Styling**: Tailwind CSS for responsive design\n- **Internationalization**: next-intl for multi-language support\n- **Content Management**: JSON-based dictionary system\n- **Containerization**: Docker with multi-stage builds\n\n## Configuration\n\n### Environment Variables\n\nThe application can be configured using the following environment variables:\n\n| Variable              | Description                   | Default                 |\n| --------------------- | ----------------------------- | ----------------------- |\n| `NODE_ENV`            | Environment mode              | `development`           |\n| `PORT`                | Port to run the application   | `3000`                  |\n| `NEXT_PUBLIC_APP_URL` | Public URL of the application | `http://localhost:3000` |\n\n### Development Configuration\n\nCreate a `.env.local` file in the root directory:\n\n```env\nNODE_ENV=development\nNEXT_PUBLIC_APP_URL=http://localhost:3000\n```\n\n### Adding New Content or contributing New Languages\n\nplease refer to this [documentation](/dictionaries/README.md)\n\n## Contributing\n\nWe welcome contributions! Here's how you can help:\n\n### Ways to Contribute\n\n1. **🌍 Translations**: Help translate content to new languages\n2. **📝 Content**: Improve existing lessons or add new ones\n3. **🐛 Bug Reports**: Report issues you encounter\n4. **💡 Feature Requests**: Suggest new features\n5. **🔧 Code**: Submit pull requests with improvements\n\n### Development Workflow\n\n1. **Fork the repository**\n2. **Create a feature branch**: `git checkout -b feature/amazing-feature`\n3. **Make your changes**: Follow the coding standards\n4. **Test thoroughly**: Ensure everything works correctly\n5. **Commit your changes**: `git commit -m 'Add amazing feature'`\n6. **Push to branch**: `git push origin feature/amazing-feature`\n7. **Open a Pull Request**: Describe your changes clearly\n\n## Support\n\n- 📖 **Documentation**: Check the [Dictionary Documentation](dictionaries/README.md)\n- 🐛 **Issues**: Report bugs on the [GitHub Issues page](https://github.com/daquino94/linux-path/issues)\n- 💬 **Discussions**: Join conversations in [GitHub Discussions](https://github.com/daquino94/linux-path/discussions)\n- 📧 **Contact**: Reach out to the maintainers\n\n## License\n\nThis project is licensed under the CC-BY-SA-4.0 License - see the [LICENSE](LICENSE) file for details.\n\n## Acknowledgments\n\n- 🙋 **LinuxJourney**: Original inspiration for this project\n- 🐧 **Linux Community**: For the wealth of knowledge and support\n- 👥 **Contributors**: Everyone who has contributed to making this project better\n- 🌟 **Users**: All the learners who use this platform to master Linux\n","funding_links":["https://buymeacoffee.com/balsamic9239"],"categories":["TypeScript"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdaquino94%2Flinux-path","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdaquino94%2Flinux-path","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdaquino94%2Flinux-path/lists"}