{"id":21037622,"url":"https://github.com/mapledevjs/mosaic","last_synced_at":"2026-02-18T03:01:47.340Z","repository":{"id":239333893,"uuid":"393160463","full_name":"mapleDevJS/mosaic","owner":"mapleDevJS","description":"Test Assesment","archived":false,"fork":false,"pushed_at":"2025-06-05T02:28:32.000Z","size":1783,"stargazers_count":0,"open_issues_count":2,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-10-22T03:08:27.368Z","etag":null,"topics":["html5","react","redux","redux-logic","scss","typescript","webpack"],"latest_commit_sha":null,"homepage":"https://mosaic-robots.netlify.app","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mapleDevJS.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2021-08-05T20:13:56.000Z","updated_at":"2024-12-19T15:00:52.000Z","dependencies_parsed_at":"2024-05-11T16:31:08.122Z","dependency_job_id":"6d231003-961a-47a1-9f59-56ab1e279aed","html_url":"https://github.com/mapleDevJS/mosaic","commit_stats":null,"previous_names":["mapledevjs/mosaic"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/mapleDevJS/mosaic","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mapleDevJS%2Fmosaic","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mapleDevJS%2Fmosaic/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mapleDevJS%2Fmosaic/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mapleDevJS%2Fmosaic/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mapleDevJS","download_url":"https://codeload.github.com/mapleDevJS/mosaic/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mapleDevJS%2Fmosaic/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29566644,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-18T00:47:08.760Z","status":"online","status_checked_at":"2026-02-18T02:00:09.468Z","response_time":162,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["html5","react","redux","redux-logic","scss","typescript","webpack"],"created_at":"2024-11-19T13:27:13.904Z","updated_at":"2026-02-18T03:01:47.324Z","avatar_url":"https://github.com/mapleDevJS.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Netlify Status](https://api.netlify.com/api/v1/badges/19eb1cb0-85a1-4de4-ba71-381f73185dbc/deploy-status)](https://app.netlify.com/sites/mosaic-robots/deploys)\n\n\u003c!-- PROJECT LOGO --\u003e\n\u003cbr /\u003e\n\u003cp align=\"center\"\u003e\n\u003cimg src=\"src/assets/favicon.png\" alt=\"Logo\" width=\"80\" height=\"80\"\u003e\n\n  \u003ch3 align=\"center\"\u003eMosaic's Test Assessment\u003c/h3\u003e\n\u003c/p\u003e\n\n\n\n\u003c!-- TABLE OF CONTENTS --\u003e\n\u003cdetails open=\"open\"\u003e\n  \u003csummary\u003eTable of Contents\u003c/summary\u003e\n  \u003col\u003e\n    \u003cli\u003e\n      \u003ca href=\"#about-the-project\"\u003eAbout The Project\u003c/a\u003e\n      \u003cul\u003e\n        \u003cli\u003e\u003ca href=\"#built-with\"\u003eBuilt With\u003c/a\u003e\u003c/li\u003e\n      \u003c/ul\u003e\n    \u003c/li\u003e\n    \u003cli\u003e\n      \u003ca href=\"#getting-started\"\u003eGetting Started\u003c/a\u003e\n      \u003cul\u003e\n        \u003cli\u003e\u003ca href=\"#prerequisites\"\u003ePrerequisites\u003c/a\u003e\u003c/li\u003e\n        \u003cli\u003e\u003ca href=\"#installation\"\u003eInstallation\u003c/a\u003e\u003c/li\u003e\n      \u003c/ul\u003e\n    \u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"#contact\"\u003eContact\u003c/a\u003e\u003c/li\u003e\n  \u003c/ol\u003e\n\u003c/details\u003e\n\n\n\n\u003c!-- ABOUT THE PROJECT --\u003e\n## About The Project\n\n\u003cimg src=\"public/cover.png\" alt=\"Logo\" width=\"550\" height=\"380\"\u003e\n\nThe goal of this assessment is to replicate the frontend application as close as\npossible. You are allowed to use any frontend framework (React.js, Vue.js, etc.) or use\nplain Javascript, HTML, and CSS.\n\n\n\nThe first step of the assignment is to fetch data from this public JSON API, and present\nthe information on the screen.\n\nThe second step of the assignment is to style the web page.\n\nNext, you are going to add a text input, where a user can filter the list of students\nby their name (including full name!).\n\nIn the fourth step, you are going to make each student have an expandable list view, so that all\nof their test scores may be viewed. \n\nFinally, you will add a text input field to add tags for a specific student. Here is what it\nlooks like (adding a tag called “new tag”):\nYou will then add another search bar to search for students based on tags. A strong\nsubmission will have this functionality:\nIf a name is entered in the search by name input, and a tag is entered in the\nsearch by tag input, results that include both the name and tag should be shown.\n\n\n### Built With\n\n* [React](https://reactjs.org/)\n* [Redux](https://redux.js.org/)\n* [redux-logic](https://github.com/jeffbski/redux-logic)\n* [Typescript](https://www.typescriptlang.org/)\n* [WebPack 5](https://webpack.js.org/)\n\n\n\n\u003c!-- GETTING STARTED --\u003e\n## Getting Started\n\n### Prerequisites\n\n* npm\n  ```sh\n  npm install npm@latest -g\n  ```\n\n* node.js\n  ```sh\n  npm install node@14.17.0\n  ```\n* yarn\n  ```sh\n  npm install yarn -g\n  ```\n\n### Installation\n\n1. Install NPM packages\n   ```sh\n   yarn install\n   ```\n2. Install Husky\n   ```sh\n   yarn run prepare\n   ```\n3. Run the project\n   ```sh\n   yarn run start\n   ```\n4. Build the project\n   ```sh\n   yarn run build\n   ```\n\u003c!-- CONTACT --\u003e\n## Contact\n\nAlexey Ivanov - alexey.ivanov.js@gmail.com\n\n\n\u003c!-- MARKDOWN LINKS \u0026 IMAGES --\u003e\n[linkedin-shield]: https://img.shields.io/badge/-LinkedIn-black.svg?style=for-the-badge\u0026logo=linkedin\u0026colorB=555\n[linkedin-url]: https://www.linkedin.com/in/alexey-ivanov-fcsmjs\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmapledevjs%2Fmosaic","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmapledevjs%2Fmosaic","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmapledevjs%2Fmosaic/lists"}