{"id":18330078,"url":"https://github.com/semklim/portfolio","last_synced_at":"2026-02-23T01:31:08.334Z","repository":{"id":193571798,"uuid":"689082160","full_name":"semklim/portfolio","owner":"semklim","description":"React, Typescript, Eslint, SASS, Vite","archived":false,"fork":false,"pushed_at":"2025-10-02T14:06:11.000Z","size":116300,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-10-24T19:45:50.840Z","etag":null,"topics":["airbnb-eslint","eslint","feature-sliced-design","prettier","react","reactjs-typescript","scss","svgr","typescript","vite","vite-react","vite-typescript","vitejs","vitejs-react"],"latest_commit_sha":null,"homepage":"https://semklim.vercel.app/","language":"HTML","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/semklim.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":"2023-09-08T18:54:42.000Z","updated_at":"2025-10-02T14:06:15.000Z","dependencies_parsed_at":"2024-01-27T12:03:31.064Z","dependency_job_id":"3d549533-0d75-419d-ac2d-b3f67bd02469","html_url":"https://github.com/semklim/portfolio","commit_stats":null,"previous_names":["semklim/portfolio"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/semklim/portfolio","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/semklim%2Fportfolio","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/semklim%2Fportfolio/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/semklim%2Fportfolio/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/semklim%2Fportfolio/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/semklim","download_url":"https://codeload.github.com/semklim/portfolio/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/semklim%2Fportfolio/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29734468,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-22T20:09:16.275Z","status":"ssl_error","status_checked_at":"2026-02-22T20:09:13.750Z","response_time":110,"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":["airbnb-eslint","eslint","feature-sliced-design","prettier","react","reactjs-typescript","scss","svgr","typescript","vite","vite-react","vite-typescript","vitejs","vitejs-react"],"created_at":"2024-11-05T19:20:14.807Z","updated_at":"2026-02-23T01:31:08.306Z","avatar_url":"https://github.com/semklim.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Portfolio React.tsx + Featured-Sliced Design + SEO Optimization\n\nWelcome to the project powered by a robust tech stack and an organized code structure. This README.md file will guide you through the project setup, folder structure, and provide some context on how to get started.\n\n## Table of Contents\n\n- [About Project](#about-project)\n- [Folder Structure](#folder-structure)\n- [Tech Stack and API](#tech-stack-and-api)\n- [Getting Started](#getting-started)\n- [Contributing](#contributing)\n- [License](#license)\n\n## About Project\n   This website serves as a comprehensive portfolio showcasing my various projects and expertise in programming. Built on a robust tech stack it offers a dynamic and visually appealing user experience.\n   \n   Utilizing lazy-loading techniques for content and React components, the website achieves an impressive [Page speed score of 92](https://pagespeed.web.dev/analysis/https-semklim-vercel-app/ugefvxtg3c?form_factor=mobile) for mobile devices, ensuring optimal performance. Additionally, meticulous [SEO optimization has resulted in an 86 score](https://sitechecker.perfect-seo.com.ua/en/inner-optimization/analyzer/?url=semklim.vercel.app), enhancing the website's visibility and reach on search engines. Furthermore, it includes [Schema.org](https://schema.org/) microdata in [JSON+LD](https://www.quattr.com/seo-glossary#json-ld) format for enhanced search engine understanding.\n\n   In addition to performance and SEO enhancements, the site incorporates a Content Security Policy (CSP) to prevent XSS attacks, ensuring a secure browsing experience for users.\n\n   The architecture of the project is based on the principles of [Feature-Sliced Design](https://feature-sliced.design/), providing a structured and scalable foundation for seamless development and maintenance. With a focus on both technical excellence and user experience, this website serves as a testament to my skills and dedication to delivering high-quality web solutions.\n\n\n## Folder Structure\n\nThe project is organized using the [Feature-Sliced Design](https://feature-sliced.design/) approach, which divides the codebase into meaningful sections:\n\n- **app**: This folder contains app-wide settings, styles, and providers. It's a great place to configure global settings and provide context to the entire application.\n\n- **pages**: The compositional layer where full pages are constructed from entities, features, and widgets. This is where you define the structure of your application's screens.\n\n- **widgets**: This folder is dedicated to combining entities and features into meaningful blocks. Widgets can be reused across different pages or features, promoting code reusability.\n\n- **features**: Features represent user interactions and actions that bring business value to the user. Each feature should encapsulate a specific piece of functionality.\n\n- **entities**: Business entities live here. These are the core data structures and models that represent the fundamental concepts of your application.\n\n- **shared**: Reusable functionality detached from the specifics of the project/business. This can include utility functions, common components, or any code that can be shared across various parts of your application.\n\n## Tech Stack and API\n### Tech\n\n- **_[React](https://react.dev/)_**: A popular JavaScript library for building user interfaces.\n- **_[Framer Motion](https://www.framer.com/motion/)_**: A simple and powerful JavaScript animation library for React.\n- **_[TypeScript](https://www.typescriptlang.org/)_**: Adds static types to JavaScript, enhancing code quality and developer experience.\n- **_[Vite](https://vitejs.dev/)_**: A fast build tool for modern web development.\n- **_[SCSS](https://sass-lang.com/)_**: A preprocessor for CSS, providing a more organized and maintainable way to style your components.\n- **_[SVGR](https://react-svgr.com/)_**: A tool to transform SVG files into React components, making it easy to work with SVG graphics in your project.\n- **_[ESLint](https://eslint.org/)_**: A linter tool to analyze your code for potential errors and enforce code style conventions.\n- **_[Prettier](https://prettier.io/)_**: An opinionated code formatter to ensure consistent code formatting.\n- **_[AirBnB](https://airbnb.io/javascript/react/)_**: A popular ESLint and Prettier configuration that enforces coding standards and best practices.\n  \n### API\n- **_[Emailjs](https://www.emailjs.com/)_**: Send text/html emails from your code to any smtp server.\n\n  \n## Getting Started\n\n1. Clone the repository:\n\n   ```bash\n   git clone \u003crepository-url\u003e\n   cd \u003cproject-directory\u003e\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 and visit [http://localhost:3000](http://localhost:3000) to see your application in action.\n\n## Contributing\n\nContributions are welcome! If you'd like to contribute to this project, please follow our [contribution guidelines](CONTRIBUTING.md).\n\n## License\n\nThis project is licensed under the [MIT License](LICENSE), which means you are free to use, modify, and distribute the code in accordance with the terms of the license.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsemklim%2Fportfolio","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsemklim%2Fportfolio","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsemklim%2Fportfolio/lists"}