https://github.com/amirzenoozi/smal-interview

The React Landing Page For SMAL Interview

https://github.com/amirzenoozi/smal-interview

Science Score: 13.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (14.8%) to scientific vocabulary

Keywords

gsap gsap-scrol interview interview-questions landing-page react scroll-animation scroll-trigger smal smal-interview typescript
Last synced: 5 months ago · JSON representation

Repository

The React Landing Page For SMAL Interview

Basic Info
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Topics
gsap gsap-scrol interview interview-questions landing-page react scroll-animation scroll-trigger smal smal-interview typescript
Created over 1 year ago · Last pushed over 1 year ago
Metadata Files
Readme

README.md

SMAL Interview Task

This project was bootstrapped with Create React App. This project supposed to be a landing page to introduce the specific product. The design is pixel perfect and mobile-first. The project is developed with React, TypeScript, and SCSS. The project is developed with reusable components and the components are developed with StoryBook.

Main

Objectives

  • [x] Developed Pixel Perfect Design
  • [x] Reusable Components
  • [x] Add StoryBook
  • [x] Support Multiple Languages (English, German, Italian, Dutch)
  • [x] Variable Based Typography System
  • [x] Implement SpriteSvg Icon System
  • [ ] UX
    • [x] Prevent Animating When prefers-reduced-motion is reduce
    • [x] Mobile First Design
    • [x] Change Lang By QueryParams; Just Set/Change lng
  • [ ] Unit Test
    • [x] Button Component
    • [x] FlexRow
    • [x] FlexCol
    • [x] Container
  • [ ] Deployment
    • [x] Dockerfile
    • [x] GitHub Actions to Push Image to DockerHub
    • [x] Deploy on the external server

Run the project

In the project directory, you can run: - git clone git@github.com:amirzenoozi/smal-interview.git - cd smal-interview - git config core.hooksPath .githooks - yarn install - yarn start - Open http://localhost:3000 to view it in the browser.

Sprite SVG System

Nowadays, SVG icons are one of the most common assets in Web applications. And we need to use them in our applications properly. Using font-icon system is one of the most common ways to render the SVG icons, however, in this way, we will treat them as a font while they are kind of vector. Using the img tag is our second option, but we don't want it since we are not able to use the SVG features including scaling and changing their colors, also in this way search engines index these assets as an Image and we don't want this. One of the best ways to render SVG icons is using SpriteSVG files, which enable us to render them wherever we want with an SVG tag. For more information:

  1. Icon Fonts vs. SVG sprite
  2. Icon Fonts vs SVGs

Other Available Scripts

  1. For Test: yarn run test
  2. For Build: yarn run build
  3. For Manual Setting: yarn run eject
  4. To Generate Sprite SVG file: yarn run sprite

Note: this is a one-way operation. Once you eject, you can’t go back!

Launches the test runner in the interactive watch mode.\ See the section about running tests for more information.

If you aren’t satisfied with the build tool and configuration choices, you can eject at any time. This command will remove the single build dependency from your project.

Instead, it will copy all the configuration files and the transitive dependencies (webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except eject will still work, but they will point to the copied scripts so you can tweak them. At this point you’re on your own.

Useful Links

  1. Create React App documentation.
  2. React documentation.

Owner

  • Name: Amirhossein Douzandeh Zenoozi
  • Login: amirzenoozi
  • Kind: user
  • Location: Bolzano, Italy

🐍 Python Lover‌ 🧠 AI Student 💻 Front-End Engineer

GitHub Events

Total
Last Year

Issues and Pull Requests

Last synced: 11 months ago

All Time
  • Total issues: 0
  • Total pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Total issue authors: 0
  • Total pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels

Dependencies

.github/workflows/docker-hub.yml actions
  • actions/checkout v1 composite
Dockerfile docker
  • node 18-alpine build
package-lock.json npm
  • 1239 dependencies
package.json npm
  • @storybook/addon-essentials 7.6.7 development
  • @storybook/addon-interactions 7.6.7 development
  • @storybook/addon-links 7.6.7 development
  • @storybook/addon-onboarding 1.0.10 development
  • @storybook/blocks 7.6.7 development
  • @storybook/preset-create-react-app 7.6.7 development
  • @storybook/react 7.6.7 development
  • @storybook/react-webpack5 7.6.7 development
  • @storybook/test 7.6.7 development
  • @types/node-sass ^4.11.7 development
  • @typescript-eslint/eslint-plugin ^6.4.0 development
  • eslint ^8.0.1 development
  • eslint-config-standard-with-typescript ^43.0.0 development
  • eslint-plugin-import ^2.25.2 development
  • eslint-plugin-n ^15.0.0 || ^16.0.0 development
  • eslint-plugin-promise ^6.0.0 development
  • eslint-plugin-react ^7.33.2 development
  • eslint-plugin-storybook ^0.6.15 development
  • prop-types 15.8.1 development
  • sass ^1.69.5 development
  • storybook 7.6.7 development
  • webpack 5.89.0 development
  • @fortawesome/react-fontawesome ^0.2.0
  • @gsap/react ^2.1.1
  • @icon-park/react ^1.4.2
  • @testing-library/jest-dom ^5.17.0
  • @testing-library/react ^13.4.0
  • @testing-library/user-event ^13.5.0
  • @types/jest ^27.5.2
  • @types/node ^16.18.68
  • @types/react ^18.2.45
  • @types/react-dom ^18.2.18
  • gsap ^3.12.5
  • i18next ^23.7.11
  • i18next-http-backend ^2.4.2
  • react ^18.3.1
  • react-animated-cursor ^2.11.2
  • react-device-detect ^2.2.3
  • react-dom ^18.3.1
  • react-i18next ^13.5.0
  • react-photo-album ^2.3.0
  • react-router-dom ^6.23.1
  • react-scripts 5.0.1
  • react-tooltip ^5.25.0
  • svg2sprite-cli ^2.0.1
  • typescript *
  • web-vitals ^2.1.4
src/components/btn/package.json npm
yarn.lock npm
  • 1770 dependencies