diff --git a/README.md b/README.md index 04fc1e2..3b1acdd 100644 --- a/README.md +++ b/README.md @@ -4,8 +4,18 @@ StartConnect Hub is a revolutionary platform designed to bridge the gap between

This Project is the part of

- GSSoC - GSSoC + + + + + + + + + + +
Event LogoEvent NameEvent Description
GSSoC 24GirlScript Summer of Code 2024GirlScript Summer of Code is a three-month-long Open Source Program conducted every summer by GirlScript Foundation. It is an initiative to bring more beginners to Open-Source Software Development. +
## Project Admin ✨ @@ -126,6 +136,18 @@ You are all set! 🎉 Thank you for your contributions! Your efforts help improve StartConnect Hub and support our mission to empower startups and investors. Happy coding! 🚀✨ +## Code of Conduct + +Please note that this project is released with a [Contributor Code of Conduct](CODE_OF_CONDUCT.md). By participating in this project you agree to abide by its terms. + +## Contributing Guidelines + +We believe in the power of collaboration. If you have ideas to improve College.ai, feel free to contribute! Check out our [Contribution Guidelines](CONTRIBUTING.md) to get started. + +## License + +This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for more details. +

Our Contributors Red Heart

Thank you for contributing to our repository

diff --git a/index.html b/index.html index 2cc7425..7b58699 100644 --- a/index.html +++ b/index.html @@ -21,18 +21,6 @@ font-family: Arial, sans-serif; } - #translate-container { - position: fixed; - top: 80px; /* Adjust this value to move the box down from the top */ - left: 20px; /* Keeps the box aligned to the left */ - background: #fff; - padding: 10px; - border: 1px solid #ddd; - border-radius: 5px; - box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2); - z-index: 1000; - } - /* Optional: Add a dark mode for your website */ .dark-mode { background-color: #343434; @@ -42,15 +30,7 @@
-
-
-
- - + diff --git a/src/Components/Footer/Footer.jsx b/src/Components/Footer/Footer.jsx index d2dd726..c5f77e7 100644 --- a/src/Components/Footer/Footer.jsx +++ b/src/Components/Footer/Footer.jsx @@ -8,23 +8,29 @@ import { scroller } from "react-scroll"; import Visitors from "../Visitors"; import { AiFillHome, AiFillInfoCircle, AiFillPhone, AiFillQuestionCircle, AiFillLock, AiFillFileText } from "react-icons/ai"; import { BiBook, BiSupport, BiCommentDetail, BiBriefcase, BiGroup } from "react-icons/bi"; +import GoogleTranslateComponent from "../GoogleTranslate/GoogleTranslate"; const Footer = () => { const [sticky, setSticky] = useState(false); const [mobileMenu, setMobileMenu] = useState(false); const navigate = useNavigate(); + + useEffect(() => { + + const handleScroll = () => { setSticky(window.scrollY > 200); }; - + window.addEventListener("scroll", handleScroll); return () => { window.removeEventListener("scroll", handleScroll); }; }, []); + const toggleMenu = () => { setMobileMenu(!mobileMenu); }; @@ -100,6 +106,16 @@ const Footer = () => {
  • Media
  • + + + + {/*
    +
    +
    */} + + + +

    Need Help

    diff --git a/src/Components/GoogleTranslate/GoogleTranslate.jsx b/src/Components/GoogleTranslate/GoogleTranslate.jsx new file mode 100644 index 0000000..c80009f --- /dev/null +++ b/src/Components/GoogleTranslate/GoogleTranslate.jsx @@ -0,0 +1,32 @@ +import React, { useEffect, useRef } from "react"; + +const TranslateComponent = () => { + const googleTranslateRef = useRef(null); + + useEffect(() => { + let intervalId = null; + const checkGoogleTranslate = () => { + if (window.google && window.google.translate && window.google.translate.TranslateElement.InlineLayout) { + clearInterval(intervalId); + new window.google.translate.TranslateElement( + { + pageLanguage: "en", + includedLanguages: "af,ach,ak,am,ar,az,be,bem,bg,bh,bn,br,bs,ca,chr,ckb,co,crs,cs,cy,da,de,ee,el,en,eo,es,es-419,et,eu,fa,fi,fo,fr,fy,ga,gaa,gd,gl,gn,gu,ha,haw,hi,hr,ht,hu,hy,ia,id,ig,is,it,iw,ja,jw,ka,kg,kk,km,kn,ko,kri,ku,ky,la,lg,ln,lo,loz,lt,lua,lv,mfe,mg,mi,mk,ml,mn,mo,mr,ms,mt,ne,nl,nn,no,nso,ny,nyn,oc,om,or,pa,pcm,pl,ps,pt-BR,pt-PT,qu,rm,rn,ro,ru,rw,sd,sh,si,sk,sl,sn,so,sq,sr,sr-ME,st,su,sv,sw,ta,te,tg,th,ti,tk,tl,tn,to,tr,tt,tum,tw,ug,uk,ur,uz,vi,wo,xh,yi,yo,zh-CN,zh-TW,zu", + layout: window.google.translate.TranslateElement.InlineLayout.VERTICAL + }, + googleTranslateRef.current + ); + } + }; + intervalId = setInterval(checkGoogleTranslate, 100); + return () => clearInterval(intervalId); + }, []); + + return ( +
    +
    +
    + ); +}; + +export default TranslateComponent; \ No newline at end of file diff --git a/src/Components/GoogleTranslate/googleTranslate.css b/src/Components/GoogleTranslate/googleTranslate.css new file mode 100644 index 0000000..3ae0ef6 --- /dev/null +++ b/src/Components/GoogleTranslate/googleTranslate.css @@ -0,0 +1,11 @@ +#translate-container { + /* position: fixed; */ + height: 100px; + width: 300px; + background: #fff; + padding: 10px; + border: 1px solid #ddd; + border-radius: 5px; + box-shadow: 0 2px 6px rgba(0, 0, 0, 0.2); + z-index: 1000; + } \ No newline at end of file diff --git a/src/Components/Login/Login.css b/src/Components/Login/Login.css index 7e375a9..591a815 100644 --- a/src/Components/Login/Login.css +++ b/src/Components/Login/Login.css @@ -2,9 +2,10 @@ display: flex; justify-content: center; align-items: center; - height: auto; - margin-top: 100px; - padding-bottom: 10px; + min-height: 100vh; + /* margin-top: 100px; */ + padding: 40px 20px; + box-sizing: border-box; } .login-container { @@ -73,6 +74,7 @@ p a:hover { } .googlelogin { + display: flex; width: 100%; justify-content: center; margin-top: 10px; diff --git a/src/Components/Signup/Signup.css b/src/Components/Signup/Signup.css index 5e2fe92..b51d07b 100644 --- a/src/Components/Signup/Signup.css +++ b/src/Components/Signup/Signup.css @@ -9,7 +9,7 @@ /* Space above and below the form */ box-sizing: border-box; /* Include padding in element's total width/height */ - background-color: #f0f0f0; + /* Optional: Background color to visualize the container */ } @@ -116,4 +116,5 @@ input.invalid { width: 100%; display: flex; justify-content: center; + margin-top: 10px; } diff --git a/src/Pages/Blogs.jsx b/src/Pages/Blogs.jsx index 5ca811d..ff84b1f 100644 --- a/src/Pages/Blogs.jsx +++ b/src/Pages/Blogs.jsx @@ -1,5 +1,6 @@ import { React, useEffect, useState } from 'react'; import styled from 'styled-components'; +import noResultsImage from '../assets/no-results.png' const Blogs = () => { useEffect(() => { @@ -81,7 +82,7 @@ const Blogs = () => { return (

    Blogs

    - { /> {uniqueTags.map((tag, index) => ( - handleTagClick(tag)} + handleTagClick(tag)} active={selectedTags.includes(tag)} > {tag} @@ -113,6 +114,14 @@ const Blogs = () => { ))} + { + blogs.length === 0 && ( + + + Hmmm, We are not getting any results. Our bad - Try another search! + + ) + }
    ); }; @@ -225,4 +234,24 @@ const CardContent = styled.div` } `; +const NoResultsContainer = styled.div` + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + padding: 20px; + text-align: center; +`; + +const NoResultsImage = styled.img` + width: 150px; + height: 150px; + margin-bottom: 20px; +`; + +const NoResultsMessage = styled.p` + font-size: 18px; + color: #212ea0; +`; + export default Blogs; diff --git a/src/Pages/Contributors.jsx b/src/Pages/Contributors.jsx index e257703..f422eb2 100644 --- a/src/Pages/Contributors.jsx +++ b/src/Pages/Contributors.jsx @@ -6,12 +6,25 @@ function Contributors() { const [contributors, setContributors] = useState([]); useEffect(() => { - async function fetchContributors() { + async function fetchContributors(page = 1, allContributors = []) { try { const response = await axios.get( - 'https://api.github.com/repos/Priyaaa1/StartConnect-Hub/contributors' + `https://api.github.com/repos/Priyaaa1/StartConnect-Hub/contributors`, + { + params: { + per_page: 100, + page, + }, + } ); - setContributors(response.data); + + const newContributors = response.data; + if (newContributors.length > 0) { + + fetchContributors(page + 1, [...allContributors, ...newContributors]); + } else { + setContributors(allContributors); + } } catch (error) { console.error('Error in fetching contributors:', error); } diff --git a/src/Pages/InvestorManagementPage.jsx b/src/Pages/InvestorManagementPage.jsx index 0047385..c91d88a 100644 --- a/src/Pages/InvestorManagementPage.jsx +++ b/src/Pages/InvestorManagementPage.jsx @@ -50,24 +50,6 @@ const InvestorManagementPage = () => { we provide the tools and insights needed to make informed investment decisions. -
    - - Comprehensive Support and Resources: - - We understand that successful investments require more than just capital. - That's why StartConnectHub offers comprehensive support and resources to both entrepreneurs and investors. - From detailed business analysis and market research to strategic advisory services, - we provide the tools and insights needed to make informed investment decisions. -
    - -
    - - Comprehensive Support and Resources: - We understand that successful investments require more than just capital. - That's why StartConnectHub offers comprehensive support and resources to both entrepreneurs and investors. - From detailed business analysis and market research to strategic advisory services, - we provide the tools and insights needed to make informed investment decisions. -
    diff --git a/src/Pages/Licensing.jsx b/src/Pages/Licensing.jsx index 91b2593..24ac4f3 100644 --- a/src/Pages/Licensing.jsx +++ b/src/Pages/Licensing.jsx @@ -1,7 +1,6 @@ -import {React,useEffect} from 'react'; +import React, { useEffect, useState } from 'react'; import styled from 'styled-components'; - const Container = styled.div` max-width: 800px; margin: 0 auto; @@ -31,15 +30,21 @@ const Subtitle = styled.h2` `; const Licensing = () => { - useEffect(() => { - window.scrollTo(0, 0); - }, []); + const [currentYear, setCurrentYear] = useState(''); + + useEffect(() => { + window.scrollTo(0, 0); + + const year = new Date().getFullYear(); + setCurrentYear(year); + }, []); + return ( Licensing Welcome to StartConnect Hub! This website is licensed under the MIT License. This page outlines the terms of the license and provides details on how you can use, modify, and distribute our software. MIT License - Copyright (c) 2024 StartConnect-Hub + Copyright (c) {currentYear} StartConnect-Hub Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal @@ -63,7 +68,6 @@ const Licensing = () => { Contact Information

    If you have any questions or concerns about this licensing agreement, please contact us at Email: startconnecthub@gmail.com

    -
    ); }; diff --git a/src/Pages/PrivacyPolicy.jsx b/src/Pages/PrivacyPolicy.jsx index 85ffaac..2742d7d 100644 --- a/src/Pages/PrivacyPolicy.jsx +++ b/src/Pages/PrivacyPolicy.jsx @@ -1,15 +1,25 @@ -import {React,useEffect} from 'react'; +import React, { useEffect, useState } from 'react'; import styled from 'styled-components'; + const PrivacyPolicy = () => { + const [lastUpdatedDate, setLastUpdatedDate] = useState(''); + useEffect(() => { window.scrollTo(0, 0); + + const currentDate = new Date(); + const options = { year: 'numeric', month: 'long', day: 'numeric' }; + const formattedDate = new Intl.DateTimeFormat('en-US', options).format(currentDate); + + setLastUpdatedDate(formattedDate); }, []); + return (

    Privacy Policy

    -

    Last updated: May 19, 2024

    +

    Last updated: {lastUpdatedDate}

    Welcome to StartConnect Hub! We are committed to protecting your personal information and your right to privacy. If you have any questions or concerns about our policy or our practices regarding your personal information, please contact us at startconnecthub@gmail.com.

    @@ -66,16 +76,16 @@ const PolicyWrapper = styled.div` h1 { font-size: 2.5rem; + margin-bottom: 20px; margin-top: 80px; } -h2 { + h2 { text-align: center; font-weight: 600; display: flex; justify-content: left; margin-bottom: 15px; - padding: 0; } p { diff --git a/src/Pages/TermsAndConditions.jsx b/src/Pages/TermsAndConditions.jsx index fc93f0d..4c6489c 100644 --- a/src/Pages/TermsAndConditions.jsx +++ b/src/Pages/TermsAndConditions.jsx @@ -1,9 +1,17 @@ -import React, { useEffect } from 'react'; +import React, { useEffect, useState } from 'react'; import styled from 'styled-components'; const TermsAndConditions = () => { + const [lastUpdatedDate, setLastUpdatedDate] = useState(''); + useEffect(() => { window.scrollTo(0, 0); + + const currentDate = new Date(); + const options = { year: 'numeric', month: 'long', day: 'numeric' }; + const formattedDate = new Intl.DateTimeFormat('en-US', options).format(currentDate); + + setLastUpdatedDate(formattedDate); }, []); return ( @@ -11,7 +19,7 @@ const TermsAndConditions = () => {

    Terms and Conditions

    -

    Last updated: May 22, 2024

    +

    Last updated: {lastUpdatedDate}

    Welcome to StartConnect Hub! By using our platform, you agree to comply with and be bound by the following terms and conditions. Please review these terms carefully. If you do not agree to these terms, you should not use our platform.

    @@ -55,6 +63,7 @@ const TermsWrapper = styled.div` h1 { font-size: 2.5rem; + margin-bottom: 20px; margin-top: 80px; } @@ -72,4 +81,3 @@ const TermsWrapper = styled.div` `; export default TermsAndConditions; - diff --git a/src/assets/no-results.png b/src/assets/no-results.png new file mode 100644 index 0000000..ab4918e Binary files /dev/null and b/src/assets/no-results.png differ