mirror of
https://github.com/KohakuBlueleaf/KohakuHub.git
synced 2026-04-28 18:38:17 -05:00
add basic privacy/term
This commit is contained in:
1
src/kohaku-hub-ui/src/components.d.ts
vendored
1
src/kohaku-hub-ui/src/components.d.ts
vendored
@@ -25,6 +25,7 @@ declare module 'vue' {
|
||||
ElSkeleton: typeof import('element-plus/es')['ElSkeleton']
|
||||
ElTag: typeof import('element-plus/es')['ElTag']
|
||||
HelloWorld: typeof import('./components/HelloWorld.vue')['default']
|
||||
MarkdownPage: typeof import('./components/common/MarkdownPage.vue')['default']
|
||||
MarkdownViewer: typeof import('./components/common/MarkdownViewer.vue')['default']
|
||||
RepoList: typeof import('./components/repo/RepoList.vue')['default']
|
||||
RepoViewer: typeof import('./components/repo/RepoViewer.vue')['default']
|
||||
|
||||
36
src/kohaku-hub-ui/src/components/common/MarkdownPage.vue
Normal file
36
src/kohaku-hub-ui/src/components/common/MarkdownPage.vue
Normal file
@@ -0,0 +1,36 @@
|
||||
<!-- src/components/common/MarkdownPage.vue -->
|
||||
<template>
|
||||
<div class="container-main py-12">
|
||||
<article class="max-w-4xl mx-auto">
|
||||
<div class="card">
|
||||
<MarkdownViewer :content="content" />
|
||||
</div>
|
||||
</article>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script setup>
|
||||
import MarkdownViewer from '@/components/common/MarkdownViewer.vue'
|
||||
|
||||
/**
|
||||
* @typedef {Object} Props
|
||||
* @property {string} content - Markdown content to render
|
||||
*/
|
||||
const props = defineProps({
|
||||
content: {
|
||||
type: String,
|
||||
required: true
|
||||
}
|
||||
})
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
/* Additional styling for markdown pages */
|
||||
.card :deep(.markdown-body) {
|
||||
max-width: none;
|
||||
}
|
||||
|
||||
.card :deep(.markdown-body h1:first-child) {
|
||||
margin-top: 0;
|
||||
}
|
||||
</style>
|
||||
@@ -21,7 +21,7 @@
|
||||
<div>
|
||||
<h3 class="font-semibold mb-3">Community</h3>
|
||||
<div class="flex flex-col gap-2 text-sm">
|
||||
<a href="https://github.com/KohakuBlueleaf/Kohaku-Hub" target="_blank" class="text-gray-600 hover:text-blue-500">
|
||||
<a href="https://github.com/KohakuBlueleaf/KohakuHub" target="_blank" class="text-gray-600 hover:text-blue-500">
|
||||
GitHub
|
||||
</a>
|
||||
<a href="https://discord.gg/xWYrkyvJ2s" target="_blank" class="text-gray-600 hover:text-blue-500">
|
||||
|
||||
184
src/kohaku-hub-ui/src/pages/privacy.vue
Normal file
184
src/kohaku-hub-ui/src/pages/privacy.vue
Normal file
@@ -0,0 +1,184 @@
|
||||
<!-- src/pages/privacy.vue -->
|
||||
<script setup>
|
||||
import MarkdownPage from '@/components/common/MarkdownPage.vue'
|
||||
|
||||
const content = `# Privacy Policy
|
||||
|
||||
**Last Updated**: January 2025
|
||||
|
||||
## Introduction
|
||||
|
||||
Welcome to KohakuHub. This Privacy Policy explains how we collect, use, disclose, and safeguard your information when you use our service.
|
||||
|
||||
## Information We Collect
|
||||
|
||||
### Personal Information
|
||||
|
||||
When you register for an account, we collect:
|
||||
|
||||
- **Username**: Your chosen username for identification
|
||||
- **Email Address**: For account verification and communication
|
||||
- **Password**: Stored securely using industry-standard encryption
|
||||
- **Profile Information**: Any additional information you choose to provide
|
||||
|
||||
### Repository Data
|
||||
|
||||
- **Code and Files**: Content you upload to your repositories
|
||||
- **Commit History**: Version control information
|
||||
- **Repository Metadata**: Names, descriptions, tags, and settings
|
||||
|
||||
### Usage Information
|
||||
|
||||
We automatically collect certain information when you use KohakuHub:
|
||||
|
||||
- **Log Data**: IP address, browser type, operating system, pages visited
|
||||
- **Device Information**: Device identifiers and mobile network information
|
||||
- **Cookies and Similar Technologies**: To maintain your session and preferences
|
||||
|
||||
## How We Use Your Information
|
||||
|
||||
We use the collected information for:
|
||||
|
||||
### Service Provision
|
||||
|
||||
- Creating and managing your account
|
||||
- Hosting and displaying your repositories
|
||||
- Providing version control functionality
|
||||
- Enabling collaboration features
|
||||
|
||||
### Service Improvement
|
||||
|
||||
- Analyzing usage patterns to improve features
|
||||
- Debugging and fixing technical issues
|
||||
- Developing new features and services
|
||||
|
||||
### Communication
|
||||
|
||||
- Sending important service announcements
|
||||
- Responding to your inquiries and support requests
|
||||
- Notifying you of security issues (when necessary)
|
||||
|
||||
### Security
|
||||
|
||||
- Detecting and preventing fraud and abuse
|
||||
- Protecting against security threats
|
||||
- Enforcing our Terms of Service
|
||||
|
||||
## Information Sharing and Disclosure
|
||||
|
||||
### Public Information
|
||||
|
||||
- **Public Repositories**: Content in public repositories is visible to everyone
|
||||
- **Profile Information**: Your username and public profile details are visible to all users
|
||||
- **Activity**: Your public contributions and activity may be visible to others
|
||||
|
||||
### Private Information
|
||||
|
||||
We do not sell, trade, or rent your personal information to third parties. We may share information in these limited circumstances:
|
||||
|
||||
- **With Your Consent**: When you explicitly agree to share information
|
||||
- **Legal Requirements**: When required by law, court order, or legal process
|
||||
- **Service Providers**: With trusted third parties who help us operate the service (e.g., hosting providers)
|
||||
- **Security Threats**: To protect rights, property, or safety of KohakuHub, our users, or others
|
||||
|
||||
## Data Storage and Security
|
||||
|
||||
### Security Measures
|
||||
|
||||
We implement appropriate technical and organizational measures to protect your data:
|
||||
|
||||
- Encrypted data transmission (HTTPS)
|
||||
- Secure password storage (hashing and salting)
|
||||
- Regular security audits and updates
|
||||
- Access controls and authentication
|
||||
|
||||
### Data Retention
|
||||
|
||||
- **Active Accounts**: We retain your information as long as your account is active
|
||||
- **Deleted Accounts**: Account data is removed within 90 days of deletion
|
||||
- **Repository Data**: Deleted repositories are permanently removed according to our retention policy
|
||||
- **Legal Obligations**: Some data may be retained longer if required by law
|
||||
|
||||
## Your Rights and Choices
|
||||
|
||||
### Access and Control
|
||||
|
||||
You have the right to:
|
||||
|
||||
- **Access**: View the personal information we hold about you
|
||||
- **Correction**: Update or correct your information
|
||||
- **Deletion**: Request deletion of your account and data
|
||||
- **Export**: Download your repository data
|
||||
- **Privacy Settings**: Control visibility of your repositories and profile
|
||||
|
||||
### How to Exercise Your Rights
|
||||
|
||||
- Update your profile through account settings
|
||||
- Manage repository visibility settings
|
||||
- Contact us for data access or deletion requests
|
||||
- Use our API to export your data
|
||||
|
||||
## Cookies and Tracking
|
||||
|
||||
### What We Use
|
||||
|
||||
- **Essential Cookies**: Required for authentication and basic functionality
|
||||
- **Analytics**: To understand how users interact with KohakuHub
|
||||
- **Preferences**: To remember your settings and preferences
|
||||
|
||||
### Your Choices
|
||||
|
||||
- You can control cookies through your browser settings
|
||||
- Disabling cookies may affect service functionality
|
||||
|
||||
## Third-Party Links
|
||||
|
||||
KohakuHub may contain links to external websites. We are not responsible for the privacy practices of these third-party sites. We encourage you to read their privacy policies.
|
||||
|
||||
## Children's Privacy
|
||||
|
||||
KohakuHub is not intended for users under 13 years of age. We do not knowingly collect personal information from children under 13. If we discover that a child under 13 has provided us with personal information, we will delete it immediately.
|
||||
|
||||
## International Users
|
||||
|
||||
KohakuHub is hosted and operated according to the laws of the hosting jurisdiction. By using the service, you consent to the transfer and processing of your information in that jurisdiction.
|
||||
|
||||
## Changes to This Privacy Policy
|
||||
|
||||
We may update this Privacy Policy from time to time. We will notify you of any material changes by:
|
||||
|
||||
- Posting the new Privacy Policy on this page
|
||||
- Updating the "Last Updated" date
|
||||
- Sending you an email notification (for significant changes)
|
||||
|
||||
Your continued use of KohakuHub after changes constitutes acceptance of the updated policy.
|
||||
|
||||
## Data Breach Notification
|
||||
|
||||
In the event of a data breach that affects your personal information, we will:
|
||||
|
||||
- Notify affected users within 72 hours of discovery
|
||||
- Provide information about the nature of the breach
|
||||
- Advise on steps to protect yourself
|
||||
- Report to relevant authorities as required by law
|
||||
|
||||
## Contact Us
|
||||
|
||||
If you have questions, concerns, or requests regarding this Privacy Policy or your data, please contact us:
|
||||
|
||||
- **GitHub**: [https://github.com/KohakuBlueleaf/Kohaku-Hub](https://github.com/KohakuBlueleaf/Kohaku-Hub)
|
||||
- **Discord**: [https://discord.gg/xWYrkyvJ2s](https://discord.gg/xWYrkyvJ2s)
|
||||
|
||||
## Your Consent
|
||||
|
||||
By using KohakuHub, you consent to this Privacy Policy and agree to its terms.
|
||||
|
||||
---
|
||||
|
||||
**Self-Hosted Instances**: If you are using a self-hosted instance of KohakuHub, this privacy policy may not apply. Please contact your instance administrator for their privacy policy.
|
||||
`
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<MarkdownPage :content="content" />
|
||||
</template>
|
||||
122
src/kohaku-hub-ui/src/pages/terms.vue
Normal file
122
src/kohaku-hub-ui/src/pages/terms.vue
Normal file
@@ -0,0 +1,122 @@
|
||||
<!-- src/pages/terms.vue -->
|
||||
<script setup>
|
||||
import MarkdownPage from '@/components/common/MarkdownPage.vue'
|
||||
|
||||
const content = `# Terms of Service
|
||||
|
||||
**Last Updated**: January 2025
|
||||
|
||||
## 1. Acceptance of Terms
|
||||
|
||||
By accessing and using KohakuHub ("the Service"), you accept and agree to be bound by the terms and provisions of this agreement.
|
||||
|
||||
## 2. Use License
|
||||
|
||||
Permission is granted to temporarily download one copy of the materials (information or software) on KohakuHub 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:
|
||||
|
||||
- Modify or copy the materials
|
||||
- Use the materials for any commercial purpose or for any public display
|
||||
- Attempt to reverse engineer any software contained on KohakuHub
|
||||
- Remove any copyright or other proprietary notations from the materials
|
||||
- Transfer the materials to another person or "mirror" the materials on any other server
|
||||
|
||||
## 3. User Accounts
|
||||
|
||||
### 3.1 Account Creation
|
||||
|
||||
- You must provide accurate and complete information when creating an account
|
||||
- You are responsible for maintaining the security of your account and password
|
||||
- You must notify us immediately of any unauthorized use of your account
|
||||
|
||||
### 3.2 Account Responsibilities
|
||||
|
||||
- You are responsible for all content and activity that occurs under your account
|
||||
- You may not use another user's account without permission
|
||||
- You must be at least 13 years old to use this Service
|
||||
|
||||
## 4. Content Guidelines
|
||||
|
||||
### 4.1 Your Content
|
||||
|
||||
- You retain ownership of content you upload to KohakuHub
|
||||
- You grant us a license to host, store, and share your content as necessary to provide the Service
|
||||
- You are responsible for ensuring you have the right to upload and share your content
|
||||
|
||||
### 4.2 Prohibited Content
|
||||
|
||||
You may not upload content that:
|
||||
|
||||
- Violates any laws or regulations
|
||||
- Infringes on intellectual property rights
|
||||
- Contains malware, viruses, or malicious code
|
||||
- Is hateful, threatening, or harassing
|
||||
- Contains private information of others without consent
|
||||
|
||||
## 5. Repository Management
|
||||
|
||||
### 5.1 Public Repositories
|
||||
|
||||
- Public repositories are visible to everyone
|
||||
- Anyone can view and download public repository content
|
||||
- You should not include sensitive information in public repositories
|
||||
|
||||
### 5.2 Private Repositories
|
||||
|
||||
- Private repositories are only accessible to you and collaborators you invite
|
||||
- We reserve the right to access private repositories if required by law or to investigate violations
|
||||
|
||||
## 6. Intellectual Property
|
||||
|
||||
### 6.1 Service Ownership
|
||||
|
||||
- KohakuHub and its original content, features, and functionality are owned by the project maintainers
|
||||
- The Service is protected by copyright, trademark, and other laws
|
||||
|
||||
### 6.2 User Content
|
||||
|
||||
- You retain all rights to your original content
|
||||
- By uploading content, you grant other users the licenses specified in your repository (e.g., MIT, GPL, Apache)
|
||||
|
||||
## 7. Termination
|
||||
|
||||
We may terminate or suspend your account and access to the Service immediately, without prior notice or liability, for any reason, including:
|
||||
|
||||
- Violation of these Terms
|
||||
- Fraudulent or illegal activity
|
||||
- At your request
|
||||
- Extended period of inactivity
|
||||
|
||||
## 8. Limitation of Liability
|
||||
|
||||
In no event shall KohakuHub, nor its directors, employees, partners, agents, suppliers, or affiliates, be liable for any indirect, incidental, special, consequential, or punitive damages, including without limitation, loss of profits, data, use, goodwill, or other intangible losses.
|
||||
|
||||
## 9. Disclaimer
|
||||
|
||||
Your use of the Service is at your sole risk. The Service is provided on an "AS IS" and "AS AVAILABLE" basis without any warranty or condition, express, implied, or statutory.
|
||||
|
||||
## 10. Governing Law
|
||||
|
||||
These Terms shall be governed by and construed in accordance with the laws of your jurisdiction, without regard to its conflict of law provisions.
|
||||
|
||||
## 11. Changes to Terms
|
||||
|
||||
We reserve the right to modify or replace these Terms at any time. If a revision is material, we will provide at least 30 days' notice prior to any new terms taking effect.
|
||||
|
||||
## 12. Contact Us
|
||||
|
||||
If you have any questions about these Terms, please contact us:
|
||||
|
||||
- GitHub: [https://github.com/KohakuBlueleaf/Kohaku-Hub](https://github.com/KohakuBlueleaf/Kohaku-Hub)
|
||||
- Discord: [https://discord.gg/xWYrkyvJ2s](https://discord.gg/xWYrkyvJ2s)
|
||||
|
||||
---
|
||||
|
||||
By using KohakuHub, you acknowledge that you have read, understood, and agree to be bound by these Terms of Service.
|
||||
`
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<MarkdownPage :content="content" />
|
||||
</template>
|
||||
10
src/kohaku-hub-ui/src/typed-router.d.ts
vendored
10
src/kohaku-hub-ui/src/typed-router.d.ts
vendored
@@ -29,8 +29,10 @@ declare module 'vue-router/auto-routes' {
|
||||
'/[username]/[type]': RouteRecordInfo<'/[username]/[type]', '/:username/:type', { username: ParamValue<true>, type: ParamValue<true> }, { username: ParamValue<false>, type: ParamValue<false> }>,
|
||||
'/login': RouteRecordInfo<'/login', '/login', Record<never, never>, Record<never, never>>,
|
||||
'/new': RouteRecordInfo<'/new', '/new', Record<never, never>, Record<never, never>>,
|
||||
'/privacy': RouteRecordInfo<'/privacy', '/privacy', Record<never, never>, Record<never, never>>,
|
||||
'/register': RouteRecordInfo<'/register', '/register', Record<never, never>, Record<never, never>>,
|
||||
'/settings': RouteRecordInfo<'/settings', '/settings', Record<never, never>, Record<never, never>>,
|
||||
'/terms': RouteRecordInfo<'/terms', '/terms', Record<never, never>, Record<never, never>>,
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -88,6 +90,10 @@ declare module 'vue-router/auto-routes' {
|
||||
routes: '/new'
|
||||
views: never
|
||||
}
|
||||
'src/pages/privacy.vue': {
|
||||
routes: '/privacy'
|
||||
views: never
|
||||
}
|
||||
'src/pages/register.vue': {
|
||||
routes: '/register'
|
||||
views: never
|
||||
@@ -96,6 +102,10 @@ declare module 'vue-router/auto-routes' {
|
||||
routes: '/settings'
|
||||
views: never
|
||||
}
|
||||
'src/pages/terms.vue': {
|
||||
routes: '/terms'
|
||||
views: never
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user