{"id":29796746,"url":"https://github.com/dawidolko/ubuntu-simulaing-system-gui","last_synced_at":"2026-03-04T23:01:51.843Z","repository":{"id":182515333,"uuid":"668625817","full_name":"dawidolko/Ubuntu-Simulaing-System-GUI","owner":"dawidolko","description":"Personal portfolio website simulating Ubuntu 20.04, made using NEXT.js \u0026 tailwind CSS","archived":false,"fork":false,"pushed_at":"2025-05-28T18:37:53.000Z","size":7983,"stargazers_count":23,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-11-07T16:03:40.427Z","etag":null,"topics":["nextjs","personal-portfolio-website","portfolio","react","reactjs","tailwindcss","ubuntu","ubuntu2004"],"latest_commit_sha":null,"homepage":"https://ubuntu.dawidolko.pl/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dawidolko.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","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},"funding":{"github":["dawidolko"],"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null}},"created_at":"2023-07-20T08:42:16.000Z","updated_at":"2025-11-04T11:40:07.000Z","dependencies_parsed_at":null,"dependency_job_id":"bc7bb721-3275-46fb-8f31-45715d0c684e","html_url":"https://github.com/dawidolko/Ubuntu-Simulaing-System-GUI","commit_stats":null,"previous_names":["dawidolko/programming-php","dawidolko/simulaing-ubuntu-system-gui","dawidolko/ubuntu-simulaing-system-gui"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/dawidolko/Ubuntu-Simulaing-System-GUI","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dawidolko%2FUbuntu-Simulaing-System-GUI","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dawidolko%2FUbuntu-Simulaing-System-GUI/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dawidolko%2FUbuntu-Simulaing-System-GUI/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dawidolko%2FUbuntu-Simulaing-System-GUI/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dawidolko","download_url":"https://codeload.github.com/dawidolko/Ubuntu-Simulaing-System-GUI/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dawidolko%2FUbuntu-Simulaing-System-GUI/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30098086,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-04T22:49:54.894Z","status":"ssl_error","status_checked_at":"2026-03-04T22:49:48.883Z","response_time":59,"last_error":"SSL_read: 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":["nextjs","personal-portfolio-website","portfolio","react","reactjs","tailwindcss","ubuntu","ubuntu2004"],"created_at":"2025-07-28T05:34:24.282Z","updated_at":"2026-03-04T23:01:51.827Z","avatar_url":"https://github.com/dawidolko.png","language":"JavaScript","funding_links":["https://github.com/sponsors/dawidolko"],"categories":[],"sub_categories":[],"readme":"# 🟠 ubuntu.dawidolko.pl  \n_A Next.js + Tailwind CSS portfolio that re-creates the Ubuntu 20.04 desktop inside your browser_\n\n[![Build](https://img.shields.io/github/actions/workflow/status/dawidolko/Simulaing-Ubuntu-System-GUI/Build.yml?label=build\u0026logo=github)](https://github.com/dawidolko/Simulaing-Ubuntu-System-GUI/actions)\n[![Website Status](https://img.shields.io/website?down_color=red\u0026down_message=offline\u0026up_message=online\u0026url=https%3A%2F%2Fubuntu.dawidolko.pl)](https://ubuntu.dawidolko.pl)\n[![Stars](https://img.shields.io/github/stars/dawidolko/Simulaing-Ubuntu-System-GUI?style=social)](https://github.com/dawidolko/Simulaing-Ubuntu-System-GUI/stargazers)\n\n\u003e **Live Demo:** \u003chttps://ubuntu.dawidolko.pl\u003e\n\n---\n\n## 📑 Table of Contents\n1. [About](#about)\n2. [Project Structure](#project-structure)\n3. [Star History](#star-history)\n4. [Getting Started](#getting-started)\n5. [Customization Guide](#customization-guide)\n6. [Scripts \u0026 Commands](#scripts--commands)\n7. [Contributing](#contributing)\n8. [License \u0026 Author](#license--author)\n\n---\n\n## About\n`ubuntu.dawidolko.pl` is an **open-source, desktop-themed portfolio** that mimics Ubuntu 20.04’s GNOME shell: a dock, draggable windows, themed apps and a dark-orange palette.  \nIt’s built with **Next.js** (React), **Tailwind CSS**, and ships as a fully static site—perfect for free hosting on GitHub Pages. 🦄🖥️\n\nKey features:\n\n- ✅ **Next.js** for server-side rendering \u0026 static export  \n- 🎨 **Tailwind CSS** for utility-first styling  \n- ✉️ **EmailJS**-powered contact form (no backend needed)  \n- ⚙️ **Config-driven apps** defined in `apps.config.js`  \n- 📱 Responsive and PWA-ready\n\n---\n\n## Project Structure\n```text\n.\n├── .next/               # Next.js build output\n├── .github/             # Actions \u0026 issue templates\n├── .vscode/             # Dev-container \u0026 tasks\n├── components/          # Re-usable React components\n├── files/               # Static sample documents\n├── images/              # Icons \u0026 wallpapers\n├── pages/               # Next.js pages \u0026 API routes\n├── public/              # Public assets served at /\n├── styles/              # Global Tailwind styles\n├── themes/              # Theme tokens / CSS vars\n├── apps.config.js       # Dock \u0026 window definitions\n├── tailwind.config.js   # Tailwind setup\n├── package.json         # NPM metadata \u0026 scripts\n├── README.md            # You are here!\n└── yarn.lock | package-lock.json\n````\n\n---\n\n## Star History\n\n[![Star History Chart](https://api.star-history.com/svg?repos=dawidolko/Simulaing-Ubuntu-System-GUI\\\u0026type=Date)](https://star-history.com/#dawidolko/Simulaing-Ubuntu-System-GUI\u0026Date)\n\n---\n\n## Getting Started\n\n\u003e Requires **Node 18 +** and **npm** (or **yarn / pnpm**).\n\n```bash\n# 1 – Clone the repo\ngit clone https://github.com/dawidolko/Ubuntu-Simulaing-System-GUI\ncd Ubuntu-Simulaing-System-GUI\n\n# 2 – Install dependencies\nnpm install            # or yarn / pnpm\n\n# 3 – Run the dev server\nnpm start              # opens http://localhost:3000\n```\n\n### Production build\n\n```bash\nnpm run build          # generates an optimised /.next bundle\nnpm run export         # exports static HTML to /out for GitHub Pages\n```\n\n---\n\n## Customization Guide\n\n| What you want to change | File(s) to edit                                                                     |\n| ----------------------- | ----------------------------------------------------------------------------------- |\n| **Apps \u0026 dock icons**   | `apps.config.js`                                                                    |\n| **Theme colours**       | `themes/ubuntu.css` or Tailwind config                                              |\n| **Contact-form keys**   | `.env` → `NEXT_PUBLIC_USER_ID`, `NEXT_PUBLIC_SERVICE_ID`, `NEXT_PUBLIC_TEMPLATE_ID` |\n| **Portfolio texts**     | Components in `pages/` and `components/`                                            |\n| **Favicons / logos**    | Replace images in `public/`                                                         |\n\n\u003e **EmailJS setup**\n\u003e\n\u003e 1. Create an account at [https://emailjs.com](https://emailjs.com)\n\u003e 2. Add a Gmail / Outlook service → grab **Service ID**\n\u003e 3. Create a template → grab **Template ID**\n\u003e 4. In your EmailJS dashboard copy **User ID**\n\u003e 5. Add them to a `.env` at the project root:\n\u003e\n\u003e    ```dotenv\n\u003e    NEXT_PUBLIC_USER_ID=xxxxxxxx\n\u003e    NEXT_PUBLIC_SERVICE_ID=xxxxxxxx\n\u003e    NEXT_PUBLIC_TEMPLATE_ID=template_fqqqb9g\n\u003e    ```\n\n---\n\n## Scripts \u0026 Commands\n\n| Command          | What it does                                         |\n| ---------------- | ---------------------------------------------------- |\n| `npm start`      | Runs **Next.js** in development mode with hot-reload |\n| `npm run build`  | Creates an optimised production build                |\n| `npm run export` | Converts the site into static HTML in `/out`         |\n| `npm run lint`   | Runs ESLint on source files                          |\n| `npm run format` | Formats code with Prettier                           |\n\n\u003e If you prefer **yarn** simply replace `npm` with `yarn`.\n\n---\n\n## Contributing\n\nAll kinds of contributions are **warmly welcome**:\n\n1. **Fork**   →   `git clone`\n2. `git checkout -b feat/amazing-feature`\n3. Code, test, `npm run lint`\n4. `git commit -m \"Add amazing feature\"`\n5. `git push origin feat/amazing-feature`\n6. Open a **Pull Request** 🚀\n\nPlease attach screenshots or GIFs when altering the UI.\n\n---\n\n## License \u0026 Author\n\n* **License:** MIT – free to use, tweak, and share 🔓\n* **Author:** **Dawid Olko**\n\n  * Portfolio [https://dawidolko.pl](https://dawidolko.pl)\n  * GitHub [https://github.com/dawidolko](https://github.com/dawidolko)\n  * LinkedIn [https://www.linkedin.com/in/dawidolko/](https://www.linkedin.com/in/dawidolko/)\n\n\u003e Crafted with ☕, 🎧 and a dash of open-source spirit in honour of Ubuntu’s friendly orange glow.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdawidolko%2Fubuntu-simulaing-system-gui","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdawidolko%2Fubuntu-simulaing-system-gui","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdawidolko%2Fubuntu-simulaing-system-gui/lists"}