diff --git a/.github/workflows/check_duplicate_tools.yml b/.github/workflows/check_duplicate_tools.yml index 7eb1bcdb..5fe6a2b1 100644 --- a/.github/workflows/check_duplicate_tools.yml +++ b/.github/workflows/check_duplicate_tools.yml @@ -13,14 +13,14 @@ jobs: - name: Check for duplicate entries in product.json run: | - # Check for duplicate entries in product.json - jq -r '.[].productName' product.json | sort | uniq -d > duplicates.txt + # Check for duplicate entries based on the 'link' field in product.json + jq -r '.[].link' product.json | sort | uniq -d > duplicates.txt if [ -s duplicates.txt ]; then - echo "Duplicate entries found in product.json:" + echo "Duplicate entries found in product.json based on 'link':" cat duplicates.txt exit 1 else - echo "No duplicate entries found." + echo "No duplicate entries found based on 'link'." fi close-issues: @@ -46,4 +46,4 @@ jobs: -H "Accept: application/vnd.github.v3+json" \ https://api.github.com/repos/${{ github.repository }}/issues/$ISSUE \ -d '{"state":"closed"}' - done + done \ No newline at end of file diff --git a/README.md b/README.md index 0f149880..64d5ab53 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,4 @@ +

Laptop DevLabs

Welcome to DevLabs, a website where you can search for free tools that are useful for your daily needs. This application is created by the incredible open-source community. On DevLabs, you can discover a collection of free tools that can assist you in various aspects of your life. Moreover, you have the opportunity to contribute to this project by adding more tools to the database.

@@ -212,7 +213,9 @@ If you would like to contribute to the project then kindly go through [Contribut

Let's Collaborate and Make DevLabs Even Better! 💻🌟

-### ✨ Features +
+

✨ Features

+ 1. User Authentication: Secure user registration and login using JWT. @@ -255,12 +258,30 @@ If you would like to contribute to the project then kindly go through [Contribut ### 📚 Learn To know more about project, please go through [Learn](learn.md) +
+ ### 🌍 Community -### 🏆 Contributors +
-Recognize the individuals who have contributed to the project. You can use tools like All Contributors to automatically generate a list of contributors. +

Our Contributors ❤️

+
+

Thank you for contributing to our repository

-```bash -npx all-contributors-cli add -``` + + + + +
+ +
+
+

Support

+
+ +
+ Don't forget to leave a star for this project! +

+ +Go to Top +` diff --git a/frontend/src/App.css b/frontend/src/App.css index 5a45d6a8..fc63760d 100644 --- a/frontend/src/App.css +++ b/frontend/src/App.css @@ -1,19 +1,10 @@ -* { - cursor: none; -} - .sidebar-content { padding: 10px; - cursor: none; + cursor: pointer; + transition: background-color 0.2s; -} - -.Toastify__toast-container { - color: #000; -} - -.Toastify__toast { - font-size: 18px; - color: black; - background-color: rgb(165, 57, 197); -} +} + + cursor: pointer; + transition: background-color 0.2s; +} \ No newline at end of file diff --git a/frontend/src/App.js b/frontend/src/App.js index 9e354644..3655fc47 100644 --- a/frontend/src/App.js +++ b/frontend/src/App.js @@ -1,10 +1,50 @@ -import React, { useState, useEffect, Suspense, lazy } from "react"; +import React, { useState, useEffect } from "react"; import { Route, Routes } from "react-router-dom"; // Correct import +import "./App.css"; +import About from "./Component/About"; +import "./App.css"; +import About from "./Component/About"; +import Footer from "./Component/Footer"; +import Rateus from "./Component/Rateus"; + import "./App.css"; +import About from "./Component/About"; +import Footer from "./Component/Footer"; +import Rateus from "./Component/Rateus"; +import Home from "./Component/Home"; +import Navbar from "./Component/Navbar/Navbar"; +import BookMark from "./Component/BookMark"; +import ChatAssistant from "./ChatAssistant/ChatAssistant"; +import NotFound from "./Component/NotFound"; +import BackToTopButton from "./Component/BackToTopButton"; +import OpenSource from "./Component/OpenSource"; +import Review from "./Component/Review"; import "./App.css"; +import About from "./Component/About"; +import Footer from "./Component/Footer"; +import Rateus from "./Component/Rateus"; +import Home from "./Component/Home"; +import Navbar from "./Component/Navbar/Navbar"; +import BookMark from "./Component/BookMark"; +import ChatAssistant from "./ChatAssistant/ChatAssistant"; +import NotFound from "./Component/NotFound"; +import BackToTopButton from "./Component/BackToTopButton"; +import OpenSource from "./Component/OpenSource"; +import Review from "./Component/Review"; import AOS from "aos"; import "aos/dist/aos.css"; import { Toaster } from "react-hot-toast"; import ScrollToTop from "./Component/ScrollToTop"; + +import RemoteJobs from "./pages/RemoteJobs"; +import AI from "./pages/AI"; +import Movie from "./pages/Movie"; +import Extension from "./pages/Extension"; +import UI from "./pages/UI"; +import FrontendTools from "./pages/FrontendTools"; +import EthicalHacking from "./pages/EthicalHacking"; +import Faq from "./Component/Faq"; +import CodingPlatform from "./pages/CodingPlatform"; // Corrected import +import CoursesPlatform from "./pages/CoursesPlatform"; import Navbar from "./Component/Navbar/Navbar"; import BackToTopButton from "./Component/BackToTopButton"; import Footer from "./Component/Footer"; @@ -16,7 +56,7 @@ import ChatAssistant from "./ChatAssistant/ChatAssistant"; const About = lazy(() => import("./Component/About")); const Rateus = lazy(() => import("./Component/Rateus")); const Home = lazy(() => import("./Component/Home")); -// const NotFound = lazy(() => import("./Component/NotFound")); +const NotFound = lazy(() => import("./Component/NotFound")); const OpenSource = lazy(() => import("./Component/OpenSource")); const Review = lazy(() => import("./Component/Review")); const BookMark = lazy(() => import("./Component/BookMark")); @@ -48,11 +88,9 @@ function App() { useEffect(() => { AOS.init(); }, []); - return ( <> - } /> @@ -62,7 +100,6 @@ function App() { } /> } /> } /> - } /> } /> } /> } /> @@ -71,48 +108,11 @@ function App() { } /> } /> } /> - } /> - } /> - } /> {/* New Route */} - } /> {/* New Route */} + + }/> {/* Define other routes as needed */} - } /> {/* 404 route */} +} /> {/* 404 route */} -======= - Loading...}> - - } /> - } /> - } /> - } /> - } /> - } /> - } /> - } /> - } /> - } /> - } /> - } /> - } /> - } /> - } /> - } /> - } /> - } /> - } /> - } /> - } /> - } /> - - } /> - - } /> - } /> - - {/* Define other routes as needed */} - {/* } /> 404 route */} - -
diff --git a/frontend/src/Component/BookMark.js b/frontend/src/Component/BookMark.js index 7818a229..2ca51267 100644 --- a/frontend/src/Component/BookMark.js +++ b/frontend/src/Component/BookMark.js @@ -1,4 +1,4 @@ -import React, { useState } from "react"; +import React, { useState, useEffect } from "react"; import { useSelector, useDispatch } from "react-redux"; import { deleteSource } from "../Slice/DataSlice"; import bookmarkAnimation from "../lottie/bookmark.json"; @@ -7,19 +7,18 @@ import Lottie from "lottie-react"; import toast from "react-hot-toast"; function BookMark() { - const sourceData = useSelector((state) => state.SourceReducer.sourceData); + const sourceData = useSelector((state) => state.SourceReducer.sourceData); // Adjust the selector to match your state structure const dispatch = useDispatch(); const [currentPage, setCurrentPage] = useState(1); const [postPerPage] = useState(8); // Number of bookmarks per page + + useEffect(() => { + localStorage.setItem("bookmarks", JSON.stringify(sourceData)); + }, [sourceData]); + const handleDeleteBookmark = (name) => { + console.log("remove", name); dispatch(deleteSource({ name })); - - const bookmarksInStorage = - JSON.parse(localStorage.getItem("bookmarks")) || []; - const updatedBookmarks = bookmarksInStorage.filter( - (bookmark) => bookmark.name !== name - ); - localStorage.setItem("bookmarks", JSON.stringify(updatedBookmarks)); toast.success("Bookmark removed successfully"); }; @@ -39,10 +38,17 @@ function BookMark() { {currentBookmarks?.length > 0 ? ( currentBookmarks?.map((data, index) => (
- {data.name} + {data.name}

{data.name}

{data.desc}

-
)} diff --git a/frontend/src/Component/Footer.js b/frontend/src/Component/Footer.js index ac69a22b..837368d5 100644 --- a/frontend/src/Component/Footer.js +++ b/frontend/src/Component/Footer.js @@ -233,5 +233,5 @@ function Footer() {
); } - export default Footer; + diff --git a/frontend/src/Component/Home.js b/frontend/src/Component/Home.js index d74d216e..6a094987 100644 --- a/frontend/src/Component/Home.js +++ b/frontend/src/Component/Home.js @@ -1,17 +1,13 @@ import axios from "axios"; -import debounce from "lodash.debounce"; -import React, { useEffect, useRef, useState } from "react"; -import toast from "react-hot-toast"; -import Skeleton, { SkeletonTheme } from "react-loading-skeleton"; -import "react-loading-skeleton/dist/skeleton.css"; -import Tilt from "react-parallax-tilt"; +import React, { useEffect, useState, useRef } from "react"; import { useDispatch } from "react-redux"; +import ClipLoader from "react-spinners/ClipLoader"; import jsonTools from "../DB/product.json"; -import Devlabs from "../image/hero_img.svg"; -import Testimonials from "../pages/Testimonials"; import { deleteSource, setSource } from "../Slice/DataSlice"; import "../style/Home.css"; +import Devlabs from "../image/hero_img.svg"; import NavbarItem from "./Navbar/NavbarItem"; +import toast from "react-hot-toast"; const BACKEND = process.env.REACT_APP_BACKEND; @@ -20,34 +16,29 @@ function Home(props) { const [localStorageValue, setLocalStorageValue] = useState( localStorage.getItem("filter") || "" ); - const ref = useRef(null); - useEffect(() => { - if (props.searchQuery !== "") { - ref.current?.scrollIntoView({ - behavior: "smooth", - }); - } - }, [props.searchQuery]); - const [selectedFilters, setSelectedFilters] = useState([]); - const [filteredItems, setFilteredItems] = useState(jsonTools); + const ref = useRef(); + + if (props.searchQuery !== "") { + ref.current?.scrollIntoView({ + behavior: "smooth", + }); + } + const [currentPage, setCurrentPage] = useState(1); const postPerpage = 16; const lastPostIndex = currentPage * postPerpage; const firstPostIndex = lastPostIndex - postPerpage; const [dataBaseData, setDataBaseData] = useState([]); const [loading, setLoading] = useState(false); - const [showPopup, setShowPopup] = useState(false); - const [showRemovePopup, setShowRemovePopup] = useState(false); - const [contributors, setContributors] = useState([]); - const [searchQuery, setSearchQuery] = useState(""); - const [searchResults, setSearchResults] = useState([]); - console.log(searchQuery); + const currentPost1 = dataBaseData; let allvalue = []; - const handleBookmarks = () => { + + function handleBookmarks() { const bookmark = JSON.parse(localStorage.getItem("bookmarks")); setBookmark(bookmark); - }; + } + useEffect(() => { handleBookmarks(); }, []); @@ -60,31 +51,20 @@ function Home(props) { window.addEventListener("storage", handleStorageChange); const fetchData = async () => { - try { - const response = await axios.get(`${BACKEND}/tools/all`); - if (response.data.success) { - setDataBaseData(response.data.tools); - } else { - setDataBaseData(jsonTools); - } - } catch (error) { - console.error(error); + const response = await axios + .get(`${BACKEND}/tools/all`) + .catch((error) => { + return error.response; + }); + if (response.data.success) { + setDataBaseData(response.data.tools); + } else { setDataBaseData(jsonTools); } - setTimeout(() => { - setLoading(false); - }, 2000); - }; - - const fetchContributors = async () => { - const response = await axios.get( - "https://api.github.com/repos/HimanshuNarware/Devlabs/contributors" - ); - setContributors(response.data); + setLoading(false); }; fetchData(); - fetchContributors(); return () => { window.removeEventListener("storage", handleStorageChange); @@ -109,10 +89,10 @@ function Home(props) { const filteredData = !!props.searchQuery ? allvalue.filter((datalist) => { - return datalist.productName - .toLowerCase() - .includes(props.searchQuery.toLowerCase()); - }) + return datalist.productName + .toLowerCase() + .includes(props.searchQuery.toLowerCase()); + }) : allvalue; const currentPost = @@ -123,38 +103,35 @@ function Home(props) { const numbers = [...Array(npage + 1).keys()].slice(1); const dispatch = useDispatch(); - const prePage = () => { + function prePage() { if (currentPage > 1) { setCurrentPage(currentPage - 1); - window.scrollTo({ top: document.body.scrollHeight * 0.2, behavior: "smooth" }); } - }; + } - const nextPage = () => { + function nextPage() { if (currentPage < npage) { setCurrentPage(currentPage + 1); - window.scrollTo({ top: document.body.scrollHeight * 0.2, behavior: "smooth" }); } - }; + } - const changeCPage = (id) => { + function changeCPage(id) { setCurrentPage(id); - window.scrollTo({ top: document.body.scrollHeight * 0.2, behavior: "smooth" }); - }; - - const handleBookmark = (datalist) => { - let bookmarkList = JSON.parse(localStorage.getItem("bookmarks")) || []; - let found = bookmarkList.some((item) => item.name === datalist.productName); + } - if (!found) { - bookmarkList.push({ - image: datalist.image, - name: datalist.productName, - desc: datalist.description, - link: datalist.link, - }); - localStorage.setItem("bookmarks", JSON.stringify(bookmarkList)); - toast.success("Bookmark added successfully"); + function handleBookmark(datalist) { + if (bookmarks === null) { + localStorage.setItem( + "bookmarks", + JSON.stringify([ + { + image: datalist.image, + name: datalist.productName, + desc: datalist.description, + link: datalist.link, + }, + ]) + ); dispatch( setSource({ image: datalist.image, @@ -163,8 +140,8 @@ function Home(props) { link: datalist.link, }) ); + toast.success("Bookmark added successfully"); } else { - toast.error("Already bookmarked"); let found = false; for (let item of bookmarks) { if (item.name === datalist.productName) { @@ -196,14 +173,10 @@ function Home(props) { link: datalist.link, }) ); - setShowPopup(true); - setTimeout(() => { - setShowPopup(false); - }, 2000); } } handleBookmarks(); - }; + } const handleDeleteBookmark = (name) => { dispatch(deleteSource({ name })); @@ -216,313 +189,115 @@ function Home(props) { (bookmark) => bookmark.name !== name ); localStorage.setItem("bookmarks", JSON.stringify(updatedBookmarks)); - setShowRemovePopup(true); - setTimeout(() => { - setShowRemovePopup(false); - }, 2000); handleBookmarks(); }; - const filters = [ - "AI", - "Ethical", - "Extensions", - "Web", - "Movies", - "Remote", - "Resume", - "UI", - "Coding", - "Course", - "Tools", - ]; - - const handleFilterButtonClick = (selectedCategory) => { - if (selectedFilters.includes(selectedCategory)) { - setSelectedFilters([]); - } else { - setSelectedFilters([selectedCategory]); - } - }; - - useEffect(() => { - filterItems(); - }, [selectedFilters]); - - const filterItems = () => { - if (selectedFilters.length > 0) { - const tempItems = selectedFilters.map((selectedCategory) => - jsonTools.filter( - (jsonTool) => - jsonTool.category.toLowerCase() === selectedCategory.toLowerCase() - ) - ); - setFilteredItems(tempItems.flat()); - } else { - setFilteredItems([...jsonTools]); - } - }; - - const handleSearch = debounce((query) => { - setSearchQuery(query); - - if (query === "") { - setSearchResults([]); - return; - } - - const results = jsonTools.filter( - (tool) => - tool.productName && - tool.productName.toLowerCase().includes(query.toLowerCase()) - ); - - setSearchResults(results); - }, 300); - - let filterdata = []; - return ( - - -
-
-
-
-
- Welcome to -
Devlabs! -

- Discover Free Tools, -
- Empower Your Projects. -
- -Built by open-source community -

-
- -
-
-
- - devlabs-removebg-preview - -
-
- -
-
-
-

Lets Get, What You seek!

-
- handleSearch(e.target.value)} - type="text" - placeholder="Search Tools ..." - /> -
-
- {searchQuery && searchResults.length === 0 && ( -
- - empty_state_img - - empty_state_img - -

No matching tools found.

+
+
+
+
+
+

+ Welcome to +
Devlabs! +

+ Discover Free Tools, +
+ Empower Your Projects. +
+ + {" "} + -Built by open-source community + +

+ + +
+ +
- )} - {!loading && currentPost.length === 0 && ( -
- no post -

No posts found.

+
+ devlabs-removebg-preview
- )} - -
-
- {filters.map((category) => ( +
+
+
+
+
+ + + {currentPost.map((datalist) => { + return ( +
+ {datalist.category} +

{datalist.productName}

+

{datalist.description}

- ))} -
-
- {loading && ( -
-
- - - -
-
- - - -
-
- - - -
-
- - - -
-
- - - -
-
- )} - - {!loading && - filteredItems - .filter((item) => { - return searchQuery.toLowerCase() === "" - ? item - : item.productName.toLowerCase().includes(searchQuery); - }) - .slice(firstPostIndex, lastPostIndex) - .map((datalist) => { - filterdata.push(datalist); - return ( -
- {datalist.category} -

{datalist.productName}

-

{datalist.description}

- - {bookmarks?.some((item) => - item.name.includes(datalist.productName) - ) ? ( - <> - - - ) : ( - - )} -
- ); - })} -
- {filterdata.length > 0 && ( -
-
    -
    -
  • - - < - -
  • -
    -
    - {numbers.map((n, i) => { - // Calculate range of visible page numbers around current page - const start = Math.max(1, currentPage - 4); // Show 4 pages before current page - const end = Math.min(npage, start + 8); // Show 8 pages in total - - // Show ellipsis if start is greater than 1 - if (start > 1 && i === 1) { - return ( -
  • - ... -
  • - ); - } - - // Show ellipsis if end is less than npage - if (end < npage && i === numbers.length - 1) { - return ( -
  • - ... -
  • - ); - } - - // Display the page number if within the visible range - if (n >= start && n <= end) { - return ( -
  • - changeCPage(n)}> - {n} - -
  • - ); - } - - return null; // Hide pages outside the visible range - })} -
    -
    -
  • - - > - -
  • -
    -
+ {bookmarks?.some((item) => + item.name.includes(datalist.productName) + ) ? ( + <> + + + ) : ( + + )}
- )} -
- + ); + })} +
+
+
- - +
); } -export default Home; +export default Home; \ No newline at end of file diff --git a/frontend/src/Component/Navbar/Navbar.js b/frontend/src/Component/Navbar/Navbar.js index 3a9304a3..ea3e12e1 100644 --- a/frontend/src/Component/Navbar/Navbar.js +++ b/frontend/src/Component/Navbar/Navbar.js @@ -5,13 +5,15 @@ import NavbarLeft from "./NavbarLeft"; import NavbarCenter from "./NavbarCenter"; function Navbar(props) { const [showSideNav, setShowSideNav] = useState(false); - + return (
- - +
+ +
+ {/* Pass setSearchQuery directly */} diff --git a/frontend/src/Component/Navbar/NavbarCenter.js b/frontend/src/Component/Navbar/NavbarCenter.js index 0974a9ca..7741e9ca 100644 --- a/frontend/src/Component/Navbar/NavbarCenter.js +++ b/frontend/src/Component/Navbar/NavbarCenter.js @@ -2,144 +2,49 @@ import React, { useState } from "react"; import { useSelector } from "react-redux"; import "../../style/Navbar.css"; import NavbarItem from "./NavbarItem"; -import RateUsComponent from "../../Component/Rate.jsx"; // Import the RateUsComponent -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; -import "../../style/BookMark.css" -import { - faHome, - faBookmark, - faCode, - faInfoCircle, - faQuestionCircle, - faStar, - faUser, - faEnvelope, -} from "@fortawesome/free-solid-svg-icons"; -import { Modal, Backdrop, Box } from "@mui/material"; +import Modal from "../../Component/Modal"; +import RateUsComponent from "../../Component/Rateus"; // Import the RateUsComponent +import { FontAwesomeIcon } from '@fortawesome/react-fontawesome'; +import { faHome, faBookmark, faCode, faInfoCircle, faQuestionCircle, faStar, faEnvelope } from '@fortawesome/free-solid-svg-icons'; -function NavbarCenter( ) { - const totalBookmarks = - useSelector((state) => state.SourceReducer.totalBookmarks) || 0; +function NavbarCenter() { + const totalBookmarks = useSelector((state) => state.SourceReducer.totalBookmarks) || 0; const [isModalOpen, setIsModalOpen] = useState(false); const handleRateUsClick = () => { setIsModalOpen(true); }; - const handleCloseModal = () => { - setIsModalOpen(false); - }; - return (
- } - - to="/bookmark" - /> + Bookmark ({totalBookmarks})} to="/bookmark" />
  • - - Open Source - - } - to="/open-source" - /> + Open Source} to="/open-source" />
  • - - About Us - - } - to="/about" - /> + About Us} to="/about" />
  • - - FAQ's - - } - to="/faq" - /> + FAQ's} to="/faq" />
  • - - Rate Us - - } - to="/Rate" - /> - - -
  • -
  • - - Contact - - } - to="/contact" - /> + Rate Us} to="#" />
  • - - Login - - } - to="/Login" - /> -
  • -
  • - - Register - - } - to="/Register" - My Profile - - } - to="/profile" - /> + Contact} to="https://www.linkedin.com/in/himanshunarware/" />
  • - - - - - + setIsModalOpen(false)}> + + ); } + export default NavbarCenter; diff --git a/frontend/src/Component/Rate.css b/frontend/src/Component/Rate.css index 76fb8884..98c1cba3 100644 --- a/frontend/src/Component/Rate.css +++ b/frontend/src/Component/Rate.css @@ -1,17 +1,7 @@ input[type=radio]{ display: none; } -.Rate{ - height: 500px; -} -.Rate p{ - color: #fff; - font-size: 20px; - font-weight: 400; - margin-top: 20px; - /* background-color: ; */ -} .Rate .star{ cursor: pointer; } diff --git a/frontend/src/Component/Rateus.js b/frontend/src/Component/Rateus.js index 472b6d40..ee6b3a80 100644 --- a/frontend/src/Component/Rateus.js +++ b/frontend/src/Component/Rateus.js @@ -1,25 +1,65 @@ -import React from 'react'; +import React, { useState } from "react"; +import { ToastContainer, toast } from "react-toastify"; +import "react-toastify/dist/ReactToastify.css"; +import "./../style/Rateus.css"; +function RateUsComponent({ previousContent }) { + const [rating, setRating] = useState(0); + const [feedback, setFeedback] = useState(""); + const handleFeedbackChange = (e) => { + setFeedback(e.target.value); + }; + const handleEmojiClick = (emojiIndex) => { + setRating(emojiIndex); + }; + + const handleSubmit = () => { + if (rating !== 0 && feedback.trim() !== "") { + setRating(0); + setFeedback(""); + toast.success("Thanks For Your Feedback :)", { + position: "top-center" + }); + } else { + toast.error("Please Enter All Details :(", { + position: "top-center" + }); + } + }; + + const emojis = ["😢", "😟", "😐", "😊", "😍"]; -export default function Rate({ rating, setRating }) { return ( -
    - {[1, 2, 3, 4, 5].map((star) => ( - = star ? '#0d6efd' : 'gray', - fontSize: '35px', - }} - onClick={() => { - setRating(star); - }} - > - ★ - - ))} -
    + <> +
    +
    +

    Rate Our Website

    +
    + {emojis.map((emoji, index) => ( + handleEmojiClick(index + 1)} + > + {emoji} + + ))} +
    + + +
    +
    + + ); } - +export default RateUsComponent; + diff --git a/frontend/src/Component/Sidebar/Sidebar.js b/frontend/src/Component/Sidebar/Sidebar.js index c1f8322a..31d3fc4a 100644 --- a/frontend/src/Component/Sidebar/Sidebar.js +++ b/frontend/src/Component/Sidebar/Sidebar.js @@ -1,7 +1,7 @@ import React from "react"; import { Link } from "react-router-dom"; import { BsBookmark } from "react-icons/bs"; -import { AiFillHome } from "react-icons/ai"; +import { AiFillHome } from "react-icons/ai"; import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import { faHome, @@ -45,6 +45,7 @@ function Sidebar({ showSideNav }) { BookMark
    +
    About Us @@ -66,7 +67,7 @@ function Sidebar({ showSideNav }) {
    - + Rate Us
    diff --git a/frontend/src/Component/Sidebar/SidebarContent.js b/frontend/src/Component/Sidebar/SidebarContent.js index d88a5b44..c9165c2b 100644 --- a/frontend/src/Component/Sidebar/SidebarContent.js +++ b/frontend/src/Component/Sidebar/SidebarContent.js @@ -1,9 +1,7 @@ import React from "react"; function SidebarContent({name,description,active}) { - function handleSidebarClick(prop) { localStorage.setItem("filter", prop); - if (prop === "tools") { localStorage.setItem("filter-2", "web"); } diff --git a/frontend/src/DB/product.json b/frontend/src/DB/product.json index 325821c6..3bd1715a 100644 --- a/frontend/src/DB/product.json +++ b/frontend/src/DB/product.json @@ -7,11 +7,53 @@ "description": "Sourcegraph allows developers to rapidly search, write, and understand code by bringing insights from their entire codebase right into the editor." }, { - "productName": "Sentry", + "productName": "Traqq", "category": "Tool", + "image": "https://traqq.com/about/logo.png", + "link": "https://traqq.com/", + "description": "Traqq is a powerful timesheet app and time-tracking software for remote and on-site teams worldwide. Track work hours, generate reports, and say goodbye to billing and payroll nightmares." + }, + { + "productName": "Sentry", + "category": "tools", "image": "https://www.sentry.io/_assets/branding/png/sentry-horizontal-black.png", "link": "https://sentry.io/welcome/", "description": "Sentry is an open-source error tracking tool that helps developers monitor and fix crashes in real time." + }, + { + "productName": "PyCharm", + "category": "coding", + "image": "https://shorturl.at/yBog0", + "link": "https://www.jetbrains.com/pycharm/", + "description": "PyCharm is a powerful integrated development environment (IDE) for Python developers, providing smart code assistance, robust debugging, and seamless integration with numerous tools and frameworks." +}, + { + "productName": "Grammerly plagrism", + "category": "Tool", + "image": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRJegCk-tk9EwNlZ6Br_GnM9LJcfsjhtngkpA&s", + "link": "https://www.grammarly.com/plagiarism-checker", + "description": "Ensure every word is your own with Grammarly’s plagiarism checker." +}, + { + "productName": "pageSpeed insights", + "category": "Tool", + "image": "https://www.gstatic.com/pagespeed/insights/ui/logo/favicon_48.png", + "link": "https://pagespeed.web.dev/", + "description": "Make your web pages fast on all devices." +}, + { + "productName": "Pdf2Go", + "category": "Tool", + "image": "https://www.pdf2go.com/assets/logo/logo_pdf2go.svg", + "link": "https://www.pdf2go.com/edit-pdf", + "description": "This online PDF editor allows you to directly edit a PDF document." +}, + { + "productName": "QuickTools by Picsart", + "category": "Tool", + "image": "https://cdn140.picsart.com/quicktools-logo.svg", + "link": "https://tools.picsart.com/text/font-generator/", + "description": "#1 Font & Text Generator with 170+ fonts & 10 font styles." }, { "productName": "Bitbucket", @@ -20,6 +62,64 @@ "link": "https://bitbucket.org/", "description": "Bitbucket is a Git-based source code repository hosting service from Atlassian that offers a collaborative environment for code development, integrated CI/CD, and seamless integration with other Atlassian products." }, + { + "productName": "Obsidian", + "category": "tools", + "image": "https://www.svgrepo.com/download/354174/obsidian.svg", + "link": "https://obsidian.md/", + "description": "Obsidian is a powerful knowledge base that works on top of a local folder of plain text Markdown files." +}, + { + "productName": "Dillinger", + "category": "tools", + "image": "https://www.svgrepo.com/download/354168/markdown.svg", + "link": "https://dillinger.io/", + "description": "Dillinger is a cloud-enabled, mobile-ready, offline-storage compatible Markdown editor." +}, + + { + "productName": "Pencil Project", + "category": "tools", + "image": "https://www.svgrepo.com/download/340331/pencil.svg", + "link": "http://pencil.evolus.vn/", + "description": "Pencil Project is a free and open-source GUI prototyping tool that allows you to create mockups and diagrams easily." + +}, + { + "productName": "Figma Jam", + "category": "tools", + "image": "https://www.svgrepo.com/download/354183/figma-jam.svg", + "link": "https://www.figma.com/jam/", + "description": "Figma Jam is an online whiteboarding tool for teams to brainstorm, ideate, and plan together." +}, + { + "productName": "TiddlyWiki", + "category": "tools", + "image": "https://www.svgrepo.com/download/345679/tiddlywiki.svg", + "link": "https://tiddlywiki.com/", + "description": "TiddlyWiki is a unique non-linear notebook for capturing, organizing, and sharing complex information." +}, + { + "productName": "Scrimba", + "category": "tools", + "image": "https://www.svgrepo.com/download/345681/scrimba.svg", + "link": "https://scrimba.com/", + "description": "Scrimba is an interactive learning platform for coders that lets you watch and edit code directly in the video player." +}, + { + "productName": "Carbon", + "category": "tools", + "image": "https://www.svgrepo.com/download/345682/carbon.svg", + "link": "https://carbon.now.sh/", + "description": "Carbon is a tool that allows you to create and share beautiful images of your source code." +}, + { + "productName": "Sublime Text", + "category": "coding", + "image": "https://t.ly/-PnbM", + "link": "https://www.sublimetext.com/", + "description": "Sublime Text is a sophisticated text editor for code, markup, and prose. It features a clean interface, powerful search and editing capabilities, and a wide range of plugins and customizations to enhance the development experience." + }, { "productName": "Sublime Text", "category": "coding", @@ -27,6 +127,7 @@ "link": "https://www.sublimetext.com/", "description": "Sublime Text is a sophisticated text editor for code, markup, and prose. It features a clean interface, powerful search and editing capabilities, and a wide range of plugins and customizations to enhance the development experience." }, + { "productName": "Eclipse", "category": "coding", @@ -36,17 +137,10 @@ }, { "productName": "DevZero", - "category": "Useful Tools", + "category": "tools", "image": "https://docs.devzero.io/~gitbook/image?url=https%3A%2F%2F3351508441-files.gitbook.io%2F~%2Ffiles%2Fv0%2Fb%2Fgitbook-x-prod.appspot.com%2Fo%2Fspaces%252F5T3roFeO7ghjcNFibTDV%252Ficon%252FzuOg8WYAjLZU7fLYsPtR%252Fdevzerohq_logo.jpeg%3Falt%3Dmedia%26token%3D6552448a-b05a-4d97-9e2c-dbf823736a4e&width=32&dpr=1&quality=100&sign=9a2fcec3&sv=1", "link": "https://devzero.io/", "description": "Providing developers with customizable yet standardized workspaces so they can code and iterate in a collaborative, production-symmetric environment."}, - { - "productName": "Invision", - "category": "tools", - "image": "https://www.svgrepo.com/download/98765/invision-logo.svg", - "link": "https://www.invisionapp.com/", - "description": "Invision is a digital product design platform that helps teams collaborate and prototype designs efficiently." -}, { "productName": "Starknet", "category": "web", @@ -56,24 +150,17 @@ }, { "productName": "Ghostery Extension", - "category": "Extensions", + "category": "extensions", "image": "https://shorturl.at/IHnap", "link": "https://www.ghostery.com/", "description": "Ghostery is a powerful browser extension that enhances your privacy by blocking trackers and providing detailed insights into who is collecting your data. It's available for multiple browsers and helps speed up page loading times while ensuring a more private browsing experience." }, { "productName": "Call Of Duty", - "category": "games", + "category": "Entertainment", "image": "https://www.svgrepo.com/download/67890/call-of-duty-logo.svg", "link": "https://www.callofduty.com/", "description": "Call of Duty is a first-person shooter video game franchise that focuses on realism and cinematic experiences." -}, -{ - "productName": "Shapeways", - "category": "Tool", - "image": "https://th.bing.com/th/id/OIP.fS8A6HdHwA0RhZPcUMomZAHaHa?w=173&h=180&c=7&r=0&o=5&dpr=1.3&pid=1.7", - "link": "https://www.shapeways.com/", - "description": "Shapeways offers 3D printing services for production parts, rapid prototyping, e-commerce integrations, and design solutions. Choose from over 90 materials and finishes." }, { "productName": "Visual Studio Code", @@ -81,61 +168,31 @@ "image": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQuER1tOoBap4qZ8V7OUsbf-quqFfEjj3Jnzg&s", "link": "https://code.visualstudio.com/", "description": "Visual Studio Code is a free, open-source code editor from Microsoft that provides developers with powerful tools and a flexible workspace for a variety of programming languages." -}, -{ - "productName": "Shapeways", - "category": "Tool", - "image": "https://th.bing.com/th/id/OIP.fS8A6HdHwA0RhZPcUMomZAHaHa?w=173&h=180&c=7&r=0&o=5&dpr=1.3&pid=1.7", - "link": "https://www.shapeways.com/", - "description": "Shapeways offers 3D printing services for production parts, rapid prototyping, e-commerce integrations, and design solutions. Choose from over 90 materials and finishes." }, + { + "productName": "Tabby", + "category": "tools", + "image": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTipCLNRhiP9Qy75c0eHJjdH9w47bYewJJv_w&s", + "link": "https://tabby.sh/", + "description": "Open-source terminal emulator for various platforms, designed to offer a customizable and extensible terminal experience." + }, { "productName": "GitLab", "category": "tools", "image": "https://rb.gy/5vmahj", "link": "https://about.gitlab.com/", "description": "GitLab is a web-based DevOps lifecycle tool that provides a Git repository manager with features for CI/CD, issue tracking, and more, enabling teams to collaborate on code development and deployment efficiently." -}, -{ - "productName": "Hemingway", - "category": "Tool", - "image": "https://th.bing.com/th/id/OIP.KmubvHbzHsdAXbx5sfHXrgHaHa?w=166&h=180&c=7&r=0&o=5&dpr=1.3&pid=1.7", - "link": "https://hemingwayapp.com/", - "description": "Hemingway App helps you write concisely and correctly by highlighting lengthy, complex, or error-prone sentences. You can also use AI tools to fix, tone, or style your text with Hemingway Editor Plus." -}, - { - - "productName": "Shapeways", - "category": "Tool", - "image": "https://th.bing.com/th/id/OIP.fS8A6HdHwA0RhZPcUMomZAHaHa?w=173&h=180&c=7&r=0&o=5&dpr=1.3&pid=1.7", - "link": "https://www.shapeways.com/", - "description": "Shapeways offers 3D printing services for production parts, rapid prototyping, e-commerce integrations, and design solutions. Choose from over 90 materials and finishes." -}, - { - "productName": "ArtBreeder", - "category": "Tool", - "image": "https://th.bing.com/th/id/OIP.GVhFKgC4oHFvlxZgAt5kqgAAAA?w=173&h=180&c=7&r=0&o=5&dpr=1.3&pid=1.7", - "link": "https://www.artbreeder.com/", - "description": "Helps you to create like never before. Create characters, artworks and more with multiple tools, powered by AI." }, { "productName": "HBO Max", - "category": "Movies", + "category": "Entertainment", "image": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRi0AtsHyV6u8jWeYo38SP6MAysGpcHxQoyAw&s", "link": "https://www.hbomax.com/", "description": "HBO Max is a premium streaming service that offers a vast library of movies, TV shows, and exclusive content, including HBO originals and WarnerMedia content." }, - { - "productName": "SpoonFlower", - "category": "Tool", - "image": "https://th.bing.com/th/id/OIP.zSrWgAwyv_K0ifFKoUndTgAAAA?w=151&h=180&c=7&r=0&o=5&dpr=1.3&pid=1.7", - "link": "https://www.spoonflower.com/", - "description": "Spoonflower is a platform for buying and selling unique prints for every project. Shop wallpaper, fabric and decor from independent artists, or design your own" - }, - { "productName": "edclub", - "category": "education", + "category": "courses", "image": "https://static.typingclub.com/m/website/logo.png", "link": "https://www.edclub.com/", "description": "edclub is a web-based and fully customizable educational platform. Students can learn in class, at home, or wherever an internet connection can be found. Students are already familiar with the layout of the program because the design is very similar to popular games. Each lesson provides instant, meaningful feedback that encourages students to continue practicing. " @@ -149,7 +206,7 @@ }, { "productName": "StayFocusd", - "category": "Extensions", + "category": "extensions", "image": "https://shorturl.at/kctDc", "link": "https://chrome.google.com/webstore/detail/stayfocusd/laankejkbhbdhmipfmgcngdelahlfoji", "description": "StayFocusd is a browser extension for Google Chrome that helps improve productivity by restricting the amount of time you can spend on time-wasting websites. It allows you to block or limit access to distracting websites, keeping you focused on your work." @@ -161,6 +218,13 @@ "link": "https://thisissand.com/", "description": "Thisissand is a unique playground for creating and sharing amazing sandscapes on your computer or mobile device. " }, + { + "productName": "Blooket", + "category": "tools", + "image": "https://1000logos.net/wp-content/uploads/2022/05/Blooket-Logo.jpg", + "link": "https://www.blooket.com/", + "description": "Educational platform where teachers can create games and quizzes that students can play to learn in a fun and interactive way." + }, { "productName": "SciSpace", "category": "extensions", @@ -168,6 +232,13 @@ "link": "https://rb.gy/wf2f32", "description": "Do hours of research in minutes." }, + { + "productName": "Smart TOC", + "category": "extensions", + "image": "https://shorturl.at/lVADU", + "link": "https://shorturl.at/GisyI", + "description": "Webpage outliner." + }, { "productName": "PhpStorm", "category": "tools", @@ -226,7 +297,7 @@ }, { "productName":"JSBin", - "category":"Web Development Platform", + "category":"web", "image":"https://shorturl.at/kblvi", "link":"https://jsbin.com/", "description":"JS Bin is a webapp specifically designed to help JavaScript and CSS folk test snippets of code, within some context, and debug the code collaboratively." @@ -238,13 +309,6 @@ "link": "https://www.studocu.com/in", "description": "Free study notes,summaries and exam prep." }, - { - "productName":"Tree House", - "category":"coding", - "image":"https://shorturl.at/f2dBu", - "link":"https://teamtreehouse.com/", - "desciption":"Build a portfolio, create a network, and land your dream programming job." - }, { "productName": "Netflix", "category": "Entertainment", @@ -275,7 +339,7 @@ }, { "productName": "Eclipse", - "category": "IDEs", + "category": "web", "image": "https://addonwebsolutions.com/wp-content/uploads/2018/11/eclipse.png", "link": "https://www.eclipse.org/", "description": "Versatile open-source IDE supporting multiple languages with robust plugin ecosystem." @@ -315,13 +379,6 @@ "link": "https://www.random.org/", "description": "RANDOM.ORG offers true random numbers to anyone on the Internet. The randomness comes from atmospheric noise, which for many purposes is better than the pseudo-random number algorithms typically used in computer programs." }, - { - "productName": "Iplogger", - "category": "tools", - "image": "https://th.bing.com/th/id/OIP.wQCiw8FFLwhpWKEUqzE2qQHaFJ?rs=1&pid=ImgDetMain", - "link": "https://iplogger.org/", - "description": "IP Logger URL shortener web service helps to track data on your website traffic, get information about clicks on your short URLs shared via you social media channels or published on your website, lookup ip address, check ip location and check any URL for redirects and safety." - }, { "productName": "WebStorm", "category": "tools", @@ -371,6 +428,13 @@ "link": "https://pomofocus.io/", "description": "Help you manage your time and let you focus on any tasks such as study,etc." }, + { + "productName": "Postman Interceptor", + "category": "tools", + "image": "https://shorturl.at/AHa5Z", + "link": "https://shorturl.at/Ob5mU", + "description": "Capture requests from any website and send them to Postman Client." + }, { "productName": "IEEE", "category": "tools", @@ -378,6 +442,13 @@ "link": "https://www.ieee.org/", "description": "World's largest technical professional organization dedicated to advancing technology for the benefit of humanity." }, + { + "productName": "Talend API Tester", + "category": "tools", + "image": "https://shorturl.at/a3xNt", + "link": "https://shorturl.at/t7Yqx", + "description": "Visually interact with REST, SOAP and HTTP APIs." + }, { "productName": "Clarif AI", "category": "tools" , @@ -427,13 +498,6 @@ "link": "https://www.sublimetext.com/", "description": "Sublime Text is a sophisticated cross-platform text editor for code, markup and prose." }, - { - "productName": "Sketch", - "category": "tools", - "image": "https://www.liblogo.com/img-logo/sk389s515-sketch-logo-sketch-logo-free-icon-of-social-colored-icons.png", - "link": "https://www.sketch.com/", - "description": "Sketch provides all the tools to help you create — from early wireframes, to flexible design systems. Powerful vector editing. An infinite Canvas. Intuitive, life-like prototyping and more." - }, { "productName": "Descript AI", "category": "tools", @@ -548,7 +612,7 @@ }, { "productName": "Zenpen", - "category": "Tools", + "category": "tools", "image": "data:image/jpeg;base64,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", "link": "https://zenpen.io/", "description": "A minimalist writing zone, where you can block out all distractions and get to what's important. The writing! " @@ -756,13 +820,6 @@ "link": "https://katalon.com/", "description": "To automate web, API, mobile & desktop functional testing." }, - { - "productName": "INASP", - "category": "tools", - "image": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSS-UYoD4NcKvkpUa3zfOlgqP2i3ing8ZpDNQ&s", - "link": "https://www.inasp.info/", - "description": "Our vision is of research and knowledge at the heart of development" - }, { "productName": "Fiverr", "category": "tools", @@ -777,6 +834,27 @@ "link": "https://lgtours.in/", "description": "For booking and travelling" }, + { + "productName": "XBOX", + "category": "tools", + "image": "https://upload.wikimedia.org/wikipedia/commons/thumb/f/f9/Xbox_one_logo.svg/2048px-Xbox_one_logo.svg.png", + "link": "https://www.xbox.com/", + "description": "Experience the new generation of games and entertainment" + }, + { + "productName": "PCGamesN", + "category": "tools", + "image": "https://www.pcgamesn.com/wp-content/sites/pcgamesn/2024/04/pcgamesn-logo.jpeg", + "link": "https://www.pcgamesn.com/", + "description": "All the latest PC gaming news, plus guides and reviews for the biggest games" + }, + { + "productName": "Games Rant", + "category": "tools", + "image": "https://static0.gamerantimages.com/wordpress/wp-content/uploads/social/gr-og-img.png", + "link": "https://gamerant.com/", + "description": "Delivers content written by gamers for gamers with an emphasis on news, reviews, unique features, and interviews" + }, { "productName": "Carousel Hero", "category": "tools", @@ -804,6 +882,27 @@ "image": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRYxvzHZ-q0s93nZL8GThwMq4K_oRRCUX-fNQ&s", "link": "https://doodles.google/", "description": "Doodle things" + }, + { + "productName": "XBOX", + "category": "tools", + "image": "https://upload.wikimedia.org/wikipedia/commons/thumb/f/f9/Xbox_one_logo.svg/2048px-Xbox_one_logo.svg.png", + "link": "https://www.xbox.com/", + "description": "Experience the new generation of games and entertainment" + }, + { + "productName": "PCGamesN", + "category": "tools", + "image": "https://www.pcgamesn.com/wp-content/sites/pcgamesn/2024/04/pcgamesn-logo.jpeg", + "link": "https://www.pcgamesn.com/", + "description": "All the latest PC gaming news, plus guides and reviews for the biggest games" + }, + { + "productName": "Games Rant", + "category": "tools", + "image": "https://static0.gamerantimages.com/wordpress/wp-content/uploads/social/gr-og-img.png", + "link": "https://gamerant.com/", + "description": "Delivers content written by gamers for gamers with an emphasis on news, reviews, unique features, and interviews" }, { "productName": "Merriam Webster", @@ -854,13 +953,6 @@ "link": "https://www.calm.com/", "description": "Snap receipt photos, forward email receipts to your account, and import expenses from your bank account." }, - { - "productName": "Venngage", - "category": "tools", - "image": "https://wittysparks.com/wp-content/uploads/2021/11/venngage-logo.jpg", - "link": "https://venngage.com/", - "description": "Create within the simple but powerful editor." - }, { "productName": "Ecomate", "category": "tools", @@ -868,13 +960,6 @@ "link": "https://www.ecomateapp.com/", "description": "Eco-friendly foam blowing agent" }, - { - "productName": "Mulearn", - "category": "tools", - "image": "https://mulearn.org/%C2%B5Learn.webp", - "link": "https://mulearn.org/", - "description": "Synergic philosophy of education, with a culture of mutual learning through micro groups of peers." - }, { "productName": "Holopin", "category": "tools", @@ -938,20 +1023,6 @@ "link": "https://flathub.org/", "description": "Find and install hundreds of apps and games for Linux" }, - { - "productName": "InstaHire", - "category": "tools", - "image": "https://shorturl.at/gj1LR", - "link": "https://www.instahyre.com/", - "description": "Showcase yourself to a curated list of top companies." - }, - { - "productName": "Krohne", - "category": "tools", - "image": "https://mir-s3-cdn-cf.behance.net/project_modules/1400/69330e75443809.5c538d8164f28.png", - "link": "https://krohne.com/en", - "description": "World-leading manufacturer and supplier of solutions in industrial process instrumentation." - }, { "productName": "National Digital Library", "category": "tools", @@ -1008,13 +1079,6 @@ "link": "https://codedamn.com/", "description": "codedamn is an interactive platform for learning to code, offering hands-on coding practice and tutorials for various programming languages and technologies." }, - { - "productName": "Money Control", - "category": "tools", - "image": "https://getlogo.net/wp-content/uploads/2020/04/moneycontrol-logo-vector.png", - "link": "https://www.moneycontrol.com/", - "description": "Read the latest business news on the Indian economy, global market, upcoming IPOs and more." - }, { "productName": "Bright Data", "category": "tools", @@ -1145,13 +1209,6 @@ "link": "https://celestial.fandom.com/wiki/Celestial", "description": "Celestial is an Open world Space survival game playing on a Spherical world of roughly 700km2." }, - { - "productName": "GitLab", - "category": "tools", - "image": "https://www.pngfind.com/pngs/m/94-945757_gitlab-logo-hd-png-download.png", - "link": "https://about.gitlab.com/", - "description": "Web-based DevOps platform.Helps to manage the software development lifecycle. " - }, { "productName": "Ubuy India", "category": "tools", @@ -1209,13 +1266,6 @@ "link": "https://balanceapp.com/", "description": "Anybody can create applications, websites, chatbots, and more on any internet-connected device without having to hire a programmer or agency." }, - { - "productName": "FileHippo", - "category": "tools", - "image": "https://w7.pngwing.com/pngs/270/655/png-transparent-screencast-screenshot-computer-program-filehippo-computer-monitors-computer-computer-logo-computer-program-thumbnail.png", - "link": "https://filehippo.com/", - "description": "To download safe free versions of the latest software, freeware, shareware and demo programs from a reputable download site" - }, { "productName": "Essay Flow", "category": "tools", @@ -1251,20 +1301,6 @@ "link": "https://grow.google/certificates/interview-warmup/", "description": "A quick way to prepare for your next interview using this google interview warmup" }, - { - "productName": "Roblox", - "category": "tools", - "image": "https://static.vecteezy.com/system/resources/previews/027/127/434/original/roblox-logo-roblox-icon-transparent-free-png.png", - "link": "https://www.roblox.com/", - "description": "Virtual universe that lets you create, share experiences with friends" - }, - { - "productName": "Banuba", - "category": "tools", - "image": "https://s3-us-west-2.amazonaws.com/cbi-image-service-prd/original/288c1924-5ae2-405c-8e9f-858fa5bcd112.png", - "link": "https://www.banuba.com/", - "description": "Boosting engagement for video conferencing and other apps." - }, { "productName": "Maths GPT", "category": "tools", @@ -1306,6 +1342,27 @@ "image": "https://seeklogo.com/images/P/poshmark-logo-ED11EB78C9-seeklogo.com.png", "link": "https://poshmark.com/", "description": "Buy, sell, and discover fashion, home decor, beauty, and more." + }, + { + "productName": "Turi", + "category": "tools", + "image": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRqNfcDCKpGp1p2yRtboc9MvHm3S80tNOTo8w&s", + "link": "https://www.turi.org/", + "description": "Multifaceted approach to help businesses and communities" + }, + { + "productName": "Tura turi", + "category": "tools", + "image": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQkpTuBQK07dusDGRBQksZW1RPl8LSaqs2mtg&s", + "link": "https://www.turaturi.com/", + "description": "Ethnic, Festive Wear and Daily Wear for children, made in pure cotton malmal" + }, + { + "productName": "Super Dash", + "category": "tools", + "image": "https://i.ytimg.com/vi/Bnx_Od6iwxw/hqdefault.jpg", + "link": "https://superdash.flutter.dev/", + "description": "Multiplatform demo game developed from idea to launch in just 6 weeks" }, { "productName": "Sap", @@ -1468,13 +1525,6 @@ "link": "https://www.gamerpower.com/", "description": "Ultimate tool for gamers" }, - { - "productName": "MDN Web Docs", - "category": "tools", - "image": "https://upload.wikimedia.org/wikipedia/commons/thumb/9/98/MDN_Web_Docs.svg/1200px-MDN_Web_Docs.svg.png", - "link": "https://developer.mozilla.org/en-US/", - "description": "Provides information about Open Web technologies including HTML, CSS, and APIs for both Web sites and progressive web apps." - }, { "productName": "Meishe SDK", @@ -1505,13 +1555,6 @@ "link": "https://www.stitchfix.com/", "description": "Personal styling for men, women & kids that sends clothing to your door" }, - { - "productName": "Appy Pie", - "category": "tools", - "image": "https://www.appypie.com/wp-content/uploads/2020/01/Appy-Pie-Logo.jpg", - "link": "https://www.appypie.com/", - "description": "Anybody can create applications, websites, chatbots, and more on any internet-connected device without having to hire a programmer or agency." - }, { "productName": "Unimont Realty", "category": "tools", @@ -1652,13 +1695,6 @@ "link": "https://bit.ly/43VBwNf", "description": "InterviewBit prepares you not only for the interviews, but for the actual job too." }, - { - "productName": "The Guardian", - "category": "tools", - "image": "https://shared.prolewiki.org/uploads/7/7a/The_Guardian_Logo.jpg", - "link": "https://www.theguardian.com/", - "description": "The world's leading liberal voice" - }, { "productName": "Planner 5D", "category": "tools", @@ -1666,20 +1702,6 @@ "link": "https://planner5d.com/", "description": "Create your dream home design with powerful but easy software" }, - { - "productName": "Banuba", - "category": "tools", - "image": "https://s3-us-west-2.amazonaws.com/cbi-image-service-prd/original/288c1924-5ae2-405c-8e9f-858fa5bcd112.png", - "link": "https://www.banuba.com/", - "description": "Boosting engagement for video conferencing and other apps." - }, - { - "productName": "APIdog", - "category": "tools", - "image": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSNNBlfLY-KCFlJkdFoTTkdurNVu7lpUmQT6g&s", - "link": "https://apidog.com/", - "description": "Complete set of tools that connects the entire API lifecycle" - }, { "productName": "Momentum", "category": "extensions", @@ -1694,13 +1716,6 @@ "link": "https://chrome.google.com/webstore/detail/jsonview/gmegofmjomhknnokphhckolhcffdaihd", "description": "This JSONView converts the JSON content into an understandable format and esay to view." }, - { - "productName": "Oxfam", - "category": "tools", - "image": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQBIQUGTTVc0d--TyDk1m6zKD6OWwG1ol5ouQ&s", - "link": "https://www.oxfamindia.org/", - "description": "Best non profit organization working to support child education, empowering women" - }, { "productName": "Microsoft Math Solver", "category": "tools", @@ -1722,13 +1737,6 @@ "link": "https://www.dailymotion.com/", "description": "The latest news, sports, music and entertainment videos on Dailymotion." }, - { - "productName": "Student AI", - "category": "tools", - "image": "https://studentai.app/wp-content/uploads/2023/05/S-letter-geometric-Logo-design-Linear.-.png", - "link": "https://studentai.app/", - "description": "Every essay becomes a masterpiece, citations align like stars, and even the trickiest math problems bow down." - }, { "productName": "Netlify", "category": "tools", @@ -1743,13 +1751,6 @@ "link": "hhttps://rapidapi.com/", "description": "Find, Connect, & Share 1000s of APIs" }, - { - "productName": "MDN Web Docs", - "category": "tools", - "image": "https://cdn-1.webcatalog.io/catalog/mdn-web-docs/mdn-web-docs-icon-filled-256.png?v=1675596631400", - "link": " https://developer.mozilla.org/en-US/ ", - "description": " Provides information about Open Web technologies including HTML, CSS, and APIs" - }, { "productName": "Hashnode", "category": "blogging", @@ -1784,6 +1785,48 @@ "image": "https://upload.wikimedia.org/wikipedia/commons/8/83/Yahoo%21_icon_%282009-2013%29.svg", "link": "https://in.yahoo.com/", "description": "An internet services company that offers a variety of products and services" + }, + { + "productName": "Bad Brains Record", + "category": "tools", + "image": "https://upload.wikimedia.org/wikipedia/en/thumb/5/58/Bad_Brains_debut.jpg/220px-Bad_Brains_debut.jpg", + "link": "https://badbrainsrecords.com/", + "description": "Pay To Cum" + }, + { + "productName": "CrunkThread", + "category": "tools", + "image": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSlnwSMwvrDW-LkQlTfX0MSO_iUk2eD-TL6Dw&s", + "link": "https://crunkthread.com/", + "description": "The streetwear brand that will take your wardrobe to the next level" + }, + { + "productName": "YUPLAY", + "category": "tools", + "image": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQFvqhWS0dafZIehvEdkhpzMXn-dhkOdUPI2w&s", + "link": "https://www.yuplay.com/", + "description": "Gamification" + }, + { + "productName": "WebTrit", + "category": "tools", + "image": "https://webtrit.com/wp-content/uploads/2021/03/WebTrit-logo-web.png", + "link": "https://webtrit.com/", + "description": "Softphone app for Android/iOS/web with full access to its source code and all future updates included" + }, + { + "productName": "Capterra", + "category": "tools", + "image": "https://mms.businesswire.com/media/20190327005550/en/712772/22/capterra-logo.jpg", + "link": "https://www.capterra.com/", + "description": "Best software & services" + }, + { + "productName": "SourceForge", + "category": "tools", + "image": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcT6pK3FhQx6Z-esFzKPusmhLhne02wLRv-4kA&s", + "link": "https://sourceforge.net/", + "description": "Complete software discovery platform" }, { "productName": "Overleaf", @@ -1869,14 +1912,6 @@ "link": "https://www.fontspace.com/", "description": "Free downloads of legally licensed fonts that are perfect for your design projects." }, - { - - "productName": "Student AI", - "category": "tools", - "image": "https://studentai.app/wp-content/uploads/2023/05/S-letter-geometric-Logo-design-Linear.-.png", - "link": "https://studentai.app/", - "description": "Every essay becomes a masterpiece, citations align like stars, and even the trickiest math problems bow down." - }, { "productName": "CLX Gaming", "category": "tools", @@ -1932,6 +1967,27 @@ "image": "https://overapi.com/static/images/overapi-logo.png", "link": "https://overapi.com/", "description": "Collection of cheet sheets of mutilple techs." + }, + { + "productName": "WebTrit", + "category": "tools", + "image": "https://webtrit.com/wp-content/uploads/2021/03/WebTrit-logo-web.png", + "link": "https://webtrit.com/", + "description": "Softphone app for Android/iOS/web with full access to its source code and all future updates included" + }, + { + "productName": "Capterra", + "category": "tools", + "image": "https://mms.businesswire.com/media/20190327005550/en/712772/22/capterra-logo.jpg", + "link": "https://www.capterra.com/", + "description": "Best software & services" + }, + { + "productName": "SourceForge", + "category": "tools", + "image": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcT6pK3FhQx6Z-esFzKPusmhLhne02wLRv-4kA&s", + "link": "https://sourceforge.net/", + "description": "Complete software discovery platform" }, { "productName": "Giveaway Base", @@ -1996,13 +2052,6 @@ "link": "https://fontawesome.com/", "description": "Internet's icon library and toolkit, used by millions of designers, developers, and content creators" }, - { - "productName": "Epic games", - "category": "tools", - "image": "https://cdn2.unrealengine.com/Epic+Games+Node%2Fxlarge_whitetext_blackback_epiclogo_504x512_1529964470588-503x512-ac795e81c54b27aaa2e196456dd307bfe4ca3ca4.jpg", - "link": "https://store.epicgames.com/en-US/", - "description": "Gaming" - }, { "productName": "ChatGPT Writer", "category": "tools", @@ -2275,6 +2324,27 @@ "image": "https://10015.io/brand/logo-on-light.svg", "link": "https://10015.io/", "description": "Platform for generating interactive digital experiences using visual scripting." + }, + { + "productName": "Open Collective", + "category": "tools", + "image": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRv1ojBBfbMDmZVsRdmYYDzNR5X4LDYy3hF9w&s", + "link": "https://opencollective.com/", + "description": "Legal and financial toolbox for groups" + }, + { + "productName": "Band Camp", + "category": "tools", + "image": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSnFmNjAzX-fhyENUIKQQl-8z9bMD-3CB5fNg&s", + "link": "https://bandcamp.com/", + "description": "Discover amazing music and directly support the artists who make it" + }, + { + "productName": "Game8", + "category": "tools", + "image": "https://assets.game8.co/assets/game8_ogp-846ace0d45c153c1174a8beac78a5378ddc11fe3e20f7e4d9b51559cfc4db94d.png", + "link": "https://game8.co/", + "description": "Top Gaming and App" }, { "productName": "ReadMe Generator", @@ -2817,18 +2887,11 @@ }, { "productName": "Notion", - "category": "productivity", + "category": "tools", "image": "https://t.ly/_eHX", "link": "https://notion.so/", "description": "Productivity tool for everything you need." }, - { - "productName": "Simplilearn", - "category": "tools", - "image": "https://static.theprint.in/wp-content/uploads/2024/03/ANI-20240316070040.jpg", - "link": "https://www.simplilearn.com/", - "description": "World’s Leading Digital Skills Provider" - }, { "productName": "ILovePDF", "category": "tools", @@ -3853,7 +3916,7 @@ }, { "productName": "StackBlitz", - "category": "Online Code Editor", + "category": "coding", "image": "https://avatars.githubusercontent.com/u/28635252?s=200&v=4", "link": "https://stackblitz.com/", "description": "Instant dev experiences: Click, code, no local setup required." @@ -3916,28 +3979,28 @@ }, { "productName": "devChallenges.io", - "category": "Coding", + "category": "coding", "image": "https://bit.ly/462R570", "link": "https://devchallenges.io/", "description": "Coding challenges and projects to practice coding skills" }, { "productName": "frontendpractice", - "category": "Coding", + "category": "coding", "image": "frontendprac.png", "link": "https://www.frontendpractice.com/", "description": "You can find a collection of projects with varying levels of difficulty." }, { "productName": "javascript30", - "category": "Coding", + "category": "coding", "image": "https://bit.ly/3qEuMED", "link": "https://javascript30.com/", "description": "Building 30 different projects over 30 days." }, { "productName": "codewars", - "category": "Coding", + "category": "coding", "image": "https://bit.ly/43XLyga", "link": "https://www.codewars.com/", "description": "Programming exercises to improve coding skills." @@ -3951,7 +4014,7 @@ }, { "productName": "cssbattle", - "category": "Coding", + "category": "coding", "image": "cssbattle.png", "link": "https://cssbattle.dev/", "description": "Write CSS code in real-time" @@ -3972,7 +4035,7 @@ }, { "productName": "jschallenger", - "category": "Coding", + "category": "coding", "image": "https://tinyurl.com/5n6vbc7f", "link": "https://www.jschallenger.com/", "description": "Learn Javascript online by solving coding exercises." @@ -4105,7 +4168,7 @@ }, { "productName": "Exercism", - "category": "Coding", + "category": "coding", "image": "https://bit.ly/3qY1Ck6", "link": "https://exercism.org/", "description": "Exercism is a coding platform that offers a hands-on learning experience, providing programmers with a wide range of challenges to practice and improve their skills." @@ -4250,6 +4313,13 @@ "link": "https://chrome.google.com/webstore/detail/dark-reader/eimadpbcbfnmbkopoojfekhnkhdbieeh", "description": "Dark Reader is an extension that brings dark mode to any website over the internet." }, + { + "productName": "Fathom", + "category": "tools", + "image": "https://framerusercontent.com/images/l9XleNGx5L9gQKwyZraSd9qyI.png", + "link": "https://hello.fathom.fm/", + "description": "Podcast player that allows users to discover, save, and share highlights from podcasts, enhancing the listening experience." + }, { "productName": "W3resource", "category": "tools", @@ -4455,35 +4525,35 @@ }, { "productName": "Devfolio", - "category": "Coding", + "category": "coding", "image": "Devfolio.png", "link": "https://devfolio.co/hackathons", "description": "We love software and the people who build them." }, { "productName": "DEVPOST", - "category": "Coding", + "category": "coding", "image": "https://pbs.twimg.com/profile_images/625987202909085696/KKYbLP8y_400x400.jpg", "link": "https://devpost.com/", "description": "The home for hackathons" }, { "productName": "unstop", - "category": "Coding", + "category": "coding", "image": "https://tinyurl.com/yz3nu723", "link": "https://unstop.com/hackathons", "description": "Unstop is a platform where talent meets opportunities to unlock their potential." }, { "productName": "MAJOR LEAGUE HACKING", - "category": "Coding", + "category": "coding", "image": "MAJOR LEAGUE HACKING.png", "link": "https://mlh.io/seasons/2023/events", "description": "Find, compete, and earn points at the largest, most diverse hacker events in the world." }, { "productName": "HACK CLUB", - "category": "Coding", + "category": "coding", "image": "https://assets.hackclub.com/flag-orpheus-top.svg", "link": "https://hackathons.hackclub.com/", "description": "High School Hackathons" @@ -4595,14 +4665,14 @@ }, { "productName": "DataCamp", - "category": "Data Science and Machine Learning", + "category": "data_science", "image": "DataCamp.png", "link": "https://www.datacamp.com/", "description": "DataCamp provides the best learning materials and projects on the topics of Data Science and Machine Learning." }, { "productName": "Illa AI Agent Community", - "category": "Artificial intelligence and Machine Learning", + "category": "data_science", "image": "https://sfo3.digitaloceanspaces.com/illa-cloud-team-storage.illacloud.com/team-7aa86328-77bb-4dd8-8f59-7ba4e4ccd69d/system/icon/f9f683db-1e30-4585-82a0-418eaed3bdc6.jpeg", "link": "https://illa.ai/", "description": "Open-source AI Agents provided by experts in the field of machine learning and professional prompt engineers, can be run with 1 click." @@ -4665,28 +4735,28 @@ }, { "productName": "Warp", - "category": "productivity", + "category": "tools", "image": "https://d4.alternativeto.net/qtP9GDgTpLu6XX3v3s374WZmDiEa6d7aladATlM3mG8/rs:fill:280:280:0/g:ce:0:0/YWJzOi8vZGlzdC9pY29ucy93YXJwLXRlcm1pbmFsXzIwMTQwOS5wbmc.png", "link": "https://www.warp.dev/", "description": "Warp is a terminal reimagined with AI and collaborative tools for better productivity." }, { "productName": "Unhook", - "category": "productivity", + "category": "tools", "image": "https://chromestores.com/wp-content/uploads/2022/10/unhook-extension.jpg", "link": "https://unhook.app/", "description": "A browser extension to eliminate distractions on YouTube" }, { "productName": "Cold Turkey", - "category": "productivity", + "category": "tools", "image": "https://alternative.me/media/256/cold-turkey-icon-a9ifoahq7s33x2qf-c.png", "link": "https://getcoldturkey.com/features/", "description": "The free website blocker designed for studying or focusing on work. Block distractions like social media, games or apps" }, { "productName": "Trello", - "category": "productivity", + "category": "tools", "image": "https://pbs.twimg.com/profile_images/1361722806694785027/UY7DlO0a_400x400.png", "link": "https://trello.com/", "description": "Trello is a productivity tool that helps you organize tasks, teams, and tools with boards, lists, and cards" @@ -4700,21 +4770,14 @@ }, { "productName": "Slack", - "category": "productivity", + "category": "tools", "image": "https://freepngdesign.com/content/uploads/images/slack-logo-2397.png", "link": "https://slack.com/intl/en-in/", "description": "Slack is a platform designed to enhance productivity and streamline communication within teams." }, - { - "productName": "Framer", - "category": "UI_design", - "image": "framer.svg", - "link": "https://www.framer.com/", - "description": "Framer is no-code web-designing tool where teams design and publish stunning sites" - }, { "productName": "Calendly", - "category": "productivity", + "category": "tools", "image": "https://pbs.twimg.com/profile_images/1574482929203351553/J2L9r-Oy_400x400.png", "link": "https://calendly.com/", "description": "Calendly is a scheduling automation platform that makes it easy to schedule meetings." @@ -4728,7 +4791,7 @@ }, { "productName": "Whimsical", - "category": "productivity", + "category": "tools", "image": "https://i.pinimg.com/736x/ea/2a/b2/ea2ab287b40acfe28348c71eb780d11c.jpg", "link": "https://whimsical.com/", "description": "Whimsical is a collaborative tool for teams to come together to brainstorm ideas for their next big project." @@ -4756,7 +4819,7 @@ }, { "productName": "Draw.io", - "category": "productivity", + "category": "tools", "image": "drawio.jpg", "link": "https://www.drawio.com/", "description": "Free online Diagram software that allows you to create various types of diagrams and charts." @@ -4845,13 +4908,6 @@ "link": "https://sqlpd.com/", "description": "It is an online game where you solve crimes using SQL (and learn SQL in the process). Learn SQL while playing a game!" }, - { - "productName": "BitBucket", - "category": "collaborations", - "image": "https://media.licdn.com/dms/image/C5633AQE2Tg6KNJfrLA/productpage-logo-image_200_200/0/1630996699471/null_logo?e=1717174800&v=beta&t=IVJKM1umGhSUFlUhur3RqaeOm4TtZtVZNXO7uCBaLQ4", - "link": "https://bitbucket.org/", - "description": "Bitbucket is more than just Git code management. Bitbucket gives teams one place to plan projects, collaborate on code, test, and deploy." - }, { "productName": "CodeSandBox", "category": "collaborations", @@ -4881,7 +4937,7 @@ }, { "productName": "Coding Ninjas", - "category": "Coding", + "category": "coding", "image": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcR9t9UxtLvKlyy9ziOJMyMHBRAukK7jgFYLmw&s", "link": "https://www.codingninjas.com/", "description": "Coding Ninjas offers comprehensive coding courses designed to equip learners with the skills needed for success in the tech industry." @@ -4893,20 +4949,6 @@ "link": "https://takeuforward.org/", "description": "takeUforward provides a comprehensive platform offering DSA sheets and core CS subjects crucial for placements, empowering learners with essential skills for career success." }, - { - "productName": "Canva", - "category": "UI_design", - "image": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSa3YN97O31JYAlzd5nUAThlbDiv7kE2m2hjw&s", - "link": "https://www.canva.com/", - "description": "Canva is a Web design tool with collaborative features. Best for User-friendly graphic design, social media content creation, and online collaboration." - }, - { - "productName": "Magic UI", - "category": "UI_design", - "image": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQLjFCT2jJ2xX3MZyVj3NsM_i8cUuZT_IS0pQ&s", - "link": "https://magicui.design/", - "description": "UI Library for Design Engineers. Animated components and effects you can add to your projects. Free. Open Source." - }, { "productName": "Iconfinder", "category": "UI_design", @@ -4949,13 +4991,6 @@ "link": "https://www.programiz.com/", "description": "Programiz is an online platform providing tutorials and practice exercises for learning programming languages and concepts." }, - { - "productName": "Framer Motion", - "category": "UI_design", - "image": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQ4dEvwYNKclGGZ0pMtgCfodUMu22JqspXQow&s", - "link": "https://www.framer.com/motion/", - "description": "Framer Motion is a powerful open-source motion library for React that makes it easy to create smooth and complex animations. It provides a flexible API for designing interactive UI animations, enhancing the user experience with seamless transitions and engaging visual effects." - }, { "productName": "Lighthouse", "category": "extensions", @@ -4986,7 +5021,7 @@ }, { "productName": "Coding Ninjas", - "category": "Coding", + "category": "coding", "image": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcR9t9UxtLvKlyy9ziOJMyMHBRAukK7jgFYLmw&s", "link": "https://www.codingninjas.com/", "description": "Coding Ninjas offers comprehensive coding courses designed to equip learners with the skills needed for success in the tech industry." @@ -5208,20 +5243,6 @@ "link": "https://www.perplexity.ai/", "description": "Perplexity is a free AI-powered answer engine that provides accurate, trusted, and real-time answers to any question." }, - { - "productName": "Edabit", - "category": "courses", - "image": "https://s3.amazonaws.com/edabit-images/logo_wide_large.png", - "link": "https://edabit.com/", - "description": "Edabit is a learning platform designed to improve coding skills through interactive challenges across various programming languages. It emphasizes hands-on practice and problem-solving techniques to enhance programming proficiency." - }, - { - "productName": "Skill Share", - "category": "tools" , - "image": "https://play-lh.googleusercontent.com/Lfh8g5kPONfSNL7R4s8itnMMdj3lhmHU9tb4gp7eoOaXkJo0dOcwB6iWPdNGZMRDMVs", - "link": "https://www.skillshare.com/en/", - "description": "Skillshare is an online learning community offering thousands of classes across creative and entrepreneurial skills. It allows users to learn at their own pace with access to diverse topics taught by industry experts." - }, { "productName": "Linkedin Learning", "category": "courses", @@ -5357,7 +5378,7 @@ }, { "productName": "Sphinx", - "category": "documentation", + "category": "AI", "image": "https://www.jetbrains.com/guide/assets/sphinxdoc-ca1beff5.png", "link": "https://www.sphinx-doc.org/en/master/", "description": "Sphinx is a tool that makes it easy to create intelligent and beautiful documentation for Python projects." @@ -5484,7 +5505,7 @@ }, { "productName": "PyTorch", - "category": "Library", + "category": "coding", "link": "https://pytorch.org/", "image": "https://miro.medium.com/v2/resize:fit:512/1*IMGOKBIN8qkOBt5CH55NSw.png", "description": "PyTorch is a machine learning library based on the Torch library, used for applications such as computer vision and natural language processing," @@ -5588,7 +5609,7 @@ }, { "productName": "Amplitude", - "category": "Analytics", + "category": "Others", "image": "https://media.licdn.com/dms/image/C560BAQEvD1JyOCKwqw/company-logo_200_200/0/1649303244821/amplitude_analytics_logo?e=1729728000&v=beta&t=grX8DGI4ZInpbx8NnItAI9cWwPfWZgSeBzX0IxL-JkM", "link": "https://amplitude.com/", "desciption": "We are a digital analytics platform. We help every business optimize the business value of digital product innovation. We’re the competitive edge to not only survive—but thrive—in the new era." @@ -5609,7 +5630,7 @@ }, { "productName": "Swagger", - "category": "API", + "category": "api", "image": "https://media.licdn.com/dms/image/C4E0BAQHvcaaw3m3gUw/company-logo_200_200/0/1633542767992/smartbear_logo?e=1729728000&v=beta&t=k1_BoMZa2kWf5YK2uqQ85E_UzAXpyLKLYgiTloJTpZQ", "link": "https://swagger.io/", "desciption": "Simplify your API development with our open-source and professional tools, built to help you and your team efficiently design and document APIs at scale." @@ -5672,14 +5693,14 @@ }, { "productName": "HoneyDue", - "category": "Finance", + "category": "Others", "image": "https://media.licdn.com/dms/image/C4E0BAQGdJq1XBRcNnQ/company-logo_200_200/0/1631306114383?e=1729728000&v=beta&t=gDc_WuTn99wCStSgXV53g3NW9tMHb6-JgZOQDdk7CLU", "link": "https://www.honeydue.com/", "description": "Honeydue is the simplest way for couples to manage money, together." }, { "productName": "Goodbudget", - "category": "Finance", + "category": "Others", "image": "https://scontent.fidr4-2.fna.fbcdn.net/v/t39.30808-6/294087749_469842161811122_7226879010175637401_n.png?_nc_cat=102&ccb=1-7&_nc_sid=6ee11a&_nc_ohc=tgjLniL5iaMQ7kNvgHPgw3T&_nc_ht=scontent.fidr4-2.fna&oh=00_AYAMdATnLXJdBSODCiCJL9q23NE4qKE7uaywOhTbWuQwow&oe=66A68DFD", "link": "https://goodbudget.com/", "description": "Goodbudget is a budget tracker for the modern age. Say no more to carrying paper envelopes. This virtual budget program keeps you on track with family and friends with the time-tested envelope budgeting method." @@ -5691,13 +5712,6 @@ "link": "https://mulearn.org/", "description": "µLearn is a synergic philosophy of education, with a culture of mutual learning through micro peer groups. We are here to assist you in breaking through the echo chambers and free you from the shackles you have grounded yourself in." }, - { - "productName": "Pluralsight", - "category": "AI", - "image": "https://www.pluralsight.com/content/dam/ps-nav-assets/product-logo/pluralsight-color-full-logo.png", - "link": "https://www.pluralsight.com/", - "description": "Develop critical tech skills. Cut cycle times. Build happier, healthier tech teams. And innovate smarter using AI. All with Pluralsight." - }, { "productName": "Invideo Ai", "category": "AI", @@ -5708,7 +5722,7 @@ { "productName": "Simplilearn", "category": "courses", - "image": "", + "image": "https://static.theprint.in/wp-content/uploads/2024/03/ANI-20240316070040.jpg", "link": "https://www.simplilearn.com/", "description": "Change, Adapt and Build with AI" }, @@ -5883,19 +5897,11 @@ }, { "productName": "DuckDuckGo", - "category": "security", + "category": "ethical", "image": "https://upload.wikimedia.org/wikipedia/en/8/88/DuckDuckGo_logo.svg", "link": "https://duckduckgo.com/", "description": "A search engine that emphasizes protecting user privacy and does not track users' searches." }, - - { - "productName":"FutureLearn", - "category": "tools", - "image": "https://miro.medium.com/v2/resize:fit:2400/1*No_5DlBQPdlZHyoLfyUMhQ.png", - "link": "https://www.futurelearn.com/", - "description": "FutureLearn is an online education platform that offers a wide range of courses and degrees from leading universities around the world. " - }, { "productName": "Neumorphism.io", "category": "UI_design", @@ -5931,13 +5937,6 @@ "link": "https://media.licdn.com/dms/image/D560BAQGLUQsYP7sqGA/company-logo_200_200/0/1666809807679/codeiumdev_logo?e=1730332800&v=beta&t=Nrz1Qf5LcU2lHgOGdYG2xCk3zq0By7nxla-MarSu9TI", "description": "Codeium is a AI software for writing effecient Code." }, -{ - "productName": "Student AI", - "category": "AI", - "image": "https://studentai.app/wp-content/uploads/2023/05/S-letter-geometric-Logo-design-Linear.-.png", - "link": "https://studentai.app/", - "description": "Dedicated AI Tools and Tutors for Students, Graduates & Professionals." -}, { "productName": "SAP", "category": "AI", @@ -6065,13 +6064,6 @@ "description": "IP Logger is a URL Shortener with advanced analytics for the traffic through your links, visitors on your online store, blog or website" }, { -"productName": "Algoprep", -"category": "courses", -"image": "https://www.algoprep.in/img/logo_1.png", -"link": "https://www.algoprep.in/", -"description": "Algoprep is a course website which is created by two professionals in the field of DSA and computer science, this website helps you to learn DSA." -}, -{ "productName": "Airdash", "category": "media", "image": "", @@ -6150,14 +6142,14 @@ } , { "productName": "OpenLearn", - "category": "course", + "category": "courses", "image": "https://github.com/user-attachments/assets/1c6e15c1-911c-4ecf-986b-66b328ce4da4", "link": "https://www.open.edu/openlearn/", "description": "The Open University’s platform offers free courses across various disciplines, with interactive content and quizzes to reinforce learning." } , { "productName": "Balsamiq", - "category": "Ui", + "category": "UI_design", "image": "https://github.com/user-attachments/assets/a6e8be21-6ab4-45d4-be8c-ae37298cf528", "link": "https://balsamiq.com/", "description": "A low-fidelity wireframing tool with a free trial, great for quick mockups." @@ -6183,7 +6175,7 @@ "link":"https://www.flinto.com/", "description":"A Mac app used for creating interactive and animated prototypes with a free trial." -} , +}, { "productName": "Standard Resume", "category": "resume", @@ -6204,13 +6196,6 @@ "image": "https://github.com/user-attachments/assets/db76168d-69e0-4908-a0f8-2a6c672a45e5", "link": "https://enhancv.com/", "description": "Enhancv provides templates and customization options to highlight your strengths by tailoring sections like skills, achievements, and personal projects. It helps you create a unique, visually appealing resume that emphasizes your unique qualifications and experiences." -}, -{ -"productName": "MIT OpenCourseWare", -"category": "courses", -"image": "https://github.com/user-attachments/assets/b893692b-3fe1-41d2-901e-5eb84d820189", -"link": "https://ocw.mit.edu/", -"description": "Features free lecture notes, exams, and videos from MIT’s course catalog, providing high-quality educational materials for self-study." }, { "productName": "KnowledgeHut", @@ -6221,21 +6206,21 @@ }, { "productName": "Zapier", - "category": "Integration tool", + "category": "tools", "image": "https://cdn.zapier.com/zapier/images/logos/social.png", "link": "https://zapier.com/apps", "description": "An automation tool that connects different web helps bridge the gap between different applications to streamline workflows and increase prod web applications and services." }, { "productName": "Plural Sight", - "category": "course", + "category": "courses", "image": "https://encrypted-tbn1.gstatic.com/images?q=tbn:ANd9GcTbK1gESSG1wvggc4RkMx84dOVS_K_FpEDXKUkQmrNsRDWQSqRp", "link": "https://www.pluralsight.com/", "description": "Offers courses and resources to build technical skills; can help enhance resumes with certifications and skills development." }, { "productName": "FutureLearn", - "category": "course", + "category": "courses", "image": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcR-hVHDw1NP0tdQjcBpHuN9Srww5Nldu4OjEQPz3s2hP0MSfCuR", "link": "https://www.futurelearn.com/", "description": "Provides online courses and certifications that can be included in resumes to demonstrate learning and skills development." @@ -6249,28 +6234,28 @@ }, { "productName": "Stanford Online", - "category": "course", + "category": "courses", "image": "https://encrypted-tbn2.gstatic.com/images?q=tbn:ANd9GcT-wqQjoXovn0M9NumDI0V57DsRZxrd7a-K2K1E5jHjtknCoEVR", "link": "https://online.stanford.edu/", "description": "Free and paid courses from Stanford University, including professional and executive education." }, { "productName": "Harvard Online", - "category": "course", + "category": "courses", "image": "https://encrypted-tbn3.gstatic.com/images?q=tbn:ANd9GcQoCmOCgKlJwBk-52QvUILAWNqP2EU0RETO1uSCvSxvUVKQS8ob", "link": "https://www.harvardonline.harvard.edu/", "description": "Free and paid courses from Harvard University." }, { "productName": "OpenCulture", - "category": "course", + "category": "courses", "image": "https://encrypted-tbn3.gstatic.com/images?q=tbn:ANd9GcSpqa64rkB-WYc70y0vAdojXVjEDIdWTsjwa1bqcVwceB38Lx-x", "link": "https://www.openculture.com/", "description": "Free cultural and educational media, including online courses, audiobooks, and more." }, { "productName": "BigThink", - "category": "course", + "category": "courses", "image": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSalt2wa5s6M4QsxQG1p44DsfjzgIXsrammVT-pEokZ8lQ1_uy8", "link": "https://bigthink.com/", "description": "Courses and lessons from top thinkers and doers in various fields." @@ -6317,128 +6302,224 @@ }, { "productName": "Aceternity UI", - "category": "UI library", + "category": "UI_design", "image": "https://github.com/user-attachments/assets/49058348-4dd1-478f-8197-606de13e5a07", "link": "https://ui.aceternity.com/", "description": "Copy paste the most trending components and use them in your websites without having to worry about styling and animations." }, { "productName": "SkillShare", - "category": "course", + "category": "courses", "image": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQ5n97aejY-xIgPDF8HSTvJrcy_OLTocTInQnLH0-8haNuV-QyN", "link": "https://www.skillshare.com/en/", "description": "Focuses on creative and professional skills with a project-based approach." }, { "productName": "MasterClass", - "category": "course", + "category": "courses", "image": "https://encrypted-tbn3.gstatic.com/images?q=tbn:ANd9GcTsNkUZY96QX0rN7y25ZKYoe98DhUs8h0cDkuhrpCiXmukfBcAO", "link": "https://www.masterclass.com/", "description": "Courses from world-renowned experts across various fields, including arts, cooking, sports, and more." }, { "productName": "Ed2go", - "category": "course", + "category": "courses", "image": "https://encrypted-tbn1.gstatic.com/images?q=tbn:ANd9GcTdu3k_w182gfgHFHUdkEjmFfLdhoBKOnOpE1Z1_bfGLcUB6yMN", "link": "https://www.ed2go.com/about-us", "description": "Online courses for professional development and career training." }, { "productName": "CreativeLive", - "category": "course", + "category": "courses", "image": "https://encrypted-tbn3.gstatic.com/images?q=tbn:ANd9GcSTTN9nibKkVRwT52aLIuclahndw3616_nkI5rhSyDmecQbxQJ1", "link": "https://www.creativelive.com/", "description": "Live and on-demand courses in photography, art, design, music, and more." }, { "productName": "TreeHouse", - "category": "course", + "category": "courses", "image": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRioAv3OLegd1pjaW51rvkidAWtKzPvJQUXkCtbE66gwbj2FDXu", "link": "https://teamtreehouse.com/", "description": "Online coding courses and tracks for beginners." }, { + "productName": "Alison", - "category": "course", + "category": "courses", "image": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQQAdHkkDom-MEMMFXf_Dd8zTwPYqoB9hC_o-Jws3NOVnEYlWax", "link": "https://alison.com/", "description": "Free courses in various fields including IT, business, health, and languages." }, { "productName": "TapAway", - "category": "App", + "category": "tools", "image": "https://github.com/Vaibhav-kesarwani/TapAway-App/assets/116189379/26bc63a4-032a-49bb-acb1-8e770d65d51e", "link": "https://github.com/Vaibhav-kesarwani/TapAway-App", "description": "Tap Away is a life-saving mobile application designed to prioritize your safety during emergencies and natural calamities. By registering on the app, users gain immediate access to crucial services that can make a difference in critical situations." }, { "productName": "Marvel", - "category": "Ui", + "category": "UI_design", "image": "https://github.com/user-attachments/assets/a58b508b-a862-46ba-b877-6737ba9de565", "link": "https://marvelapp.com/", "description": "Design and prototype interfaces, and collaborate with teams; supports real-time feedback and iteration." }, { "productName": "Mockplus", - "category": "Ui", + "category": "UI_design", "image": "https://www.mockplus.com/enUS/images/nav/logo-red-black.png", "link": "https://www.mockplus.com/", "description": "Rapidly design and prototype UI/UX interfaces; offers a wide range of pre-designed components." }, { "productName": "Origami Studio", - "category": "Ui", + "category": "UI_design", "image": "https://github.com/user-attachments/assets/56a3972e-80b8-4ad5-8cf0-7603c4ffe508", "link": "https://origami.design/", "description": "Design interactive interfaces and prototypes with complex animations; ideal for high-fidelity prototypes." }, { "productName": "Penpot", - "category": "Ui", + "category": "UI_design", "image": "https://site-assets.plasmic.app/5a092f8c015ea24a9c0953e5ca065580.svg", "link": "https://penpot.app/", "description": "An open-source design and prototyping platform for cross-functional teams." }, { "productName": "Lunacy", - "category": "Ui", + "category": "UI_design", "image": "https://github.com/user-attachments/assets/96ea136c-d77d-4de8-b74d-8ce181a6bd98", "link": "https://icons8.com/lunacy", "description": "A f-ree design software with built-in assets and features, similar to Sketch but available for Windows." }, { "productName": "Pencil Project", - "category": "Ui", + "category": "UI_design", "image": "https://pencil.evolus.vn/styling/images/logo-shadow.png", "link": "https://pencil.evolus.vn/", "description": "Create wireframes and prototypes for web and mobile interfaces; supports exporting to various formats." }, + + { + "productName": "Creddle", + "category": "resume", + "image": "https://encrypted-tbn2.gstatic.com/images?q=tbn:ANd9GcQCoghNNeH0iZeNiMlRZ2Kj8Rtp7l_P_uANzuEzbkIjJ7rXdBVA", + "link": "https://resume.creddle.io/", + "description": "Provides customizable and modern resume templates designed to be professional and visually appealing." + }, { "productName": "Rive", - "category": "Tools", + "category": "tools", "image": "https://cdn.rive.app/rive_logo_dark_bg.png", "link": "https://rive.app/", "description": "Create interactive, real-time animations for apps and websites." }, { "productName": "Cacher", - "category": "Tools", + "category": "tools", "image": "https://www.cacher.io/assets/open-graph-banner.png", "link": "https://www.cacher.io/", "description": "Store and organize reusable code snippets." }, { + "productName": "Resumonk", + "category": "resume", + "image": "https://cdn.prod.website-files.com/5c06e16a5bdc7bce10059cc3/638dea81d179e969d3dce947_sQ6aF92ClmZt5FSzMwEf6nHQ62cb7NaqwvNdkEuyOIA.jpeg", + "link": "https://www.resumonk.com/", + "description": " An online resume builder that offers both free and premium templates for creating professional resumes." +}, +{ "productName": "Github", "category": "Tools", "image": "https://github.githubassets.com/assets/GitHub-Mark-ea2971cee799.png", "link": "https://github.com/", "description": "GitHub is a platform for version control and collaboration, allowing developers to host and review code, manage projects, and build software together." + }, + { + "productName": "AlgoExpert", + "category": "Tools", + "image": "https://assets.algoexpert.io/static/images/ae-social-logo.png", + "link": "https://www.algoexpert.io/product", + "description": "Provides coding interview preparation through structured problem-solving and video explanations." + }, +{ + "productName": "SPOJ (Sphere Online Judge)", + "category": "Tools", + "image": "https://pbs.twimg.com/profile_images/568733328090480640/B1rm7i-y_400x400.jpeg", + "link": "https://www.spoj.com/", + "description": "An online judge system for practicing coding problems and competing in contests." + }, +{ + "productName": "Kaggle", + "category": "Tools", + "image": "https://cdn4.iconfinder.com/data/icons/logos-and-brands/512/189_Kaggle_logo_logos-512.png", + "link": "https://www.kaggle.com/", + "description": " A platform for data science and machine learning competitions with real-world datasets." }, { "productName": "Restya Board", - "category": "Tools", + "category": "tools", "image": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRUzZsK3SAa78Wrg7eq8xB0WEmpvw_3GerIpQ&s", "link": "https://docs.digitalocean.com/products/marketplace/catalog/restyaboard/", "description": "Create interactive, real-time animations for apps and websites." - } + + + + }, + { + "productName": "Devhints", + "category": "tools", + "image": "https://shorturl.at/Nyb6c", + "link": "https://devhints.io/", + "description": "A collection of quick reference cheat sheets for a variety of programming languages and tools." + }, + { + "productName": "Pinegrow", + "category": "Tools", + "image": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQ_kNYX7sDRNqbn214C6mReXYTpg2aHLDdaYQ&s", + "link": "https://pinegrow.com/", + "description": " Visual web design tool for building responsive websites." + }, +{ + "productName": "NocoDB", + "category": "Tools", + "image": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSeNA0cIN5ZsOzoZpNC7x-4t_47Jbm0T_zwsQ&s", + "link": "https://nocodb.com/", + "description": "Open-source Airtable alternative for turning SQL databases into smart spreadsheets." + }, + { + "productName": "Smashing Magazine", + "category": "Tools", + "image": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRUzZsK3SAa78Wrg7eq8xB0WEmpvw_3GerIpQ&", + "link": "https://www.smashingmagazine.com/", + "description": " Resource for web design and development articles." + }, + { + "productName": "Pinegrow", + "category": "Tools", + "image": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQ_kNYX7sDRNqbn214C6mReXYTpg2aHLDdaYQ&s", + "link": "https://pinegrow.com/", + "description": " Visual web design tool for building responsive websites." + }, + { + "productName": "Pinterest", + "category": "tools", + "image": "https://upload.wikimedia.org/wikipedia/commons/0/08/Pinterest-logo.png", + "link": "https://www.pinterest.com/", + "description": "Understand the trends your audience is searching. Discover trends based on interests, demographics, season and more using Pinterest Trends" + }, + { +"productName": "Teleport", +"category": "tool", +"image": "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQgAodPKxQNGdKXEUA7n86WqZ3peSxDmaAlow&s", +"link": "https://goteleport.com/", +"description": "Teleport offers a unified access plane for managing secure access to critical infrastructure, simplifying complex security operations for developers." +}, +{ +"productName": "Raycast", +"category": "tool", +"image": "https://upload.wikimedia.org/wikipedia/en/f/f4/Raycast_App_Icon.png", +"link": "https://www.raycast.com/", +"description": "Raycast is a powerful launcher that allows developers to quickly access files, run scripts, and manage tasks with keyboard shortcuts, enhancing workflow efficiency." + } ] diff --git a/frontend/src/Slice/DataSlice.js b/frontend/src/Slice/DataSlice.js index 9d3c8db2..923000b4 100644 --- a/frontend/src/Slice/DataSlice.js +++ b/frontend/src/Slice/DataSlice.js @@ -11,26 +11,17 @@ const DataSlice = createSlice({ }, reducers: { setSource: (state, action) => { - state.sourceData.push({ - image: action.payload.image, - name: action.payload.name, - desc: action.payload.desc, - link: action.payload.link, - }); + state.sourceData.push(action.payload); state.totalBookmarks = state.sourceData.length; - localStorage.setItem('bookmarks', JSON.stringify(state.sourceData)); }, deleteSource: (state, action) => { - // Find the index of the bookmark to delete by matching the name const indexToDelete = state.sourceData.findIndex( (bookmark) => bookmark.name === action.payload.name ); if (indexToDelete !== -1) { - // Remove the bookmark from the array by index state.sourceData.splice(indexToDelete, 1); state.totalBookmarks = state.sourceData.length; - localStorage.setItem('bookmarks', JSON.stringify(state.sourceData)); } }, }, diff --git a/frontend/src/pages/Extension.jsx b/frontend/src/pages/Extension.jsx index baa4554d..18b01ba1 100644 --- a/frontend/src/pages/Extension.jsx +++ b/frontend/src/pages/Extension.jsx @@ -73,7 +73,7 @@ const extensions = [ version: "1.6.0", image: "https://i.pcmag.com/imagery/reviews/00DGg3V9SuURGDLUoe7QmD6-23.fit_lim.size_1050x591.v1605289134.png", developer: "ProofHub", - }, + }, ]; const Extensions = () => ( diff --git a/frontend/src/style/BookMark.css b/frontend/src/style/BookMark.css index f13b4cd3..459df8cb 100644 --- a/frontend/src/style/BookMark.css +++ b/frontend/src/style/BookMark.css @@ -43,7 +43,7 @@ #c35cf6, #6c2bb1 ); - + border-radius: inherit; animation: moving 3s linear infinite; @@ -72,9 +72,9 @@ } } .bookmark__box:hover { -transform: scale(1.1); -box-shadow: 0px 0px 15px #b85cf6e1; -transition: transform 0.6s ease-in-out, box-shadow 0.3s ease-in-out; + transform: scale(1.1); + box-shadow: 0px 0px 15px #b85cf6e1; + transition: transform 0.6s ease-in-out, box-shadow 0.3s ease-in-out; } .bookmark__box-text { @@ -94,6 +94,13 @@ transition: transform 0.6s ease-in-out, box-shadow 0.3s ease-in-out; box-shadow: 1px 1px rgb(0, 0, 0, 0.5); } +.bookmark__button:hover { + background-color: rgb(226, 43, 122); + color: white; + cursor: pointer; + border: 1px dashed rgba(79, 71, 125, 255); +} + .bookmark__button:hover { color: white; cursor: none; @@ -126,12 +133,12 @@ transition: transform 0.6s ease-in-out, box-shadow 0.3s ease-in-out; grid-template-columns: repeat(1, 1fr); } } -.bookmarkTag{ +.bookmarkTag { position: relative; } -.bookmarkTag::after{ - content: ''; +.bookmarkTag::after { + content: ""; position: absolute; background-color: #000000; width: 20%; @@ -139,23 +146,19 @@ transition: transform 0.6s ease-in-out, box-shadow 0.3s ease-in-out; color: white; border-radius: 4px;top:-10px; right: -10px; - -} -.totBook{ + } +.totBook { position: absolute; top: -12px; z-index: 10; color: white; font-size: 13px; right: 0px; - - - } -.bookmarkTag::before{ - content: ''; +.bookmarkTag::before { + content: ""; position: absolute; - top:5px; + top: 5px; transform: translateX(0%); border-top: 6px solid rgb(8, 0, 0); width: 0; @@ -164,52 +167,40 @@ transition: transform 0.6s ease-in-out, box-shadow 0.3s ease-in-out; border-left: 6px solid transparent; border-right: 6px solid transparent; } -@media (max-width:1000px){ - .bookmarkTag::after{ - content: ''; +@media (max-width: 1000px) { + .bookmarkTag::after { + content: ""; position: absolute; background-color: #000000; width: 15%; height: 60%; color: white; - border-radius: 4px;top:-10px; - + border-radius: 4px; + top: -10px; } - .totBook{ - + .totBook { right: -13px; - - - } - .bookmarkTag::before{ - + .bookmarkTag::before { right: -14px; - } } - - -@media (max-width:980px){ - .bookmarkTag::after{ - content: ''; +@media (max-width: 980px) { + .bookmarkTag::after { + content: ""; position: absolute; background-color: #000000; width: 20%; height: 40%; color: white; - border-radius: 4px;top:-10px; - + border-radius: 4px; + top: -10px; } - .totBook{ - + .totBook { right: -7px; - - - } - .bookmarkTag::before{ - opacity: 0; + .bookmarkTag::before { + opacity: 0; } } diff --git a/frontend/src/style/Footer.css b/frontend/src/style/Footer.css index 9b7a23bd..99ea9a50 100644 --- a/frontend/src/style/Footer.css +++ b/frontend/src/style/Footer.css @@ -330,14 +330,9 @@ ul a .mr-2 { color: #000; transition: transform 0.3s ease, color 0.3s ease; } - .contact-link a:hover { - cursor: none; - color: #474eff !important; - color: white; - transform: scale(1.1); - animation: pulse 1s infinite alternate; -} + border: 2px solid #fff; +} @keyframes pulse { 0% { @@ -355,7 +350,10 @@ ul a .mr-2 { box-shadow: 0 0 0 0 rgba(255, 255, 255, 0); } } - .contact-link a:hover { - border: 2px solid #fff; + cursor: none; + color: #474eff !important; + color: white; + transform: scale(1.1); + animation: pulse 1s infinite alternate; } diff --git a/frontend/src/style/Home.css b/frontend/src/style/Home.css index a6c8c74b..9976cabd 100644 --- a/frontend/src/style/Home.css +++ b/frontend/src/style/Home.css @@ -19,13 +19,6 @@ /* Custom scrollbar for webkit browsers (Chrome, Safari, Edge) */ -::-webkit-scrollbar-track { - background-color: var( - --scrollbar-bg - ); /* Background color of the scrollbar track */ - border-radius: 15px; -} - /* Custom scrollbar for Firefox */ ::-webkit-scrollbar { scrollbar-width: thin; /* Makes the scrollbar thin */ @@ -33,6 +26,12 @@ border-radius: 15px; width: 6px; /* Width of the scrollbar */ } +::-webkit-scrollbar-track { + background-color: var( + --scrollbar-bg + ); /* Background color of the scrollbar track */ + border-radius: 15px; +} /* contributor style */ .contributors-section { text-align: center; @@ -67,11 +66,11 @@ max-width: 100vw; overflow: auto; display: flex; - justify-content: center; /* Change from start to center */ + justify-content: start; align-items: center; margin-top: 20px; padding: 1rem; - margin-left: 0; /* Remove margin-left to center */ + margin-left: 32%; } .pagination .page-wrapper{ @@ -85,6 +84,8 @@ list-style-type: none; padding: 0; display: flex; + align-items: center; + justify-content: center; gap: 5px; } @@ -131,17 +132,13 @@ display: flex; flex-direction: row; align-items: center; - justify-content: center; /* Change from space-between to center */ -} -.let-text{ - text-align: center; - font-size: 30px; + justify-content: space-between; } + .hero-content { display: flex; - flex-direction: row; - width: 100%; /* Change from 50% to 100% for full width */ - text-align: center; /* Center the text */ + flex-direction: column; + width: 50%; gap: 6px; } @@ -229,8 +226,8 @@ text-align: center; } .hero-content { - /* display: flex; */ - /* flex-direction: column; */ + display: flex; + flex-direction: column; width: 100%; gap: 6px; } @@ -238,8 +235,12 @@ justify-content: center; } .hero-image { + height: 45%; + width: 100%; display: flex; - justify-content: center; /* Center the image */ + align-items: center; + justify-content: center; + margin-top: 2rem; } .hero-image img { height: 100%; @@ -516,13 +517,6 @@ background-color: #8b5cf6; cursor: pointer; } -.filter-container { - display: flex; - justify-content: center; /* Center filter buttons */ - flex-wrap: wrap; - gap: 10px; -} - .active_filter, .filter-button:hover { background-color: #09001f63; @@ -532,10 +526,10 @@ box-shadow: -1px 2px 8px #c5aff899,0px 2px 8px #6943c392; } -.search-feilds { +.search-fields { display: flex; - justify-content: center; /* Center the search field */ - margin-top: 20px; + justify-content: center; + margin: 20px 0; } .search-input { @@ -643,7 +637,7 @@ .hero-button a:hover { color: white; } - + @keyframes slideInLeft { from { opacity: 0; diff --git a/frontend/src/style/Modal.css b/frontend/src/style/Modal.css index 50236186..edaa921f 100644 --- a/frontend/src/style/Modal.css +++ b/frontend/src/style/Modal.css @@ -2,7 +2,7 @@ position: fixed; top: 0; left: 0; - right: 0; + right: 0; bottom: 0; background: rgba(239, 234, 234, 0.7); display: flex; @@ -11,14 +11,6 @@ z-index: 1000; } -.modal-content { - padding: 30px; - border-radius: 5px; - box-shadow: 0 0 10px rgba(168, 158, 158, 0.25); - color: rgb(19, 8, 26); /* Ensure text is purple */ - position: relative; -} - .close-buttoned { width: 50px; height: 50px; @@ -36,3 +28,10 @@ outline: none; /* Remove the default outline */ margin-left: auto; } +.modal-content { + padding: 30px; + border-radius: 5px; + box-shadow: 0 0 10px rgba(168, 158, 158, 0.25); + color: rgb(19, 8, 26); /* Ensure text is purple */ + position: relative; +} \ No newline at end of file diff --git a/frontend/src/style/Navbar.css b/frontend/src/style/Navbar.css index d25725aa..8661067f 100644 --- a/frontend/src/style/Navbar.css +++ b/frontend/src/style/Navbar.css @@ -1,88 +1,97 @@ .navbar { - background-color: #6a43c3; - padding: 1rem; + background-color: #8b5cf6; + padding: 5px 10px; /* Decreased padding to reduce height */ position: fixed; - width: 1500px; + width: 100%; top: 0px; left: 0px; - height: auto; + height: 80px; align-items: center; - justify-content: start; + justify-content: space-between; font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Open Sans", "Helvetica Neue", sans-serif !important; z-index: 4; isolation: isolate; mix-blend-mode: normal; - - gap: 10px; - + padding-left: 30px; } .search-bar { display: flex; align-items: center; position: relative; - top: -10px; + top: -10px; /* Adjust the value as needed */ } - .navbar-content li { - flex-grow: 1; - margin: 0 15px; + flex-grow: 1; /* Make the navbar items stretch to fill the width */ + margin: 0 15px; /* Add margin to create space between nav items */ font-size: 1.3rem; - text-decoration: none; + text-decoration: none; /* Ensures no underline */ } -.navbar-brand { - background: transparent; -} -.navbar-content { - display: flex; - align-items: center; -} - -.nav-item { - position: relative; - color: #fff; - transition: transform 0.3s, filter 0.3s, box-shadow 0.3s; - box-shadow: 0 0 10px rgba(255, 255, 255, 0); -} .navbar-content .nav-item { - flex-wrap: wrap; - flex-grow: 1; + flex-grow: 1; /* Allow items to stretch */ text-align: center; - text-decoration: none; - margin: 0 -1px; + text-decoration: none; /* Ensures no underline */ + margin: 0 15px; /* Add space between items */ } + + .logo-img { width: 150px; - margin-right: auto !important; + margin-right: auto; /* Move the logo to the left */ +} +.navbar-content li { + list-style: none; + margin: 0 10px; + font-size: 1.3rem; + text-decoration: none; /* Ensures no underline */ + animation: slideTop 1s ease forwards; } - .navbar-content { display: flex; + text-decoration: none; /* Ensures no underline */ list-style: none; padding: 0; margin: 0; - justify-content: space-between; - width: 109%; + justify-content: space-between; /* Add space between items */ + width: 109%; /* Make the navbar items stretch along the width */ } .card-body img { background: transparent; } + +.navbar-brand { + background: transparent; +} + +.navbar-content { + display: flex; + align-items: center; +} +/* Define hover effect for nav-items */ +/* Define hover effect for nav-items */ +.nav-item { + position: relative; + color: #fff; + transition: transform 0.3s, filter 0.3s, box-shadow 0.3s; /* Add box-shadow to transition */ + box-shadow: 0 0 10px rgba(255, 255, 255, 0); /* Initially no shadow */ +} + .nav-item:hover { - color: black; - transform: scale(1.05); - filter: brightness(1.2); + transform: scale(1.05); /* Scale up slightly on hover */ + filter: brightness(1.2); /* Brighten on hover for shine effect */ + box-shadow: 0 0 20px rgba(255, 255, 255, 0.8); /* Add glowing effect */ } + + .navbar-left { display: flex; - width: fit-content; justify-content: center; align-items: center; - padding: 10px; gap: 5px; animation: slideLeft 1s ease forwards; } @@ -91,14 +100,17 @@ width: 30px; height: 30px; position: relative; + -webkit-transform: rotate(0deg); + -moz-transform: rotate(0deg); + -o-transform: rotate(0deg); transform: rotate(0deg); + -webkit-transition: 0.5s ease-in-out; + -moz-transition: 0.5s ease-in-out; + -o-transition: 0.5s ease-in-out; transition: 0.5s ease-in-out; cursor: pointer; } -#nav-icon1:hover{ - cursor: none; -} .navbar-left #nav-icon1 span { display: block; position: absolute; @@ -108,7 +120,13 @@ border-radius: 9px; opacity: 1; left: 0; + -webkit-transform: rotate(0deg); + -moz-transform: rotate(0deg); + -o-transform: rotate(0deg); transform: rotate(0deg); + -webkit-transition: 0.25s ease-in-out; + -moz-transition: 0.25s ease-in-out; + -o-transition: 0.25s ease-in-out; transition: 0.25s ease-in-out; } @@ -126,6 +144,9 @@ #nav-icon1.open span:nth-child(1) { top: 18px; + -webkit-transform: rotate(135deg); + -moz-transform: rotate(135deg); + -o-transform: rotate(135deg); transform: rotate(135deg); } @@ -136,77 +157,43 @@ #nav-icon1.open span:nth-child(3) { top: 18px; + -webkit-transform: rotate(-135deg); + -moz-transform: rotate(-135deg); + -o-transform: rotate(-135deg); transform: rotate(-135deg); } -.navbar-left { - display: flex; - width: fit-content; - justify-content: flex-start; /* Align items to the left */ - align-items: center; - padding: 10px; - gap: 5px; - animation: slideLeft 1s ease forwards; -} -.navbar-left { +.navbar-right { display: flex; - width: fit-content; - justify-content: flex-start; /* Align items to the left */ align-items: center; - padding: 10px; - gap: 5px; - animation: slideLeft 1s ease forwards; -} - -.navbar-center { animation: slideRight 1s ease forwards; - margin-right: 115px; + /* margin-right: 115px; */ } .logo-img { width: 150px; - margin-right: 140px; + margin-right: 140px; /* Move the logo to the right */ } -.nav-item a, -.navbar-content ul li a, -.Bookmark.nav-link.active { - - color: black !important; /* Ensure nav items are always black */ - text-decoration: none !important; - font-size: 1.2rem; +.nav-item a { + color: #0e0303; + text-decoration: none; + font-size: 1.2rem; /* Adjust font size as needed */ transition: color 0.3s; - position: relative; } -.nav-item a:hover, -.Bookmark.nav-link.active:hover { - color: black !important; /* Ensure nav items remain black on hover */ - font-weight: 700; +.navbar-content ul li a.active { + color: white; + background-color: green; } -.nav-item a::after, -.Bookmark.nav-link.active::after { - content: ''; - position: absolute; - width: 0%; - height: 2px; - - bottom: -5px; - left: 0; - background-color: black; /* Ensure underline is black */ - transition: all 0.3s ease-in-out; +.nav-item { + position: relative; + color: #fff; } -.nav-item a:hover::after, -.Bookmark.nav-link.active:hover::after { +.nav-item:hover::before { width: 100%; - background-color: black; /* Ensure underline remains black on hover */ -} - -.navbar-content ul li a.active { - color: black; - background-color: rgb(0, 128, 0); } .sidebar { @@ -214,26 +201,26 @@ height: 92%; background-color: #8b5cf6; position: fixed; - top: 4.6rem; - z-index: 4; + top: 4.4rem; + z-index: 3; display: flex; flex-direction: column; font-size: 1.4rem; overflow-y: scroll; transition: width 0.3s; + z-index: 4; } .nav-item::before { content: ""; position: absolute; - /* bottom: 0; */ + bottom: 0; left: 50%; - top: 35px; transform: translateX(-50%); width: 0; height: 2px; background-color: black; - /* transition: width 0.2s ease-in-out; */ + transition: width 0.2s ease-in-out; } .sidebar.active { @@ -243,6 +230,7 @@ .sidebar-content { border-bottom: 1px solid rgb(2, 27, 43); font-weight: 500; + transform: translateY(40px); opacity: 0; transition: transform 0.5s, opacity 0.5s; transition-delay: 0.2s; @@ -268,10 +256,10 @@ font-weight: 500; } -/* .Link:hover { +.Link:hover { color: rgb(72, 5, 5); text-decoration: none; -} */ +} .sidebar-btns { display: flex; @@ -288,9 +276,9 @@ line-height: 1; } -/* .sidebar-btn:hover { +.sidebar-btn:hover { color: rgba(0, 0, 0, 0.84); -} */ +} .sidebar { color: rgba(0, 0, 0, 0.84); @@ -343,7 +331,7 @@ background-clip: padding-box; transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; position: relative; - padding-right: 40px; + padding-right: 40px; /* Adjust as needed */ flex: 1 1 auto; width: 1%; margin-bottom: 0; @@ -363,31 +351,31 @@ line-height: 1; } -/* .sidebar-btn:hover { +.sidebar-btn:hover { color: rgba(0, 0, 0, 0.84); -} */ +} .sidebar { - color: rgb(23, 0, 38); + color: rgba(0, 0, 0, 0.84); } -/* .filter:hover { - font-size: 1.8rem; - text-decoration: underline; -} */ .filter { transition: font-size 0.3s ease, text-decoration 0.3s ease; } - +.filter:hover { + font-size: 1.8rem; + text-decoration: underline; + /* transition: all 0.3s; */ +} .search { - margin-top: 0px; + margin-top: 0px; position: relative; } .box { margin-top: 15px; - margin-left: 65px; + margin-left: 65px; outline: none !important; border-radius: 20px; width: 80% !important; @@ -398,9 +386,9 @@ border: none; } -/* .box:hover { +.box:hover { border: 2.5px solid black; -} */ +} .input:focus { outline: none; @@ -409,6 +397,7 @@ } .span { + /* background: transparent !important; */ border: none !important; border-radius: 2px 100px 100px 2px; margin: 1.5px; @@ -418,11 +407,12 @@ font-size: 1.5rem; font-weight: b; line-height: 1.5; - color: black; + color: #495057; text-align: center; white-space: nowrap; background-color: #ebeff4; border: 1px solid #ced4da; + /* border-radius: 0.25rem; */ font-weight: bold !important; cursor: pointer; } @@ -448,7 +438,7 @@ font-size: 1.5rem; font-weight: b; line-height: 1.5; - color: black; + color: #495057; text-align: center; white-space: nowrap; background-color: #e9ecef; @@ -477,38 +467,6 @@ } /* Ensure no underline under nav items */ -.nav-item a, -.navbar-content ul li a, -.Bookmark.nav-link.active { - color: rgb(23, 0, 38) !important; /* Ensure nav items are always black */ +.nav-item a, .navbar-content ul li a { text-decoration: none !important; - font-size: 1.2rem; - transition: color 0.3s; - position: relative; -} - - -.nav-item a:hover, -.Bookmark.nav-link.active:hover { - color: rgb(23, 0, 38) !important; /* Ensure nav items remain black on hover */ - font-weight: 700; -} - - -.nav-item a::after, -.Bookmark.nav-link.active::after { - content: ''; - position: absolute; - width: 0%; - height: 2px; - bottom: -5px; - left: 0; - background-color: black; /* Ensure underline is black */ - transition: all 0.3s ease-in-out; -} - -.nav-item a:hover::after, -.Bookmark.nav-link.active:hover::after { - width: 100%; - background-color: black; /* Ensure underline remains black on hover */ } diff --git a/frontend/src/style/Rateus.css b/frontend/src/style/Rateus.css index 5cc2e423..75edfca8 100644 --- a/frontend/src/style/Rateus.css +++ b/frontend/src/style/Rateus.css @@ -1,69 +1,104 @@ -.rate-us { +.rate-us-page { display: flex; justify-content: center; align-items: center; - height: 100vh; /* Ensure the component is centered vertically */ } -.rate-us__container { + +.toast-success { + background-color: #28a745; /* Green background for success */ + color: white; +} + + +.toast-error { + background-color: #dc3545; /* Red background for error */ + color: white; +} + +.toast-body { + font-size: 16px; + text-align: center; +} + +.rate-us-container { width: 70%; max-width: 600px; padding: 20px; - border: 1px solid #210202; border-radius: 5px; - background-color: black; + background-color: #8B5CF6; transition: box-shadow 0.3s, transform 0.3s; } -.rate-us__heading { - text-align: center; - margin-bottom: 20px; - color: #7c1de2; +.rate-us-container:hover { + box-shadow: 0 0 20px #8B5CF6; + transform: scale(1.05); } -.rate-us__container--hover:hover { - box-shadow: 0 0 20px #7c1de2; - transform: scale(1.05); +.rate-us-heading { + text-align: center; + margin-bottom: 20px; + color: #000; } -.rate-us__icon-rating { +.emoji-rating { margin-bottom: 20px; display: flex; justify-content: center; } - -.rate-us__submit-button { - width: 30%; - padding: 10px; - background-color: #7c1de2; +.submit-button:hover { + background: #101623; + border: 2px solid #fff; color: white; - border: none; - border-radius: 5px; - cursor: pointer; - transition: background-color 0.3s; } -.rate-us__icon { - font-size: 2rem; /* Increase emoji size */ + +.emoji { + font-size: 24px; cursor: pointer; - transition: transform 0.3s, filter 0.3s; + transition: transform 0.3s, text-shadow 0.3s; + margin: 0 10px; } -.rate-us__submit-button--hover:hover { - background-color: #5f129f; + +.emoji.selected { + transform: scale(1.5); + text-shadow: 0 0 20px #f7b731; + animation: shine 1.5s infinite; } -.rate-us__icon--selected { - transform: scale(1.0); /* Make selected emoji bigger */ - filter: brightness(1.5); /* Shine effect */ + +@keyframes shine { + 0% { + text-shadow: 0 0 10px #f7b731, 0 0 20px #f7b731, 0 0 30px #f7b731, 0 0 40px #f7b731, 0 0 50px #f7b731, 0 0 60px #f7b731, 0 0 70px #f7b731; + } + 100% { + text-shadow: 0 0 20px #f7b731, 0 0 30px #f7b731, 0 0 40px #f7b731, 0 0 50px #f7b731, 0 0 60px #f7b731, 0 0 70px #f7b731, 0 0 80px #f7b731; + } } -.rate-us__feedback-textarea { +.feedback-textarea { width: 100%; height: 180px; padding: 10px; - border: 1px solid #060404; + background-color: #101623; border-radius: 5px; resize: none; margin-bottom: 20px; - font-size: 1rem; /* Adjust textarea font size */ + color: white; } + +.submit-button { + width: 30%; + padding: 10px; + background-color: #101623; + color: white; + font-weight: 600; + border: none; + border-radius: 25px; + cursor: pointer; + transition: background-color 0.3s; +} + + + + diff --git a/frontend/src/style/Sidebar.css b/frontend/src/style/Sidebar.css index 189e0774..a353035f 100644 --- a/frontend/src/style/Sidebar.css +++ b/frontend/src/style/Sidebar.css @@ -6,27 +6,8 @@ justify-content: flex-start; margin-top: 20px; } + -.sidebar-btn { - margin-bottom: 10px; -} - -.sidebar-btn a { - color: var(--sidebar-text-light); - text-decoration: none; - display: flex; - align-items: center; - padding: 10px; - transition: color 0.3s ease-in-out; -} - -.sidebar-btn a:hover { - color: var(--sidebar-hover-light); -} - -.sidebar-btn a svg { - margin-right: 10px; -} @media (prefers-color-scheme: dark) { .sidebar { @@ -106,7 +87,26 @@ 0 0 30px var(--sidebar-hover), 0 0 40px var(--sidebar-hover); } +.sidebar-btn { + margin-bottom: 10px; +} +.sidebar-btn a { + color: var(--sidebar-text-light); + text-decoration: none; + display: flex; + align-items: center; + padding: 10px; + transition: color 0.3s ease-in-out; +} + +.sidebar-btn a:hover { + color: var(--sidebar-hover-light); +} + +.sidebar-btn a svg { + margin-right: 10px; +} /* Cascade Style */ .sidebar-content { display: flex;