検索
ホームページウェブフロントエンドCSSチュートリアルReact を使用して Sunnyside Agency Web サイトを構築する

Building the Sunnyside Agency Website with React

導入

Sunnyside Agency の Web サイトの詳細な説明へようこそ。React を使用して構築されたモダンでスタイリッシュなサイトです。このプロジェクトでは、動的で応答性の高い Web アプリケーションを作成する際の React の力を紹介します。このプロジェクトを構成するさまざまなコンポーネントを詳しく見て、それらがどのように連携して魅力的なユーザー エクスペリエンスを生み出すのかを探ってみましょう。

プロジェクト概要

サニーサイド エージェンシーの Web サイトは、クリエイティブ エージェンシーのサービス、プロジェクト、紹介文を強調するように設計されています。スムーズなスクロールと応答性の高いレイアウトを備えたクリーンでプロフェッショナルなデザインが特徴です。 Web サイトには次のセクションが含まれています:

  • ホーム
  • について
  • サービス
  • プロジェクト
  • お客様の声
  • フッター

特徴

  • レスポンシブ デザイン: さまざまな画面サイズに適応して、最適な表示エクスペリエンスを実現します。
  • スムーズ スクロール: セクション間のスムーズなスクロールによりナビゲーションが強化されました。
  • 動的コンテンツ: React コンポーネントは、Web サイトのさまざまなセクションを動的にレンダリングします。
  • インタラクティブ要素: ホバー効果とトランジションを備えたボタンとリンクが含まれます。

使用されている技術

  • React: ユーザー インターフェイスの構築と状態の管理用。
  • CSS: コンポーネントのスタイルを設定し、視覚的に魅力的なデザインを確保します。
  • Google フォント: ウェブサイトの美しさを高めるカスタム タイポグラフィ用。
  • React Scroll: セクション間をスムーズにスクロールします。

プロジェクトの構造

プロジェクトはさまざまな React コンポーネントで構成されており、それぞれが Web サイトの特定の部分を担当します。

  • App.js: 他のすべてのコンポーネントをレンダリングするメインコンポーネント。
  • Navbar.js: さまざまなセクションへのリンクを含むナビゲーション バーが含まれています。
  • Home.js: 紹介コンテンツとメイン画像を表示します。
  • About.js: 代理店に関する情報を画像とテキストで提供します。
  • Services.js: 代理店が提供するサービスを画像と説明付きで紹介します。
  • Projects.js: プロジェクト イメージのギャラリーを表示します。
  • Testimonials.js: 写真と引用を含むクライアントの声が特徴です。
  • Footer.js: 連絡先リンクとソーシャル メディア アイコンが含まれます。

インストール

Sunnyside Agency プロジェクトを開始するには、次の手順に従ってください:

  1. リポジトリのクローンを作成します:
   git clone https://github.com/abhishekgurjar-in/SunnySide-Agency.git
  1. プロジェクト ディレクトリに移動します:
   cd sunnyside-agency
  1. 依存関係のインストール:
   npm install
  1. 開発サーバーを起動します:
   npm start
  1. ブラウザを開いて次の場所にアクセスしてください:

http://localhost:3000

コードの説明

App.js

import React from "react";
import "./App.css";
import Navbar from "./components/Navbar";
import About from "./components/About";
import Services from "./components/Services";
import Projects from "./components/Projects";
import Home from "./components/Home";
import Footer from "./components/Footer";
import Testimonials from "./components/Testimonials";

const App = () => {
  return (
    
      <navbar></navbar>
      <home></home>
      <about></about>
      <services></services>
      <projects></projects>
      <testimonials></testimonials>
      <footer></footer>
    >
  );
};

export default App;

App.js ファイルは、他のすべてのコンポーネントをインポートしてレンダリングする主要なコンポーネントであり、Web サイトの中核構造を形成します。

Navbar.js

import React from "react";
import React を使用して Sunnyside Agency Web サイトを構築する from "../assets/images/React を使用して Sunnyside Agency Web サイトを構築する.svg";
import { Link as ScrollLink } from 'react-scroll';
const Navbar = () => {
  return (
    <div classname="Navbar">
     <div classname="React を使用して Sunnyside Agency Web サイトを構築する">
     <img src="%7BReact" sunnyside agency web alt="React を使用して Sunnyside Agency Web サイトを構築する">
     </div>
      <div classname="header">
      <scrolllink to="about" smooth="{true}" duration="{500}">
            About
          </scrolllink>
          <scrolllink to="services" smooth="{true}" duration="{500}">
            Services
          </scrolllink>
          <scrolllink to="projects" smooth="{true}" duration="{500}">
            Projects
          </scrolllink>
      <button>CONTACT</button>
      </div>
    </div>
  );
};

export default Navbar;

Navbar.js コンポーネントは、Web サイトのさまざまなセクションへのスムーズにスクロールするリンクを備えたナビゲーション バーを提供します。

ホーム.js

import React from 'react'
import headImage from "../assets/images/desktop/image-header.jpg"
import aero from "../assets/images/icon-arrow-down.svg"
const Home = () => {
  return (
    <div classname="home">
    <h1 id="WE-ARE-CREATIVES">WE ARE CREATIVES</h1>
    <img classname="aero-image" src="%7Baero%7D" alt="">
    <img classname="head-image" src="%7BheadImage%7D" alt="">
    </div>
  )
}

export default Home

Home.js には、見出しとメイン画像を含む導入セクションがあり、Web サイトの残りの部分の雰囲気を設定します。

.js について

import React from "react";
import eggImage from '../assets/images/desktop/image-transform.jpg'
import cupImage from '../assets/images/desktop/image-stand-out.jpg'

const About = () => {
  return <div id="about" classname="about">
  <div classname="about-first">
    <div classname="text-about">
        <h1 id="Transform-your-br-brand">Transform your <br> brand</h1>
        <p>We are a full-service creative agency specializing in helping brands grow fast. Engage your clients through compelling visuals that do most of the marketing for you.</p>
        <h4 id="LEARN-MORE">LEARN MORE</h4>
    </div>
    <div classname="egg-section">
        <img src="%7BeggImage%7D" alt="">
    </div>
  </div>
  <div classname="about-second">
    <div classname="cup-section">
        <img src="%7BcupImage%7D" alt="">
    </div>
    <div classname="text-about">
        <h1 id="Stand-out-to-the-right-br-audience">Stand out to the right <br> audience</h1>
        <p>Using a collaborative formula of designers, researchers, photographers, videographers, and copywriters, we’ll build and extend your brand in digital places.</p>
        <h4 id="LEARN-MORE">LEARN MORE</h4>
    </div>
  </div>
  </div>;
};

export default About;

About.js コンポーネントは、視覚的に魅力的なセクションで代理店の使命とサービスを強調表示します。

サービス.js

import React from "react";
import rightImage from "../assets/images/desktop/image-photography.jpg";
import leftImage from "../assets/images/desktop/image-graphic-design.jpg";

const Services = () => {
  return (
    <div id="services" classname="service-container">
      <div classname="services">
        <div classname="service-left">
          <div classname="text-service">
            <h1 id="Graphic-Design">Graphic Design</h1>
            <h4>
              Great design makes you memorable. We deliver artwork that
              underscores your brand message and captures potential clients’
              attention.
            </h4>
          </div>
          <img src="%7BleftImage%7D" alt="">
        </div>
        <div classname="service-right">
          <div classname="text-service">
            <h1 id="Photography">Photography</h1>
            <h4>
              Increase your credibility by getting the most stunning,
              high-quality photos that improve your business image.
            </h4>
          </div>
          <img src="%7BrightImage%7D" alt="">
        </div>
      </div>
      <div></div>
    </div>
  );
};

export default Services;

Services.js は、代理店が提供するサービスを画像と説明とともに表示します。

プロジェクト.js

import React from "react";
import ProjectImage1 from "../assets/images/desktop/image-gallery-milkbottles.jpg";
import ProjectImage2 from "../assets/images/desktop/image-gallery-orange.jpg";
import ProjectImage3 from "../assets/images/desktop/image-gallery-cone.jpg";
import ProjectImage4 from "../assets/images/desktop/image-gallery-sugarcubes.jpg";


const Projects = () => {
  return (
      <div id="projects" classname="projects">
        <img classname="project" src="%7BProjectImage1%7D" alt="">
        <img classname="project" src="%7BProjectImage2%7D" alt="">
        <img classname="project" src="%7BProjectImage3%7D" alt="">
        <img classname="project" src="%7BProjectImage4%7D" alt="">
      </div>
  );
};

export default Projects;

Projects.js コンポーネントには、代理店の仕事を紹介する画像のギャラリーが表示されます。

お客様の声.js

import React from 'react'
import Emily from "../assets/images/image-emily.jpg"
import Jennie from "../assets/images/image-jennie.jpg"
import Thomas from "../assets/images/image-thomas.jpg"

const Testimonials = () => {
  return (
    <div classname="testimonials">
        <h3 id="CLIENT-TESTIMONIALS">CLIENT TESTIMONIALS</h3>
        <div classname="cards">
          <div classname="card">
            <img src="%7BEmily%7D" alt="">
            <h5 id="We-put-our-trust-in-Sunnyside-and-they-delivered-making-sure-our-needs-were-met-and-deadlines-were-always-hit">We put our trust in Sunnyside and they delivered, making sure our needs were met and deadlines were always hit.</h5>
            <h4 id="Emily-R">Emily R.</h4>
            <p>Marketing Director</p>
          </div>
          <div classname="card">
            <img src="%7BThomas%7D" alt="">
            <h5 id="Sunnyside-s-enthusiasm-coupled-with-their-keen-interest-in-our-brand-s-success-made-it-a-satisfying-and-enjoyable-experience">Sunnyside’s enthusiasm coupled with their keen interest in our brand’s success made it a satisfying and enjoyable experience.</h5>
            <h4 id="Thomas-S">Thomas S.</h4>
            <p>Chief Operating Officer</p>
          </div>
          <div classname="card">
            <img src="%7BJennie%7D" alt="">
            <h5 id="Incredible-end-result-Our-sales-increased-over-when-we-worked-with-Sunnyside-Highly-recommended">Incredible end result! Our sales increased over 400% when we worked with Sunnyside.Highly recommended!</h5>
            <h4 id="Jennie-F">Jennie F.</h4>
            <p>Business Owner</p>
          </div>
        </div>
      </div>
  )
}

export default Testimonials

Testimonials.js はクライアントからのフィードバックを強調し、代理店のサービスの信頼性を高めます。

フッター.js

import React from "react";
import LogoImage from "../assets/images/React を使用して Sunnyside Agency Web サイトを構築する.svg";
import fb from "../assets/images/icon-facebook.svg";
import ig from "../assets/images/icon-instagram.svg";
import pt from "../assets/images/icon-pinterest.svg";
import tw from "../assets/images/icon-twitter.svg";

const Footer = () => {
  return (
    <div classname="footer">
      <img classname="React を使用して Sunnyside Agency Web サイトを構築するImage" src="%7BLogoImage%7D" alt="">
      <div classname="link-bar">
        <a href="">About</a>
        <a href="">Services</a>
        <a href="">Projects</a>
      </div>
      <div classname="social-link">
        <a href="">
          {" "}
          <img src="%7Bfb%7D" alt="">
        </a>
        <a href="">
          {" "}
          <img src="%7Big%7D" alt="">
        </a>
        <a href="">
          {" "}
          <img src="%7Btw%7D" alt="">
        </a>
        <a href="">
          {" "}
          <img src="%7Bpt%7D" alt="">
        </a>
      </div>
      <p>Made with ❤️ by Abhishek Gurjar</p>
    </div>
  );
};

export default Footer;

Footer.js コンポーネントには、ソーシャル メディア アイコンと著作権表示が含まれています。

ライブデモ

Sunnyside Agency Web サイトの動作を確認するには、ライブ デモにアクセスしてください。

結論

Sunnyside Agency の Web サイトは、最新の応答性の高い Web アプリケーションを作成する際の React の多用途性を証明しています。 React のコンポーネントベースのアーキテクチャを活用することで、代理店のサービスとプロジェクトを効果的に紹介するクリーンでプロフェッショナルなサイトを構築しました。

自由にコードを調べて、ニーズに合わせてカスタマイズしてください。コーディングを楽しんでください!

クレジット

  • React: このプロジェクトで使用されるフレームワークを提供します。
  • Google フォント: タイポグラフィ用。
  • React Scroll: スムーズなスクロール機能用。

著者

Abhishek Gurjar は、実用的で機能的な Web アプリケーションの作成に情熱を注ぐ専任の Web 開発者です。 GitHub で彼のプロジェクトをさらにチェックしてください。

以上がReact を使用して Sunnyside Agency Web サイトを構築するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
@KeyFrames対CSSトランジション:違いは何ですか?@KeyFrames対CSSトランジション:違いは何ですか?May 14, 2025 am 12:01 AM

@keyframesandcsstransitionsdifferincomplexity:@keyframesallowsfordeTailedAnimationのシーケンス、whilecsstransitionshandlesimplestatechanges.usecsstransitionsは、ButtonColorChanges、および@keyframesforintricateanimationslikerotatingingspinnnersを使用します。

静的サイトコンテンツ管理にページCMSを使用します静的サイトコンテンツ管理にページCMSを使用しますMay 13, 2025 am 09:24 AM

私は知っています、私は知っています:たくさんのコンテンツ管理システムオプションが利用可能であり、私はいくつかテストしましたが、実際にはY&#039;知っているものはありませんでしたか?奇妙な価格設定モデル、困難なカスタマイズ、一部は全体になることさえあります&

HTMLのCSSファイルをリンクするための究極のガイドHTMLのCSSファイルをリンクするための究極のガイドMay 13, 2025 am 12:02 AM

CSSファイルをHTMLにリンクすることは、HTMLの一部で要素を使用することで実現できます。 1)タグを使用して、ローカルCSSファイルをリンクします。 2)複数のタグを追加することにより、複数のCSSファイルを実装できます。 3)外部CSSファイルは、そのような絶対URLリンクを使用します。 4)ファイルパスとCSSファイルの読み込み順序の正しい使用を確認し、パフォーマンスを最適化すると、CSSプリプロセッサを使用してファイルをマージできます。

CSS Flexbox vsグリッド:包括的なレビューCSS Flexbox vsグリッド:包括的なレビューMay 12, 2025 am 12:01 AM

FlexBoxまたはグリッドの選択は、レイアウト要件によって異なります。1)FlexBoxは、ナビゲーションバーなどの1次元レイアウトに適しています。 2)グリッドは、雑誌のレイアウトなどの2次元レイアウトに適しています。この2つは、レイアウト効果を改善するためにプロジェクトで使用できます。

CSSファイルを含める方法:メソッドとベストプラクティスCSSファイルを含める方法:メソッドとベストプラクティスMay 11, 2025 am 12:02 AM

CSSファイルを含める最良の方法は、タグを使用してHTMLパーツに外部CSSファイルを導入することです。 1.タグを使用して、外部CSSファイルを導入します。 2。小さな調整のために、インラインCSSを使用できますが、注意して使用する必要があります。 3.大規模プロジェクトでは、@Importを介して他のCSSファイルをインポートするために、SASS以下などのCSSプリプロセッサを使用できます。 4。パフォーマンスのために、CSSファイルをマージし、CDNを使用し、CSSNANOなどのツールを使用して圧縮する必要があります。

FlexBox対グリッド:両方を学ぶべきですか?FlexBox対グリッド:両方を学ぶべきですか?May 10, 2025 am 12:01 AM

はい、Youはrelearnbothlexboxandgrid.1)FlexBoxisidealforone-Dimensional、FlexiblleayoutslikenavigationMenus.2)Gridexcelsintwo-digsignssuchasmagazinelayouts.3)Bothenhanceslaysutibulivedibulisunivedivition、floctonsulururを

軌道力学(またはCSSキーフレームアニメーションの最適化方法)軌道力学(またはCSSキーフレームアニメーションの最適化方法)May 09, 2025 am 09:57 AM

独自のコードをリファクタリングするのはどのように見えますか?ジョン・レアは、彼が書いた古いCSSアニメーションを選び、それを最適化するという思考プロセスを歩きます。

CSSアニメーション:それらを作成するのは難しいですか?CSSアニメーション:それらを作成するのは難しいですか?May 09, 2025 am 12:03 AM

cssanimationsArenotintinlentyhardbutrepracticeanderstanding ofcsspropertiesandtimingfunctions.1)

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

SublimeText3 英語版

SublimeText3 英語版

推奨: Win バージョン、コードプロンプトをサポート!

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール