mirror of
https://github.com/JustAnimeCore/JustAnime.git
synced 2026-04-17 22:01:45 +00:00
footer is now looking good
This commit is contained in:
@@ -15,6 +15,9 @@ import Search from "./pages/search/Search";
|
||||
import Watch from "./pages/watch/Watch";
|
||||
import Producer from "./components/producer/Producer";
|
||||
import SplashScreen from "./components/splashscreen/SplashScreen";
|
||||
import Terms from "./pages/terms/Terms";
|
||||
import DMCA from "./pages/dmca/DMCA";
|
||||
import Contact from "./pages/contact/Contact";
|
||||
|
||||
function App() {
|
||||
const location = useLocation();
|
||||
@@ -40,6 +43,9 @@ function App() {
|
||||
<Route path="/random" element={<AnimeInfo random={true} />} />
|
||||
<Route path="/404-not-found-page" element={<Error error="404" />} />
|
||||
<Route path="/error-page" element={<Error />} />
|
||||
<Route path="/terms-of-service" element={<Terms />} />
|
||||
<Route path="/dmca" element={<DMCA />} />
|
||||
<Route path="/contact" element={<Contact />} />
|
||||
{/* Render category routes */}
|
||||
{categoryRoutes.map((path) => (
|
||||
<Route
|
||||
|
||||
@@ -4,25 +4,27 @@ import { Link } from "react-router-dom";
|
||||
|
||||
function Footer() {
|
||||
return (
|
||||
<footer className="w-full mt-16 bg-[#0a0a0a] border-t border-white/5">
|
||||
<div className="max-w-[1920px] mx-auto px-4 py-6">
|
||||
<footer className="w-full mt-16">
|
||||
{/* Logo Section */}
|
||||
<div className="hidden sm:block mb-6">
|
||||
<div className="max-w-[1920px] mx-auto px-4">
|
||||
<div className="flex justify-center sm:justify-start items-center gap-6">
|
||||
<img
|
||||
src="/footer.png"
|
||||
width={200}
|
||||
alt={logoTitle}
|
||||
className="h-16 w-auto object-contain"
|
||||
className="h-[100px] w-[200px] object-contain"
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div className="bg-[#0a0a0a] border-t border-white/5">
|
||||
<div className="max-w-[1920px] mx-auto px-4 py-6">
|
||||
{/* A-Z List Section */}
|
||||
<div className="hidden sm:block mb-6">
|
||||
<div className="flex items-center gap-4 mb-4 ">
|
||||
<div className="mb-6 text-center sm:text-left">
|
||||
<div className="flex flex-col sm:flex-row sm:items-center gap-2 sm:gap-4 mb-4 items-center sm:items-start">
|
||||
<h2 className="text-sm font-medium text-white">A-Z LIST</h2>
|
||||
<span className="text-sm text-white/60">Browse anime alphabetically</span>
|
||||
</div>
|
||||
<div className="flex flex-wrap gap-1.5">
|
||||
<div className="flex flex-wrap gap-1.5 justify-center sm:justify-start">
|
||||
{["All", "#", "0-9", ...Array.from({ length: 26 }, (_, i) => String.fromCharCode(65 + i))].map((item, index) => (
|
||||
<Link
|
||||
to={`az-list/${item === "All" ? "" : item}`}
|
||||
@@ -33,11 +35,31 @@ function Footer() {
|
||||
</Link>
|
||||
))}
|
||||
</div>
|
||||
<div className="flex gap-4 flex-wrap justify-center sm:justify-start mt-4">
|
||||
<Link
|
||||
to="/terms-of-service"
|
||||
className="text-sm text-white/60 hover:text-white transition-colors"
|
||||
>
|
||||
Terms of Service
|
||||
</Link>
|
||||
<Link
|
||||
to="/dmca"
|
||||
className="text-sm text-white/60 hover:text-white transition-colors"
|
||||
>
|
||||
DMCA
|
||||
</Link>
|
||||
<Link
|
||||
to="/contact"
|
||||
className="text-sm text-white/60 hover:text-white transition-colors"
|
||||
>
|
||||
Contact
|
||||
</Link>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{/* Legal Text */}
|
||||
<div className="space-y-2 text-sm text-white/40">
|
||||
<p className="max-w-4xl">
|
||||
<div className="space-y-2 text-sm text-white/40 text-center sm:text-left">
|
||||
<p className="max-w-4xl mx-auto sm:mx-0">
|
||||
{website_name} does not host any files, it merely pulls streams from
|
||||
3rd party services. Legal issues should be taken up with the file
|
||||
hosts and providers. {website_name} is not responsible for any media
|
||||
@@ -46,6 +68,7 @@ function Footer() {
|
||||
<p>© {website_name}. All rights reserved.</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</footer>
|
||||
);
|
||||
}
|
||||
|
||||
49
src/pages/contact/Contact.jsx
Normal file
49
src/pages/contact/Contact.jsx
Normal file
@@ -0,0 +1,49 @@
|
||||
import React from 'react';
|
||||
import website_name from '@/src/config/website.js';
|
||||
import { FontAwesomeIcon } from "@fortawesome/react-fontawesome";
|
||||
import { faDiscord, faGithub } from "@fortawesome/free-brands-svg-icons";
|
||||
import { faPaperPlane } from "@fortawesome/free-solid-svg-icons";
|
||||
|
||||
function Contact() {
|
||||
return (
|
||||
<div className="max-w-4xl mx-auto px-4 py-8">
|
||||
<h1 className="text-2xl font-bold mb-6">Contact Us</h1>
|
||||
<div className="space-y-8 text-white/60">
|
||||
<p>
|
||||
Get in touch with the {website_name} team through any of the following platforms:
|
||||
</p>
|
||||
<div className="flex flex-wrap gap-6">
|
||||
<a
|
||||
href="https://t.me/zenime_discussion"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
className="flex items-center gap-3 px-4 py-3 bg-white/5 hover:bg-white/10 rounded-lg transition-colors group"
|
||||
>
|
||||
<FontAwesomeIcon icon={faPaperPlane} className="text-xl text-white/60 group-hover:text-white" />
|
||||
<span className="text-white/60 group-hover:text-white">Join our Telegram</span>
|
||||
</a>
|
||||
<a
|
||||
href="#"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
className="flex items-center gap-3 px-4 py-3 bg-white/5 hover:bg-white/10 rounded-lg transition-colors group"
|
||||
>
|
||||
<FontAwesomeIcon icon={faDiscord} className="text-xl text-white/60 group-hover:text-white" />
|
||||
<span className="text-white/60 group-hover:text-white">Join Discord Server</span>
|
||||
</a>
|
||||
<a
|
||||
href="#"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
className="flex items-center gap-3 px-4 py-3 bg-white/5 hover:bg-white/10 rounded-lg transition-colors group"
|
||||
>
|
||||
<FontAwesomeIcon icon={faGithub} className="text-xl text-white/60 group-hover:text-white" />
|
||||
<span className="text-white/60 group-hover:text-white">GitHub</span>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
export default Contact;
|
||||
66
src/pages/dmca/DMCA.jsx
Normal file
66
src/pages/dmca/DMCA.jsx
Normal file
@@ -0,0 +1,66 @@
|
||||
import React from 'react';
|
||||
import website_name from '@/src/config/website.js';
|
||||
import { FontAwesomeIcon } from "@fortawesome/react-fontawesome";
|
||||
import { faShield } from "@fortawesome/free-solid-svg-icons";
|
||||
|
||||
function DMCA() {
|
||||
return (
|
||||
<div className="max-w-5xl mx-auto px-4 pt-24 pb-5">
|
||||
{/* Content */}
|
||||
<div className="space-y-12 text-white/60">
|
||||
<div className="text-center mb-8">
|
||||
<h1 className="text-3xl font-semibold text-white">DMCA Takedown Request Requirements</h1>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<p className="leading-relaxed text-base">
|
||||
We take the intellectual property rights of others seriously and require that our Users do the same.
|
||||
The Digital Millennium Copyright Act (DMCA) established a process for addressing claims of copyright infringement.
|
||||
If you own a copyright or have authority to act on behalf of a copyright owner and want to report a claim that a
|
||||
third party is infringing that material on or through {website_name}'s services, please submit a DMCA report on
|
||||
our Contact page, and we will take appropriate action.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<h2 className="text-xl font-semibold text-white mb-4">DMCA Report Requirements</h2>
|
||||
<ul className="space-y-3">
|
||||
{[
|
||||
"A description of the copyrighted work that you claim is being infringed;",
|
||||
"A description of the material you claim is infringing and that you want removed or access to which you want disabled and the URL or other location of that material;",
|
||||
"Your name, title (if acting as an agent), address, telephone number, and email address;",
|
||||
'The following statement: "I have a good faith belief that the use of the copyrighted material I am complaining of is not authorized by the copyright owner, its agent, or the law (e.g., as a fair use)";',
|
||||
'The following statement: "The information in this notice is accurate and, under penalty of perjury, I am the owner, or authorized to act on behalf of the owner, of the copyright or of an exclusive right that is allegedly infringed";',
|
||||
"An electronic or physical signature of the owner of the copyright or a person authorized to act on the owner's behalf."
|
||||
].map((requirement, index) => (
|
||||
<li key={index} className="flex items-start gap-3">
|
||||
<span className="w-6 h-6 flex-shrink-0 rounded-full bg-white/10 flex items-center justify-center text-sm mt-0.5">
|
||||
{index + 1}
|
||||
</span>
|
||||
<span className="leading-relaxed text-base">{requirement}</span>
|
||||
</li>
|
||||
))}
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<h2 className="text-xl font-semibold text-white mb-4">Submit Your Request</h2>
|
||||
<p className="leading-relaxed text-base">
|
||||
Your DMCA takedown request should be submit here:{' '}
|
||||
<a
|
||||
href="/contact"
|
||||
className="text-white hover:text-white/80 underline underline-offset-4 decoration-white/20 hover:decoration-white/40 transition-colors"
|
||||
>
|
||||
https://justanime.to/contact
|
||||
</a>
|
||||
</p>
|
||||
<p className="mt-3 leading-relaxed text-base">
|
||||
We will then review your DMCA request and take proper actions, including removal of the content from the website.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
export default DMCA;
|
||||
90
src/pages/terms/Terms.jsx
Normal file
90
src/pages/terms/Terms.jsx
Normal file
@@ -0,0 +1,90 @@
|
||||
import React from 'react';
|
||||
import website_name from '@/src/config/website.js';
|
||||
|
||||
function Terms() {
|
||||
return (
|
||||
<div className="max-w-5xl mx-auto px-4 pt-24 pb-5">
|
||||
{/* Content */}
|
||||
<div className="space-y-12 text-white/60">
|
||||
<div className="text-center mb-8">
|
||||
<h1 className="text-3xl font-semibold text-white">Terms and Conditions of Use</h1>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<h2 className="text-xl font-semibold text-white mb-4">1. Terms</h2>
|
||||
<p className="leading-relaxed text-base">
|
||||
By accessing this Website, accessible from https://justanime.to, you are agreeing to be bound by these Website Terms and Conditions of Use and agree that you are responsible for the agreement with any applicable local laws. If you disagree with any of these terms, you are prohibited from accessing this site. The materials contained in this Website are protected by copyright and trade mark law.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<h2 className="text-xl font-semibold text-white mb-4">2. Use License</h2>
|
||||
<p className="leading-relaxed text-base mb-4">
|
||||
Permission is granted to temporarily download one copy of the materials on {website_name}'s Website for personal, non-commercial transitory viewing only. This is the grant of a license, not a transfer of title, and under this license you may not:
|
||||
</p>
|
||||
<ul className="list-disc pl-6 space-y-2 text-base">
|
||||
<li>modify or copy the materials;</li>
|
||||
<li>use the materials for any commercial purpose or for any public display;</li>
|
||||
<li>attempt to reverse engineer any software contained on {website_name}'s Website;</li>
|
||||
<li>remove any copyright or other proprietary notations from the materials; or</li>
|
||||
<li>transferring the materials to another person or "mirror" the materials on any other server.</li>
|
||||
</ul>
|
||||
<p className="leading-relaxed text-base mt-4">
|
||||
This will let {website_name} to terminate upon violations of any of these restrictions. Upon termination, your viewing right will also be terminated and you should destroy any downloaded materials in your possession whether it is printed or electronic format.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<h2 className="text-xl font-semibold text-white mb-4">3. Disclaimer</h2>
|
||||
<p className="leading-relaxed text-base">
|
||||
All the materials on {website_name}'s Website are provided "as is". {website_name} makes no warranties, may it be expressed or implied, therefore negates all other warranties. Furthermore, {website_name} does not make any representations concerning the accuracy or reliability of the use of the materials on its Website or otherwise relating to such materials or any sites linked to this Website.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<h2 className="text-xl font-semibold text-white mb-4">4. Limitations</h2>
|
||||
<p className="leading-relaxed text-base">
|
||||
{website_name} or its suppliers will not be hold accountable for any damages that will arise with the use or inability to use the materials on {website_name}'s Website, even if {website_name} or an authorize representative of this Website has been notified, orally or written, of the possibility of such damage. Some jurisdiction does not allow limitations on implied warranties or limitations of liability for incidental damages, these limitations may not apply to you.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<h2 className="text-xl font-semibold text-white mb-4">5. Revisions and Errata</h2>
|
||||
<p className="leading-relaxed text-base">
|
||||
The materials appearing on {website_name}'s Website may include technical, typographical, or photographic errors. {website_name} will not promise that any of the materials in this Website are accurate, complete, or current. {website_name} may change the materials contained on its Website at any time without notice. {website_name} does not make any commitment to update the materials.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<h2 className="text-xl font-semibold text-white mb-4">6. Links</h2>
|
||||
<p className="leading-relaxed text-base">
|
||||
{website_name} has not reviewed all of the sites linked to its Website and is not responsible for the contents of any such linked site. The presence of any link does not imply endorsement by {website_name} of the site. The use of any linked website is at the user's own risk.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<h2 className="text-xl font-semibold text-white mb-4">7. Site Terms of Use Modifications</h2>
|
||||
<p className="leading-relaxed text-base">
|
||||
{website_name} may revise these Terms of Use for its Website at any time without prior notice. By using this Website, you are agreeing to be bound by the current version of these Terms and Conditions of Use.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<h2 className="text-xl font-semibold text-white mb-4">8. Your Privacy</h2>
|
||||
<p className="leading-relaxed text-base">
|
||||
Please read our Privacy Policy.
|
||||
</p>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<h2 className="text-xl font-semibold text-white mb-4">9. Governing Law</h2>
|
||||
<p className="leading-relaxed text-base">
|
||||
Any claim related to {website_name}'s Website shall be governed by the laws of bq without regards to its conflict of law provisions.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
export default Terms;
|
||||
Reference in New Issue
Block a user