Compare commits

33 Commits

Author SHA1 Message Date
eshanized
4f614a1d76 📝 docs: add asiant fonts 2025-01-14 17:43:37 +05:30
eshanized
735edcc37a 📝 docs: add lynxfetch 2025-01-14 17:34:33 +05:30
eshanized
1d1cdd02ea 📝 docs: add pkgbuild explanation 2025-01-14 17:27:16 +05:30
eshanized
2c136e8733 📝 docs: add intro to pkgbuilds 2025-01-14 17:20:35 +05:30
eshanized
a9c54de0f3 📝 docs: add ukrainian translation 2025-01-11 00:50:21 +05:30
eshanized
d1fe734c47 🚀 feat: add #1 ukrainian lanuguage @XlebyllleK 2025-01-11 00:46:05 +05:30
3084db3d98 📝 docs: translate in urdu 2025-01-11 00:26:10 +05:30
0fc164d98e 📝 docs: translating in urdu 2025-01-11 00:21:01 +05:30
e0f8270524 📝 docs: half translation in urdu 2025-01-11 00:18:56 +05:30
4e6140bad0 📝 docs: translate in urdu 2025-01-11 00:17:55 +05:30
d80797a9f7 📝 docs: translate in urdu 2025-01-11 00:17:30 +05:30
660ca3f3cc 📝 docs: translate to urdu 2025-01-11 00:16:48 +05:30
d380e92a95 📝 docs: translate to bn 2025-01-11 00:15:13 +05:30
3b1ad10ee7 📝 docs: translate to bn 2025-01-11 00:14:35 +05:30
9c51a7e63e 📝 docs: translate to bn 2025-01-11 00:14:00 +05:30
e9f74d428d 📝 docs: bn translation 2025-01-11 00:13:10 +05:30
536665efe5 📝 docs: bn translation 2025-01-11 00:12:09 +05:30
8816bc3fe3 📝 docs: half translation to bn 2025-01-11 00:09:07 +05:30
bd298189f1 📝 docs: bn translation 2025-01-11 00:04:37 +05:30
eshanized
15dc1b806c 🐛 fix: badge not found! 2025-01-10 23:43:15 +05:30
Eshan Roy
f4dc8fb8a8 LICENSE 2025-01-10 23:42:04 +05:30
eshanized
0556d16523 📝 docs: add brief decription 2025-01-10 23:37:10 +05:30
eshanized
f646acb483 🧹 chore: v3 2025-01-10 23:32:28 +05:30
eshanized
13669224f8 🧹 chore: add gujrati translation 2025-01-10 23:31:47 +05:30
eshanized
da881f0801 🧹 chore: add marathi 2025-01-10 23:29:13 +05:30
eshanized
57f430d697 🐛 fix: add lang dropdown 2025-01-10 23:28:35 +05:30
eshanized
38cc72c2a3 🧹 chore: upgrade code models 2025-01-10 23:25:54 +05:30
eshanized
7d7c829192 📝 docs: getting ready for translation 2025-01-10 23:23:06 +05:30
eshanized
0ab01ea46c 🐛 fix: according to fit 2025-01-10 21:54:03 +05:30
eshanized
b8db7b774e 🧹 chore: change in config && repo 2025-01-10 21:46:50 +05:30
eshanized
7baa0ff699 🐛 fix: remove blogs 2025-01-10 21:33:38 +05:30
1eccabd382 📝 docs: update dev guides 2024-12-23 23:38:41 +05:30
0531d1c44d style: minor mods in ui color+cols 2024-12-23 23:32:33 +05:30
81 changed files with 4361 additions and 1285 deletions

21
LICENSE Normal file
View File

@@ -0,0 +1,21 @@
MIT License
Copyright (c) 2025 SNIGDHA OS
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

184
README.md
View File

@@ -1,41 +1,173 @@
# Website
# Snigdha OS Developer Documentation
This website is built using [Docusaurus](https://docusaurus.io/), a modern static website generator.
[![License](https://img.shields.io/github/license/Snigdha-OS/snigdhaos-devdocs)](LICENSE)
[![Build Status](https://img.shields.io/github/actions/workflow/status/Snigdha-OS/documentation/deploy.yml?branch=master)](https://github.com/Snigdha-OS/snigdhaos-devdocs/actions)
[![Website](https://img.shields.io/website?url=https%3A%2F%2Fsnigdha-os.github.io%2Fsnigdhaos-devdocs%2F)](https://snigdha-os.github.io/snigdhaos-devdocs/)
### Installation
Welcome to the **Snigdha OS Developer Documentation** repository! This repository houses the official developer documentation for **Snigdha OS**, a highly customizable, Arch-based Linux distribution designed for developers, penetration testers, and general users.
```
$ pnpm install
```
### Local Development
```
$ pnpm start
```
## 📚 About
This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server.
Snigdha OS Developer Documentation serves as a comprehensive guide for developers working on or with Snigdha OS. It includes detailed instructions, examples, and best practices to help users make the most of the OS and contribute to its ecosystem.
### Build
### Features:
- Detailed setup and configuration guides
- API references
- Contributing guidelines
- Localization support for multiple Indian languages
- Regularly updated content
```
$ pnpm build
```
This command generates static content into the `build` directory and can be served using any static contents hosting service.
### Deployment
## 🚀 Quick Start
Using SSH:
To view the documentation:
```
$ USE_SSH=true yarn deploy
```
1. Visit the [Snigdha OS Developer Docs](https://snigdha-os.github.io/snigdhaos-devdocs/).
2. Use the language switcher in the navbar to explore content in various supported languages.
3. Follow the detailed instructions to set up and customize Snigdha OS.
Not using SSH:
```
$ GIT_USER=<Your GitHub username> yarn deploy
```
If you are using GitHub pages for hosting, this command is a convenient way to build the website and push to the `gh-pages` branch.
## 🛠️ Installation and Development
To run the documentation locally:
1. Clone this repository:
```bash
git clone https://github.com/Snigdha-OS/snigdhaos-devdocs.git
```
2. Navigate to the project directory:
```bash
cd snigdhaos-devdocs
```
3. Install dependencies:
```bash
npm install
```
4. Start the development server:
```bash
npm start
```
5. Open your browser and navigate to `http://localhost:3000`.
## 🌐 Supported Languages
Snigdha OS Developer Documentation is available in multiple Indian languages, including:
- English (`en`)
- Hindi (`hi`)
- Bengali (`bn`)
- Telugu (`te`)
- Marathi (`mr`)
- Tamil (`ta`)
- Urdu (`ur`)
- Gujarati (`gu`)
- Kannada (`kn`)
- Malayalam (`ml`)
- Odia (`or`)
- Punjabi (`pa`)
- Assamese (`as`)
- Nepali (`ne`)
- Sinhala (`si`)
- Kashmiri (`ks`)
- Sanskrit (`sa`)
- Tibetan (`bo`)
## 🌏 How to Translate
### Adding or Updating Translations
1. Navigate to the `i18n` directory in the project.
Each language has its own folder named after the language code (e.g., `hi` for Hindi, `bn` for Bengali).
2. Translate or edit the JSON files inside the corresponding folder.
For example:
- `i18n/hi/docusaurus-plugin-content-docs/current/<doc>.json` contains translations for Hindi.
- Each JSON file corresponds to a specific documentation page.
3. Add your translations for the required fields. For example:
```json
{
"title": "शीर्षक",
"description": "यह एक हिंदी दस्तावेज़ है।"
}
```
4. Test your translations by running the project locally:
```bash
npm start
```
5. Commit and push your changes:
```bash
git add .
git commit -m "Add/Update translations for <language>"
git push origin <branch-name>
```
6. Open a pull request to merge your changes into the main branch.
## 🖼️ Project Structure
- `/docs`: Main documentation content in markdown files.
- `/i18n`: Translations for different languages.
- `/src`: Custom CSS and theme-related modifications.
- `docusaurus.config.js`: Main configuration file for the Docusaurus framework.
## 🤝 Contributing
We welcome contributions to improve the Snigdha OS Developer Documentation!
### How to Contribute:
1. Fork this repository.
2. Create a new branch for your feature, bug fix, or translation:
```bash
git checkout -b feature-name
```
3. Make your changes and test them locally.
4. Commit your changes:
```bash
git commit -m "Add feature or fix description"
```
5. Push your changes:
```bash
git push origin feature-name
```
6. Create a pull request on GitHub.
## 📄 License
This project is licensed under the **MIT License**. See the [LICENSE](LICENSE) file for more details.
## 📞 Support
For questions, suggestions, or bug reports, please open an issue on the [GitHub Issues](https://github.com/Snigdha-OS/snigdhaos-devdocs/issues) page.
## 🛡️ Acknowledgements
Snigdha OS Developer Documentation is powered by:
- [Docusaurus](https://docusaurus.io/) for creating modern documentation websites.
- [Prism React Renderer](https://prism-react-renderer.netlify.app/) for syntax highlighting.
Special thanks to the **Snigdha OS Community** and contributors for making this documentation project possible.
Enjoy your experience with **Snigdha OS**! 🌟

View File

@@ -1,12 +0,0 @@
---
slug: first-blog-post
title: First Blog Post
authors: [slorber, yangshun]
tags: [hola, docusaurus]
---
Lorem ipsum dolor sit amet...
<!-- truncate -->
...consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet

View File

@@ -1,44 +0,0 @@
---
slug: long-blog-post
title: Long Blog Post
authors: yangshun
tags: [hello, docusaurus]
---
This is the summary of a very long blog post,
Use a `<!--` `truncate` `-->` comment to limit blog post size in the list view.
<!-- truncate -->
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Pellentesque elementum dignissim ultricies. Fusce rhoncus ipsum tempor eros aliquam consequat. Lorem ipsum dolor sit amet

View File

@@ -1,24 +0,0 @@
---
slug: mdx-blog-post
title: MDX Blog Post
authors: [slorber]
tags: [docusaurus]
---
Blog posts support [Docusaurus Markdown features](https://docusaurus.io/docs/markdown-features), such as [MDX](https://mdxjs.com/).
:::tip
Use the power of React to create interactive blog posts.
:::
{/* truncate */}
For example, use JSX to create an interactive button:
```js
<button onClick={() => alert('button clicked!')}>Click me!</button>
```
<button onClick={() => alert('button clicked!')}>Click me!</button>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 94 KiB

View File

@@ -1,29 +0,0 @@
---
slug: welcome
title: Welcome
authors: [slorber, yangshun]
tags: [facebook, hello, docusaurus]
---
[Docusaurus blogging features](https://docusaurus.io/docs/blog) are powered by the [blog plugin](https://docusaurus.io/docs/api/plugins/@docusaurus/plugin-content-blog).
Here are a few tips you might find useful.
<!-- truncate -->
Simply add Markdown files (or folders) to the `blog` directory.
Regular blog authors can be added to `authors.yml`.
The blog post date can be extracted from filenames, such as:
- `2019-05-30-welcome.md`
- `2019-05-30-welcome/index.md`
A blog post folder can be convenient to co-locate blog post images:
![Docusaurus Plushie](./docusaurus-plushie-banner.jpeg)
The blog supports tags as well!
**And if you don't want a blog**: just delete this directory, and use `blog: false` in your Docusaurus config.

View File

@@ -1,23 +0,0 @@
yangshun:
name: Yangshun Tay
title: Front End Engineer @ Facebook
url: https://github.com/yangshun
image_url: https://github.com/yangshun.png
page: true
socials:
x: yangshunz
github: yangshun
slorber:
name: Sébastien Lorber
title: Docusaurus maintainer
url: https://sebastienlorber.com
image_url: https://github.com/slorber.png
page:
# customize the url of the author page at /blog/authors/<permalink>
permalink: '/all-sebastien-lorber-articles'
socials:
x: sebastienlorber
linkedin: sebastienlorber
github: slorber
newsletter: https://thisweekinreact.com

View File

@@ -1,19 +0,0 @@
facebook:
label: Facebook
permalink: /facebook
description: Facebook tag description
hello:
label: Hello
permalink: /hello
description: Hello tag description
docusaurus:
label: Docusaurus
permalink: /docusaurus
description: Docusaurus tag description
hola:
label: Hola
permalink: /hola
description: Hola tag description

81
config.sh Executable file
View File

@@ -0,0 +1,81 @@
#!/bin/bash
# Author: Eshan Roy <eshan@snigdhaos.org>
# Author URI: https://eshanized.github.io
set -e
# Function to display usage instructions
usage() {
cat <<EOF
Usage: ${0##*/} [--email <email>] [--username <username>] [-h]
Options:
--email <email> Set the GitHub user email.
--username <username> Set the GitHub username.
-h, --help Display this help message.
Description:
This script configures your GitHub user.email and user.name settings globally.
If no arguments are provided, it will prompt for input interactively.
Examples:
${0##*/} --email user@example.com --username "Eshan Roy"
EOF
exit 1
}
# Parse command-line arguments
while [[ "$#" -gt 0 ]]; do
case "$1" in
--email)
EMAIL="$2"
shift 2
;;
--username)
USERNAME="$2"
shift 2
;;
-h|--help)
usage
;;
*)
echo "Unknown argument: $1"
usage
;;
esac
done
# Prompt for email if not provided
if [[ -z "${EMAIL:-}" ]]; then
read -p "Enter your GitHub Email: " EMAIL
fi
# Prompt for username if not provided
if [[ -z "${USERNAME:-}" ]]; then
read -p "Enter your GitHub Username: " USERNAME
fi
# Validate email format
if ! [[ "$EMAIL" =~ ^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$ ]]; then
echo "Error: Invalid email format: $EMAIL"
exit 1
fi
# Validate username (allowing alphanumerics, dashes, underscores, and dots)
if ! [[ "$USERNAME" =~ ^[a-zA-Z0-9._-]+$ ]]; then
echo "Error: Invalid username format: $USERNAME"
exit 1
fi
# Configure GitHub global settings
git config --global user.email "$EMAIL"
git config --global user.name "$USERNAME"
# Display success message
echo -e "\033[1;32mGitHub configuration setup successful!\033[0m"
echo " User Email: $EMAIL"
echo " Username: $USERNAME"
echo -e "\033[1;36mYou can verify this configuration using the following commands:\033[0m"
echo " git config --global user.email"
echo " git config --global user.name"

View File

@@ -0,0 +1,46 @@
---
sidebar_position: 1
slug: /
---
# Overview
Snigdha OS Developer Documentation (DevDocs) is your comprehensive guide to creating, customizing, and optimizing applications for the Snigdha OS ecosystem. Designed to empower developers at every stage, DevDocs combines powerful tools, clear guidance, and actionable insights to help you bring your innovative ideas to life.
### Key Features and Details
1. **Comprehensive Getting Started Guides**
- Step-by-step tutorials to set up your Snigdha OS development environment.
- Clear instructions for SDK installation and integration.
2. **Extensive Framework and API Documentation**
- Deep dive into Snigdha OSs core frameworks and APIs.
- Explore features like multi-threading, hardware integration, and AI/ML capabilities.
3. **UI/UX Design Resources**
- Detailed design principles for creating consistent and user-friendly interfaces.
- Ready-to-use templates, themes, and style guides.
4. **Development Tools and Resources**
- Access to IDE plugins, debugging tools, and performance profilers.
- Pre-built code snippets and fully functional sample projects to accelerate development.
5. **Advanced Topics for Pro Developers**
- Tutorials on performance tuning, cross-platform compatibility, and security best practices.
- Insights into advanced features like IoT integration, voice commands, and more.
6. **Robust Testing and Debugging Frameworks**
- Tools tailored to test Snigdha OS applications efficiently.
- Guidance for resolving issues and improving app stability.
7. **Publishing and Distribution**
- Step-by-step guidance for submitting apps to the Snigdha App Store.
- Tips on app review compliance, distribution strategies, and user acquisition.
### Why Choose Snigdha OS DevDocs?
- **User-Centric Approach**: Snigdha OS is built with speed, reliability, and seamless user experiences in mind.
- **Innovative Tools**: Leverage cutting-edge tools and frameworks to build modern applications.
- **Community and Support**: Join a vibrant developer community and access dedicated support channels for assistance.
Explore the resources, connect with other developers, and bring your creative vision to life with Snigdha OS Developer Documentation. Together, well redefine whats possible in application development.

View File

@@ -0,0 +1,48 @@
---
sidebar_position: 2
---
# Why Arch?
In the world of Linux distributions, choosing a base system is a critical decision. It shapes the user's experience, the flexibility of the OS, and the overall performance. For Snighda OS, this choice was made with precision and thoughtfulness—*Arch Linux* was chosen as the base. But why Arch Linux? Lets dive into the reasons behind this decision.
### **1. Rolling Release Model**
Arch Linux is known for its rolling release model, which means that instead of waiting for major version updates, users get access to the latest software and features continuously. This aligns perfectly with the philosophy of Snighda OS, which prioritizes the latest, cutting-edge tools and technologies. With Arch as the base, Snighda OS users enjoy a continuously updated system, keeping their environments fresh and relevant with minimal hassle.
### **2. KISS Principle**
The “Keep It Simple, Stupid” (KISS) principle is one of the core philosophies behind Arch Linux. Arch avoids unnecessary bloat, giving users the freedom to build their systems from the ground up. Snighda OS inherits this philosophy, aiming to provide an uncluttered environment with only the essential components, allowing users to customize and build their ideal system without distractions.
By adhering to the KISS principle, Snighda OS offers flexibility, simplicity, and control, ensuring users get exactly what they need, without any unwanted surprises.
### **3. Flexibility and Customization**
Arch Linux offers an incredible amount of flexibility, which was a critical factor in the decision to base Snighda OS on it. With Arch, users have the power to configure their system exactly how they want. From package installation to the desktop environment and beyond, Arch leaves the ball in the user's court.
Snighda OS aims to follow in these footsteps, offering users an ultra-flexible platform that they can tweak and modify to meet their specific needs. Whether you're a developer, content creator, or just a Linux enthusiast, the customization options are nearly limitless.
### **4. Access to the Arch User Repository (AUR)**
The Arch User Repository (AUR) is one of the most celebrated aspects of Arch Linux. Its a massive collection of community-contributed packages, making almost any software easily accessible. For Snighda OS, access to AUR means users have access to a vast array of applications that are not included in the official repositories.
This is especially important for users who need software that may not be available in traditional package managers or official repos. With AUR, Snighda OS users benefit from an extensive library of software, extending the capabilities of their operating systems to almost limitless possibilities.
### **5. Documentation and Community Support**
Arch Linux is often praised for its exceptional documentation, known as the *Arch Wiki*. This treasure trove of knowledge offers clear, concise guides on how to install, configure, and troubleshoot almost any aspect of the system. When Snighda OS adopted Arch Linux as its base, it also inherited this wealth of documentation, which is an invaluable resource for both new and experienced users.
Additionally, Arch Linux has a vibrant and active community, and this community support extends to Snighda OS. Users can seek help and share knowledge, ensuring that they never feel alone in their journey with Snighda OS.
### **6. Stability and Performance**
Despite its reputation as a "cutting-edge" distro, Arch Linux is remarkably stable. Its rolling release model ensures that users always get the latest software updates, but the Arch maintainers thoroughly vet these updates for stability before they are pushed out. This balance between being on the cutting edge and ensuring system stability makes Arch an ideal choice for Snighda OS.
For users of Snighda OS, this means that they can enjoy performance optimizations and the latest software without sacrificing system reliability.
### **7. The Power of Pacman**
One of the standout features of Arch Linux is its package manager—*Pacman*. Pacman is lightweight, fast, and highly efficient, which ensures smooth and quick software management. Snighda OS users benefit from Pacmans simplicity and speed, making package installation, updates, and removals a breeze.
Additionally, Archs package management system integrates seamlessly with AUR, making it easy for Snighda OS users to install software from both official and community repositories in just a few simple commands.
### **In Conclusion: Why Arch?**
The decision to base Snighda OS on Arch Linux was made with several goals in mind: flexibility, simplicity, and performance. By choosing Arch as the foundation, Snighda OS offers an open, customizable platform with continuous updates, access to a vast library of software, and robust community support. Whether you are an experienced Linux user or a newcomer, Snighda OS provides a versatile and stable environment with Archs inherent power.
Ultimately, Snighda OS is more than just an operating system—its a community-driven project built upon the principles of choice, control, and simplicity. With Arch Linux at its core, Snighda OS ensures that users have all the tools and freedom they need to craft their ideal computing experience.
> Feel free to join the Snighda OS community and explore how Archs robustness and Snighdas flexibility can work together for your perfect Linux setup!*

View File

@@ -0,0 +1,8 @@
{
"label": "Introduction",
"position": 1,
"link": {
"type": "generated-index",
"description": "An introductory guide to Snigdha OS Developer Docs, covering the basics to get you started quickly and effectively."
}
}

View File

@@ -1,47 +0,0 @@
---
sidebar_position: 1
---
# Tutorial Intro
Let's discover **Docusaurus in less than 5 minutes**.
## Getting Started
Get started by **creating a new site**.
Or **try Docusaurus immediately** with **[docusaurus.new](https://docusaurus.new)**.
### What you'll need
- [Node.js](https://nodejs.org/en/download/) version 18.0 or above:
- When installing Node.js, you are recommended to check all checkboxes related to dependencies.
## Generate a new site
Generate a new Docusaurus site using the **classic template**.
The classic template will automatically be added to your project after you run the command:
```bash
npm init docusaurus@latest my-website classic
```
You can type this command into Command Prompt, Powershell, Terminal, or any other integrated terminal of your code editor.
The command also installs all necessary dependencies you need to run Docusaurus.
## Start your site
Run the development server:
```bash
cd my-website
npm run start
```
The `cd` command changes the directory you're working with. In order to work with your newly created Docusaurus site, you'll need to navigate the terminal there.
The `npm run start` command builds your website locally and serves it through a development server, ready for you to view at http://localhost:3000/.
Open `docs/intro.md` (this page) and edit some lines: the site **reloads automatically** and displays your changes.

View File

@@ -0,0 +1,144 @@
---
sidebar_position: 1
---
# Introduction
A **PKGBUILD** is a script used in Arch-based Linux distributions, including Snigdha OS, to automate the process of building software packages from source code. It provides a standardized method for compiling, packaging, and installing software, ensuring consistency and reproducibility across different systems. PKGBUILDs make it easier for users and developers to install software that might not be available in the official repositories or Arch User Repository (AUR). It also allows users to modify build processes, customize software installations, and contribute packages to the community.
PKGBUILDs are an essential part of the Arch ecosystem, allowing users to take full control over the software installation process, compile software tailored to their needs, and ensure the highest level of compatibility. This guide will break down the components, usage, and best practices for working with PKGBUILDs.
### **Key Components of a PKGBUILD**
A PKGBUILD script is composed of several key components that define how a software package is built, installed, and configured. Understanding these components is crucial when writing or modifying a PKGBUILD.
1. **pkgname**:
This field specifies the name of the package being created. For example, `pkgname=vim` indicates the package is Vim.
2. **pkgver**:
The version of the software being packaged. For example, `pkgver=8.2` specifies the version number of the Vim package.
3. **pkgrel**:
This is the release number for the specified version of the package. It's used to distinguish between different releases of the same version of the software. The default is often `pkgrel=1`.
4. **source**:
This is a list of URLs or file paths pointing to the source code of the software. This is where `makepkg` will fetch the software from, typically via Git or a tarball.
5. **md5sums**:
These are checksums used to verify the integrity of the downloaded source files. Each source URL or file should have a corresponding checksum. This helps ensure the integrity of the software and that the downloaded files havent been tampered with.
6. **depends**:
A list of dependencies required to build and run the software. For example, `depends=(gcc make)` specifies that the software needs GCC and Make to be compiled.
7. **makedepends**:
This list defines dependencies needed only during the build process. These dependencies are not required at runtime but are essential to building the package.
8. **build()**:
This function contains the steps required to compile the software from source. It usually includes commands like `./configure`, `make`, and `make install`. These steps will be executed when you run the `makepkg` command.
9. **package()**:
After the software is compiled, this function installs it into the appropriate directories on the system. It ensures that the software is installed in the correct locations, such as `/usr/bin` for executables or `/usr/lib` for libraries.
### **How a PKGBUILD Works**
PKGBUILDs automate the entire process of turning source code into an installable package, which can then be used by the system's package manager, `pacman`. Heres how the process typically works:
1. **Writing a PKGBUILD**:
When a package is not available in the official repositories or AUR, you may need to write a PKGBUILD to compile it from source. The PKGBUILD contains all the necessary metadata and instructions on how to build and install the software.
2. **Building the Package**:
After the PKGBUILD is written, you can use the `makepkg` command to build the package. This command follows the instructions in the PKGBUILD script to:
- Download the source code.
- Verify the integrity of the files using the provided checksums.
- Compile the software using the commands defined in the `build()` function.
- Package the compiled files into a `.pkg.tar.zst` file, which is a compressed package that can be installed on the system.
The `makepkg` command is run in the directory where the PKGBUILD script is located. It creates the package and saves it in the same directory.
Example:
```bash
makepkg
```
3. **Installing the Package**:
Once the package is built, it can be installed using `pacman`, the package manager. The package can be installed with the `-U` flag, which installs a local package:
```bash
sudo pacman -U package-name.pkg.tar.zst
```
After installation, the software behaves like any other package installed from the official repositories.
### **Why Use a PKGBUILD?**
PKGBUILDs offer several advantages to users and developers:
1. **Customization**:
A PKGBUILD allows you to modify the build process. You can change compilation flags, apply patches, or add custom configurations to the software. This makes it possible to tailor the software for your specific needs.
2. **Consistency**:
Since a PKGBUILD defines the exact steps for building and installing the software, it ensures that the software is built in the same way every time. This leads to consistency across different installations and users, which is essential for debugging and maintenance.
3. **Reproducibility**:
PKGBUILDs enable reproducibility in software builds. This is especially useful in development environments where its important to reproduce the same build on multiple machines or after a certain period of time. Using the same PKGBUILD ensures that the same software version is built in exactly the same way.
4. **Community Contributions**:
Many software packages are not available in the official repositories but are maintained by the community in the Arch User Repository (AUR). These packages are provided as PKGBUILDs, allowing users to access a wide range of software. If you encounter software that is not available, you can write a PKGBUILD and share it with the community.
5. **Security**:
PKGBUILDs ensure that the source code has not been tampered with by verifying it against checksums. This helps maintain the integrity of the software, ensuring that the version being installed is exactly what the developer intended.
### **Working with PKGBUILDs**
Here are some useful tips when working with PKGBUILDs:
1. **Review the PKGBUILD**:
Always review the PKGBUILD before running `makepkg`. This ensures you understand how the package will be built and whether it includes any unnecessary or insecure steps. Reviewing the PKGBUILD helps you spot potential issues or security risks.
2. **Modify a PKGBUILD**:
You may need to modify a PKGBUILD to suit your needs. For instance, you might want to change build options or add custom patches. Always make sure the modifications are compatible with the softwares build process to avoid issues during compilation.
3. **Test a PKGBUILD**:
Before sharing or using a PKGBUILD, its a good idea to test it in a clean environment to ensure that the software builds correctly and installs as expected. You can use virtual machines or Docker containers to test builds.
4. **Stay Updated**:
PKGBUILDs should be updated regularly, especially if the software they build gets updated. Keeping your PKGBUILDs up-to-date ensures you get the latest features, security fixes, and bug patches.
5. **Use the Arch Wiki**:
The Arch Wiki has an extensive and helpful guide on PKGBUILDs. If you run into issues or need further clarification on any PKGBUILD fields, the Wiki is an excellent resource.
### **Useful Links**
1. **Arch Wiki - PKGBUILD**:
[https://wiki.archlinux.org/title/PKGBUILD](https://wiki.archlinux.org/title/PKGBUILD)
The official Arch Wiki provides detailed information about PKGBUILDs, including syntax, examples, and best practices.
2. **Arch Wiki - Creating Packages**:
[https://wiki.archlinux.org/title/Creating_packages](https://wiki.archlinux.org/title/Creating_packages)
A comprehensive guide on creating packages using PKGBUILDs, perfect for beginners and advanced users.
3. **AUR (Arch User Repository)**:
[https://aur.archlinux.org](https://aur.archlinux.org)
The AUR is a community-driven repository where users can submit PKGBUILDs for software not included in the official Arch repositories.
4. **Makepkg Manual**:
[https://man.archlinux.org/man/makepkg.8](https://man.archlinux.org/man/makepkg.8)
The manual for `makepkg`, which is used to build packages from a PKGBUILD.
5. **PKGBUILD Cheat Sheet**:
[https://gist.github.com/jclement/ef6a53f74a3e6fd02272](https://gist.github.com/jclement/ef6a53f74a3e6fd02272)
A helpful cheat sheet for PKGBUILDs that includes examples of various PKGBUILD fields and usage.
### **Conclusion**
PKGBUILDs are an essential part of working with Snigdha OS and other Arch-based systems. They provide a powerful way to automate the process of building, customizing, and installing software from source code. By understanding how PKGBUILDs work, you can take full control over your software installations, making them more tailored to your specific needs. Additionally, PKGBUILDs ensure consistency, reproducibility, and security in the software build process, making them an indispensable tool for developers and advanced users. Whether youre writing your own PKGBUILD or modifying an existing one, mastering this tool is key to fully utilizing the power of Snigdha OS and Arch-based systems.

View File

@@ -0,0 +1,170 @@
---
sidebar_position: 1
---
# Example
A **PKGBUILD** script is a simple shell script used by Arch-based Linux distributions (such as Snigdha OS) to define how a package is built from source and installed onto the system. Below is an example of a basic **PKGBUILD** script with explanations for each part.
### **Example of a Simple PKGBUILD Script:**
```bash
# Maintainer: Your Name <youremail@example.com>
pkgname=mysoftware
pkgver=1.0
pkgrel=1
pkgdesc="A simple software example"
arch=('x86_64')
url="https://example.com/mysoftware"
license=('GPL')
depends=('glibc')
source=("https://example.com/mysoftware-${pkgver}.tar.gz")
sha256sums=('abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890')
build() {
cd "$srcdir/mysoftware-${pkgver}"
./configure --prefix=/usr
make
}
package() {
cd "$srcdir/mysoftware-${pkgver}"
make DESTDIR="$pkgdir" install
}
```
### **Explanation of the PKGBUILD Components**
1. **pkgname**:
This is the name of the package you're creating. In this example, its set to `mysoftware`. When the package is installed, it will be referred to by this name in the system.
```bash
pkgname=mysoftware
```
2. **pkgver**:
This is the version of the software you're packaging. For example, here we use `pkgver=1.0`, which refers to the first version of the software.
```bash
pkgver=1.0
```
3. **pkgrel**:
This is the release number of the package. If you make changes to the PKGBUILD but don't change the software version (e.g., a patch or configuration change), you would increment this number. For this example, it's set to `pkgrel=1`.
```bash
pkgrel=1
```
4. **pkgdesc**:
A short description of what the software does. In this case, we use `"A simple software example"`, but you should provide a meaningful description relevant to the software.
```bash
pkgdesc="A simple software example"
```
5. **arch**:
This field specifies which architectures the package is compatible with. For most modern systems, youll typically see `arch=('x86_64')`, which supports 64-bit systems. Other options might include `i686` for 32-bit systems.
```bash
arch=('x86_64')
```
6. **url**:
This is the website of the software. It provides users with more information about the software, updates, and support. In the example, we use `"https://example.com/mysoftware"`, but you should replace this with the actual URL of the project.
```bash
url="https://example.com/mysoftware"
```
7. **license**:
The license under which the software is distributed. In this case, we use the `GPL` license. You can check the software's documentation to confirm which license applies.
```bash
license=('GPL')
```
8. **depends**:
This field specifies any dependencies required by the software in order to run. For example, this software depends on `glibc` (the GNU C Library). These dependencies must be installed for the software to run correctly.
```bash
depends=('glibc')
```
9. **source**:
The `source` array defines where to download the source code for the package. In this example, it points to a tarball (`tar.gz`) containing the source code of `mysoftware` at version `1.0`. The source code will be fetched from this URL when you run the `makepkg` command.
```bash
source=("https://example.com/mysoftware-${pkgver}.tar.gz")
```
10. **sha256sums**:
This is a checksum (SHA256) used to verify the integrity of the downloaded source file. This ensures that the source code has not been tampered with. You can generate this checksum using the `sha256sum` command.
```bash
sha256sums=('abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890')
```
### **Build and Package Functions**
The `PKGBUILD` defines two functions: `build()` and `package()`. These functions contain the steps to compile and install the software.
1. **build()**:
This function is responsible for compiling the software. Here, it does the following:
- Changes the directory to the source code folder (`cd "$srcdir/mysoftware-${pkgver}"`).
- Runs the `./configure` command, which prepares the build system, setting the installation prefix (`--prefix=/usr` to install to `/usr/bin`, `/usr/lib`, etc.).
- Runs `make` to compile the source code.
```bash
build() {
cd "$srcdir/mysoftware-${pkgver}"
./configure --prefix=/usr
make
}
```
2. **package()**:
After the software is compiled, the `package()` function installs it into a staging directory (referred to as `$pkgdir`). This step essentially places the compiled software into the appropriate directories (`/usr/bin`, `/usr/lib`, etc.). It uses the `DESTDIR="$pkgdir"` option to specify the installation destination.
```bash
package() {
cd "$srcdir/mysoftware-${pkgver}"
make DESTDIR="$pkgdir" install
}
```
### **Building and Installing the Package**
Once you've created the PKGBUILD file, follow these steps to build and install the software:
1. **Run makepkg**:
In the same directory where the PKGBUILD is located, run the following command to build the package.
```bash
makepkg
```
This will:
- Download the source code from the URL defined in the `source` array.
- Verify the integrity of the source code using the checksum.
- Compile the software as per the `build()` function.
- Package the compiled software into a `.pkg.tar.zst` file.
2. **Install the package**:
After the package is built, use `pacman` to install the package locally. Replace `mysoftware-1.0-1.pkg.tar.zst` with the actual filename generated by `makepkg`.
```bash
sudo pacman -U mysoftware-1.0-1.pkg.tar.zst
```
### **Conclusion**
This example demonstrates the basic structure and components of a PKGBUILD file. By understanding and modifying these fields, you can create your own PKGBUILDs for custom software or modify existing ones to suit your needs. PKGBUILDs provide a powerful way to automate the process of building, installing, and distributing software on Arch-based systems like Snigdha OS.

View File

@@ -0,0 +1,88 @@
---
sidebar_position: 3
---
# Lynxfetch - Snigdha OS
**snigdhaos-lynxfetch** is a package found in the SnigdhaOS PKGBUILD repository. It is a simple and lightweight terminal-based utility designed to fetch and display system information in a visually appealing format. The name **Lynxfetch** suggests that it might have been inspired by the popular system information tool `neofetch`, but with a focus on a minimalist approach, making it a good fit for SnigdhaOS, which values efficiency and simplicity.
### Key Features of snigdhaos-lynxfetch:
1. **System Information Display:**
Just like other system fetch tools, `lynxfetch` is used to display essential information about the system in a clean, readable format. The type of information typically shown includes:
- **System Information:** Includes details about the operating system, kernel version, and architecture.
- **CPU Details:** Information about the processor type, cores, and usage.
- **Memory Usage:** Provides the current memory (RAM) usage, which helps users monitor system resources.
- **Disk Space:** Displays available disk space on mounted partitions.
- **Uptime:** Shows how long the system has been running since the last boot.
2. **Minimalist Design:**
`lynxfetch` is designed to be minimal, meaning it will not overwhelm users with unnecessary details. It aims to present the most important system information in a way that is visually appealing yet simple, making it perfect for users who prefer a clean and lightweight tool.
3. **Customization:**
Even though `lynxfetch` is minimalist, it often allows some level of customization in terms of text colors, formatting, or output structure. This ensures that users can adapt it to their personal preferences, whether they want a bit more flair or a more utilitarian view.
4. **Integration with SnigdhaOS:**
Since `snigdhaos-lynxfetch` is tailored for SnigdhaOS, it is configured to work seamlessly with the system. It is designed to follow the aesthetic and functionality philosophy of SnigdhaOS, making sure it integrates perfectly with the rest of the system tools.
5. **Terminal Usage:**
Like other fetch tools, `lynxfetch` is meant to be run in the terminal. Its a great tool for users who love to monitor system information directly from their command-line interface (CLI) without having to open resource-heavy GUI applications.
6. **Lightweight:**
`lynxfetch` is designed to be efficient and use minimal resources. This makes it a great choice for users of lightweight desktop environments or those looking to keep their system running fast and smooth without sacrificing useful information.
### Example Output:
When you run `lynxfetch` in the terminal, the output might look something like this (format can vary based on user preferences):
```
WK0OO0X whoami@MacGnome
WKOxk0XWNXkxN ---------------
WXOxk0N kk OS: Snigdha OS x86_64
WKkxOXW NxO Host:
NX0ddk00OOOOkkkkkkkkk0 Kernel: Linux 6.6.70-1-lts
WKkxO0dOXXNNNNWWW WXKK Uptime: 1 day, 3 hours, 56 mins
NxkN kxW XOxxdN Packages: 837 (pacman)
KoX WkxX WkxK Xd0 Shell: bash 5.2.37
WxkW XkkX kkW NkxX Display (CMN153B): 1920x1080 @ 60 Hz in 15" [B]
W0dK XxOWkkW XxkN DE: GNOME 47.2
NkxX XoKWkxK Kd0 WM: Mutter (Wayland)
XkkN WOdN NkxX NxO WM Theme: Sweet-Dark
OxNKxOW XdO kk Theme: Sweet-Dark [GTK2/3/4]
kdk0W XoK WXkxN Icons: candy-icons [GTK2/3/4]
WNNXKXXXXKKKK000OOdxkk0X Font: Monaco (11pt) [GTK2/3/4]
KdOO000KKKKXXXXX0xx0W Cursor: Adwaita (24px)
XoK N0kx0N Terminal: GNOME Terminal 3.54.2
Nd0 NKOxOKW Terminal Font: Monaco (12pt)
Nkk0K0kxOKN CPU: 12th Gen Intel(R) Core(TM) i3-1215U (8) @z
WXXXN GPU: Intel UHD Graphics @ 1.10 GHz [Integrated]
Memory: 5.35 GiB / 7.44 GiB (72%)
Swap: 74.25 MiB / 3.72 GiB (2%)
Disk (/): 11.86 GiB / 475.94 GiB (2%) - btrfs
Local IP (wlan0): 192.168.1.69/24
Battery (Primary): 89% [Discharging]
Locale: en_US.UTF-8
```
This simple output displays the key information about the system in a clear and concise manner, with a minimal visual design.
### How to Use snigdhaos-lynxfetch:
Once installed, using `lynxfetch` is straightforward. Open a terminal and type:
```
lynxfetch
```
The system information will be displayed in the terminal window, allowing you to quickly check the status of your systems resources.
### Installation:
Since `snigdhaos-lynxfetch` is available through the SnigdhaOS PKGBUILD repository, you can install it via the package manager (`pacman` or `makepkg`). To install `lynxfetch`, you would typically follow these steps:
1. Clone the repository containing the PKGBUILD for `snigdhaos-lynxfetch`.
2. Navigate to the directory where the PKGBUILD is located.
3. Run the following command to build and install the package:
```
makepkg -si
```
This will download the source, compile the package, and install it on your system.
### Conclusion:
**snigdhaos-lynxfetch** is a lightweight and minimalist tool that provides a simple yet effective way to view essential system information in the terminal. It is designed with SnigdhaOS users in mind and integrates seamlessly with the systems aesthetic and performance goals. Perfect for users who appreciate efficiency, `lynxfetch` is an excellent choice for anyone who wants quick access to system information without the overhead of heavier GUI-based utilities.

View File

@@ -0,0 +1,60 @@
---
sidebar_position: 4
---
# Asian Fonts
**snigdhaos-asian-fonts** is a package found in the SnigdhaOS PKGBUILD repository, aimed at providing essential Asian language font support for SnigdhaOS users. As SnigdhaOS seeks to be a globally accessible operating system, **snigdhaos-asian-fonts** ensures that users who require Asian fonts for proper display of text in languages such as Chinese, Japanese, Korean, and other scripts have access to the necessary font sets.
### Key Features of snigdhaos-asian-fonts:
1. **Asian Language Support:**
The main purpose of **snigdhaos-asian-fonts** is to install a variety of fonts that support Asian scripts. This includes fonts for languages like:
- **Chinese**: Simplified and Traditional Chinese characters.
- **Japanese**: Kana and Kanji characters.
- **Korean**: Hangul characters.
- Other regional scripts as needed.
2. **Wide Range of Fonts:**
The package includes a collection of popular and well-maintained Asian fonts, which are commonly used for proper rendering of text across various applications. These fonts are typically selected for their readability and compatibility with most software environments on Linux-based systems.
3. **Fonts for Different Purposes:**
The fonts included in the **snigdhaos-asian-fonts** package can cater to various needs, whether for:
- **User Interface (UI) Rendering**: Fonts suitable for graphical user interfaces, such as desktop environments and window managers.
- **Document Editing**: Fonts optimized for displaying text in documents, whether for office suites or plain-text editors.
- **Web Browsing**: Fonts that are commonly used for displaying content on websites written in Asian languages.
- **Terminal Usage**: Monospaced fonts that are suitable for use in terminal emulators when working with Asian text.
4. **Improved System Compatibility:**
By installing **snigdhaos-asian-fonts**, users can ensure that their SnigdhaOS system fully supports the display of Asian characters in all software, from system menus to applications and websites. Without these fonts, some applications or websites may fail to render text correctly, displaying unreadable boxes or missing characters.
5. **Integration with SnigdhaOS:**
The fonts provided by this package are carefully selected to integrate well with SnigdhaOS's design and performance standards. SnigdhaOS is an Arch-based distribution, and these fonts are optimized for use with common Linux tools and desktop environments such as GNOME, KDE, and XFCE.
6. **Easy Installation:**
Installing **snigdhaos-asian-fonts** is simple and can be done through the package manager. Once installed, users will have access to a wide range of fonts without needing to manually configure font settings or install individual font packages.
### Example Fonts Included:
The **snigdhaos-asian-fonts** package might include popular and widely-used fonts such as:
- **Noto Sans CJK**: A comprehensive font family that covers Simplified Chinese, Traditional Chinese, Japanese, and Korean.
- **Source Han Sans**: A font family designed for global compatibility, offering support for both Japanese and Chinese characters.
- **Migu 1M**: A Japanese font with good readability for both modern and traditional scripts.
- **UnBatang**: A well-known Korean font that provides clear rendering for Hangul characters.
These fonts are known for their clarity, style, and comprehensive support for characters in various Asian languages, making them a great choice for users in these regions or anyone who works with Asian language content.
### How It Works:
Once **snigdhaos-asian-fonts** is installed, the system will have access to a broad range of Asian fonts that are automatically available for use in any application that requires them. Applications like web browsers (for browsing Chinese, Japanese, or Korean websites), office suites (for working with documents in Asian languages), and text editors (for writing code or content in these languages) will automatically detect and use the appropriate font from the installed package.
### Installation:
Since **snigdhaos-asian-fonts** is available through the SnigdhaOS PKGBUILD repository, it can be installed easily via the package manager. To install the package, follow these steps:
1. Clone the repository containing the **snigdhaos-asian-fonts** PKGBUILD.
2. Navigate to the directory where the PKGBUILD is located.
3. Build and install the package using the following command:
```
makepkg -si
```
This command will download the necessary sources, build the package, and install it onto your system, ensuring that the fonts are correctly configured.
### Conclusion:
**snigdhaos-asian-fonts** is an essential package for SnigdhaOS users who require support for Asian languages. By providing a collection of fonts designed for clear and readable display of characters from scripts such as Chinese, Japanese, and Korean, this package helps ensure that SnigdhaOS users can enjoy a seamless experience when working with Asian text in various applications. Whether you're browsing the web, editing documents, or developing software in an Asian language, **snigdhaos-asian-fonts** provides the font support needed for smooth operation.

View File

@@ -0,0 +1,9 @@
{
"label": "PKGBUILDS",
"position": 2,
"link": {
"type": "generated-index",
"description": "A comprehensive guide to the PKGBUILD scripts used in Snigdha OS. Learn how to create, modify, and maintain PKGBUILDs for building and distributing packages, along with best practices for package management within the Snigdha OS ecosystem."
}
}

View File

@@ -1,8 +0,0 @@
{
"label": "Tutorial - Basics",
"position": 2,
"link": {
"type": "generated-index",
"description": "5 minutes to learn the most important Docusaurus concepts."
}
}

View File

@@ -1,23 +0,0 @@
---
sidebar_position: 6
---
# Congratulations!
You have just learned the **basics of Docusaurus** and made some changes to the **initial template**.
Docusaurus has **much more to offer**!
Have **5 more minutes**? Take a look at **[versioning](../tutorial-extras/manage-docs-versions.md)** and **[i18n](../tutorial-extras/translate-your-site.md)**.
Anything **unclear** or **buggy** in this tutorial? [Please report it!](https://github.com/facebook/docusaurus/discussions/4610)
## What's next?
- Read the [official documentation](https://docusaurus.io/)
- Modify your site configuration with [`docusaurus.config.js`](https://docusaurus.io/docs/api/docusaurus-config)
- Add navbar and footer items with [`themeConfig`](https://docusaurus.io/docs/api/themes/configuration)
- Add a custom [Design and Layout](https://docusaurus.io/docs/styling-layout)
- Add a [search bar](https://docusaurus.io/docs/search)
- Find inspirations in the [Docusaurus showcase](https://docusaurus.io/showcase)
- Get involved in the [Docusaurus Community](https://docusaurus.io/community/support)

View File

@@ -1,34 +0,0 @@
---
sidebar_position: 3
---
# Create a Blog Post
Docusaurus creates a **page for each blog post**, but also a **blog index page**, a **tag system**, an **RSS** feed...
## Create your first Post
Create a file at `blog/2021-02-28-greetings.md`:
```md title="blog/2021-02-28-greetings.md"
---
slug: greetings
title: Greetings!
authors:
- name: Joel Marcey
title: Co-creator of Docusaurus 1
url: https://github.com/JoelMarcey
image_url: https://github.com/JoelMarcey.png
- name: Sébastien Lorber
title: Docusaurus maintainer
url: https://sebastienlorber.com
image_url: https://github.com/slorber.png
tags: [greetings]
---
Congratulations, you have made your first post!
Feel free to play around and edit this post as much as you like.
```
A new blog post is now available at [http://localhost:3000/blog/greetings](http://localhost:3000/blog/greetings).

View File

@@ -1,57 +0,0 @@
---
sidebar_position: 2
---
# Create a Document
Documents are **groups of pages** connected through:
- a **sidebar**
- **previous/next navigation**
- **versioning**
## Create your first Doc
Create a Markdown file at `docs/hello.md`:
```md title="docs/hello.md"
# Hello
This is my **first Docusaurus document**!
```
A new document is now available at [http://localhost:3000/docs/hello](http://localhost:3000/docs/hello).
## Configure the Sidebar
Docusaurus automatically **creates a sidebar** from the `docs` folder.
Add metadata to customize the sidebar label and position:
```md title="docs/hello.md" {1-4}
---
sidebar_label: 'Hi!'
sidebar_position: 3
---
# Hello
This is my **first Docusaurus document**!
```
It is also possible to create your sidebar explicitly in `sidebars.js`:
```js title="sidebars.js"
export default {
tutorialSidebar: [
'intro',
// highlight-next-line
'hello',
{
type: 'category',
label: 'Tutorial',
items: ['tutorial-basics/create-a-document'],
},
],
};
```

View File

@@ -1,43 +0,0 @@
---
sidebar_position: 1
---
# Create a Page
Add **Markdown or React** files to `src/pages` to create a **standalone page**:
- `src/pages/index.js``localhost:3000/`
- `src/pages/foo.md``localhost:3000/foo`
- `src/pages/foo/bar.js``localhost:3000/foo/bar`
## Create your first React Page
Create a file at `src/pages/my-react-page.js`:
```jsx title="src/pages/my-react-page.js"
import React from 'react';
import Layout from '@theme/Layout';
export default function MyReactPage() {
return (
<Layout>
<h1>My React page</h1>
<p>This is a React page</p>
</Layout>
);
}
```
A new page is now available at [http://localhost:3000/my-react-page](http://localhost:3000/my-react-page).
## Create your first Markdown Page
Create a file at `src/pages/my-markdown-page.md`:
```mdx title="src/pages/my-markdown-page.md"
# My Markdown page
This is a Markdown page
```
A new page is now available at [http://localhost:3000/my-markdown-page](http://localhost:3000/my-markdown-page).

View File

@@ -1,31 +0,0 @@
---
sidebar_position: 5
---
# Deploy your site
Docusaurus is a **static-site-generator** (also called **[Jamstack](https://jamstack.org/)**).
It builds your site as simple **static HTML, JavaScript and CSS files**.
## Build your site
Build your site **for production**:
```bash
npm run build
```
The static files are generated in the `build` folder.
## Deploy your site
Test your production build locally:
```bash
npm run serve
```
The `build` folder is now served at [http://localhost:3000/](http://localhost:3000/).
You can now deploy the `build` folder **almost anywhere** easily, **for free** or very small cost (read the **[Deployment Guide](https://docusaurus.io/docs/deployment)**).

View File

@@ -1,152 +0,0 @@
---
sidebar_position: 4
---
# Markdown Features
Docusaurus supports **[Markdown](https://daringfireball.net/projects/markdown/syntax)** and a few **additional features**.
## Front Matter
Markdown documents have metadata at the top called [Front Matter](https://jekyllrb.com/docs/front-matter/):
```text title="my-doc.md"
// highlight-start
---
id: my-doc-id
title: My document title
description: My document description
slug: /my-custom-url
---
// highlight-end
## Markdown heading
Markdown text with [links](./hello.md)
```
## Links
Regular Markdown links are supported, using url paths or relative file paths.
```md
Let's see how to [Create a page](/create-a-page).
```
```md
Let's see how to [Create a page](./create-a-page.md).
```
**Result:** Let's see how to [Create a page](./create-a-page.md).
## Images
Regular Markdown images are supported.
You can use absolute paths to reference images in the static directory (`static/img/docusaurus.png`):
```md
![Docusaurus logo](/img/docusaurus.png)
```
![Docusaurus logo](/img/docusaurus.png)
You can reference images relative to the current file as well. This is particularly useful to colocate images close to the Markdown files using them:
```md
![Docusaurus logo](./img/docusaurus.png)
```
## Code Blocks
Markdown code blocks are supported with Syntax highlighting.
````md
```jsx title="src/components/HelloDocusaurus.js"
function HelloDocusaurus() {
return <h1>Hello, Docusaurus!</h1>;
}
```
````
```jsx title="src/components/HelloDocusaurus.js"
function HelloDocusaurus() {
return <h1>Hello, Docusaurus!</h1>;
}
```
## Admonitions
Docusaurus has a special syntax to create admonitions and callouts:
```md
:::tip My tip
Use this awesome feature option
:::
:::danger Take care
This action is dangerous
:::
```
:::tip My tip
Use this awesome feature option
:::
:::danger Take care
This action is dangerous
:::
## MDX and React Components
[MDX](https://mdxjs.com/) can make your documentation more **interactive** and allows using any **React components inside Markdown**:
```jsx
export const Highlight = ({children, color}) => (
<span
style={{
backgroundColor: color,
borderRadius: '20px',
color: '#fff',
padding: '10px',
cursor: 'pointer',
}}
onClick={() => {
alert(`You clicked the color ${color} with label ${children}`)
}}>
{children}
</span>
);
This is <Highlight color="#25c2a0">Docusaurus green</Highlight> !
This is <Highlight color="#1877F2">Facebook blue</Highlight> !
```
export const Highlight = ({children, color}) => (
<span
style={{
backgroundColor: color,
borderRadius: '20px',
color: '#fff',
padding: '10px',
cursor: 'pointer',
}}
onClick={() => {
alert(`You clicked the color ${color} with label ${children}`);
}}>
{children}
</span>
);
This is <Highlight color="#25c2a0">Docusaurus green</Highlight> !
This is <Highlight color="#1877F2">Facebook blue</Highlight> !

View File

@@ -1,7 +0,0 @@
{
"label": "Tutorial - Extras",
"position": 3,
"link": {
"type": "generated-index"
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 27 KiB

View File

@@ -1,55 +0,0 @@
---
sidebar_position: 1
---
# Manage Docs Versions
Docusaurus can manage multiple versions of your docs.
## Create a docs version
Release a version 1.0 of your project:
```bash
npm run docusaurus docs:version 1.0
```
The `docs` folder is copied into `versioned_docs/version-1.0` and `versions.json` is created.
Your docs now have 2 versions:
- `1.0` at `http://localhost:3000/docs/` for the version 1.0 docs
- `current` at `http://localhost:3000/docs/next/` for the **upcoming, unreleased docs**
## Add a Version Dropdown
To navigate seamlessly across versions, add a version dropdown.
Modify the `docusaurus.config.js` file:
```js title="docusaurus.config.js"
export default {
themeConfig: {
navbar: {
items: [
// highlight-start
{
type: 'docsVersionDropdown',
},
// highlight-end
],
},
},
};
```
The docs version dropdown appears in your navbar:
![Docs Version Dropdown](./img/docsVersionDropdown.png)
## Update an existing version
It is possible to edit versioned docs in their respective folder:
- `versioned_docs/version-1.0/hello.md` updates `http://localhost:3000/docs/hello`
- `docs/hello.md` updates `http://localhost:3000/docs/next/hello`

View File

@@ -1,88 +0,0 @@
---
sidebar_position: 2
---
# Translate your site
Let's translate `docs/intro.md` to French.
## Configure i18n
Modify `docusaurus.config.js` to add support for the `fr` locale:
```js title="docusaurus.config.js"
export default {
i18n: {
defaultLocale: 'en',
locales: ['en', 'fr'],
},
};
```
## Translate a doc
Copy the `docs/intro.md` file to the `i18n/fr` folder:
```bash
mkdir -p i18n/fr/docusaurus-plugin-content-docs/current/
cp docs/intro.md i18n/fr/docusaurus-plugin-content-docs/current/intro.md
```
Translate `i18n/fr/docusaurus-plugin-content-docs/current/intro.md` in French.
## Start your localized site
Start your site on the French locale:
```bash
npm run start -- --locale fr
```
Your localized site is accessible at [http://localhost:3000/fr/](http://localhost:3000/fr/) and the `Getting Started` page is translated.
:::caution
In development, you can only use one locale at a time.
:::
## Add a Locale Dropdown
To navigate seamlessly across languages, add a locale dropdown.
Modify the `docusaurus.config.js` file:
```js title="docusaurus.config.js"
export default {
themeConfig: {
navbar: {
items: [
// highlight-start
{
type: 'localeDropdown',
},
// highlight-end
],
},
},
};
```
The locale dropdown now appears in your navbar:
![Locale Dropdown](./img/localeDropdown.png)
## Build your localized site
Build your site for a specific locale:
```bash
npm run build -- --locale fr
```
Or build your site to include all the locales at once:
```bash
npm run build
```

View File

@@ -10,20 +10,21 @@ import {themes as prismThemes} from 'prism-react-renderer';
/** @type {import('@docusaurus/types').Config} */
const config = {
title: 'DevContrib',
tagline: 'Dev Docs For Snigdha OS Developer',
title: 'SNIGDHA OS | DEVELOPER DOCS',
tagline: 'Comprehensive Documentation for Next-Level Development on Snigdha OS.',
favicon: 'img/favicon.ico',
// Set the production url of your site here
url: 'https://snigdha-os.github.io/',
// Set the /<baseUrl>/ pathname under which your site is served
// For GitHub pages deployment, it is often '/<projectName>/'
baseUrl: '/DevContrib/',
baseUrl: '/snigdhaos-devdocs/',
trailingSlash: false,
// GitHub pages deployment config.
// If you aren't using GitHub pages, you don't need these.
organizationName: 'Snigdha-OS', // Usually your GitHub org/user name.
projectName: 'DevContrib', // Usually your repo name.
projectName: 'snigdhaos-devdocs', // Usually your repo name.
onBrokenLinks: 'throw',
onBrokenMarkdownLinks: 'warn',
@@ -33,7 +34,50 @@ const config = {
// may want to replace "en" with "zh-Hans".
i18n: {
defaultLocale: 'en',
locales: ['en'],
locales: [
'en', // English
'hi', // Hindi
'bn', // Bengali
'te', // Telugu
'mr', // Marathi
'ta', // Tamil
'ur', // Urdu
'gu', // Gujarati
'kn', // Kannada
'ml', // Malayalam
'or', // Odia
'pa', // Punjabi
'as', // Assamese
'ne', // Nepali
'si', // Sinhala
'hy', // Hindi
'ks', // Kashmiri
'sa', // Sanskrit
'bo', // Tibetan
'uk', // Ukrainian
],
localeConfigs: {
en: { label: 'English' },
hi: { label: 'हिन्दी' },
bn: { label: 'বাংলা' },
te: { label: 'తెలుగు' },
mr: { label: 'मराठी' },
ta: { label: 'தமிழ்' },
ur: { label: 'اردو' },
gu: { label: 'ગુજરાતી' },
kn: { label: 'ಕನ್ನಡ' },
ml: { label: 'മലയാളം' },
or: { label: 'ଓଡ଼ିଆ' },
pa: { label: 'ਪੰਜਾਬੀ' },
as: { label: 'অসমীয়া' },
ne: { label: 'नेपाली' },
si: { label: 'සිංහල' },
hy: { label: 'հայերեն' },
ks: { label: 'کشمیر' },
sa: { label: 'संस्कृत' },
bo: { label: 'བོད་ཡིག' },
uk: { label: 'Українська' },
},
},
presets: [
@@ -43,25 +87,12 @@ const config = {
({
docs: {
sidebarPath: './sidebars.js',
sidebarCollapsible: false, // Sidebar items are not collapsible
routeBasePath: '/', // Set docs as the homepage
// Please change this to your repo.
// Remove this to remove the "edit this page" links.
editUrl:
'https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/',
},
blog: {
showReadingTime: true,
feedOptions: {
type: ['rss', 'atom'],
xslt: true,
},
// Please change this to your repo.
// Remove this to remove the "edit this page" links.
editUrl:
'https://github.com/facebook/docusaurus/tree/main/packages/create-docusaurus/templates/shared/',
// Useful options to enforce blogging best practices
onInlineTags: 'warn',
onInlineAuthors: 'warn',
onUntruncatedBlogPosts: 'warn',
'https://github.com/Snigdha-OS/snigdhaos-devdocs/tree/master/',
},
theme: {
customCss: './src/css/custom.css',
@@ -76,21 +107,18 @@ const config = {
// Replace with your project's social card
image: 'img/docusaurus-social-card.jpg',
navbar: {
title: 'DevContrib',
title: 'SNIGDHA OS | DEVELOPER DOCS',
logo: {
alt: 'My Site Logo',
alt: 'Snigdha OS Dev Docs Logo',
src: 'img/logo.svg',
},
items: [
{
type: 'docSidebar',
sidebarId: 'tutorialSidebar',
position: 'left',
label: 'Tutorial',
type: 'localeDropdown', // Language switcher dropdown
position: 'right',
},
{to: '/blog', label: 'Blog', position: 'left'},
{
href: 'https://github.com/facebook/Snigdha-OS',
href: 'https://github.com/Snigdha-OS',
label: 'GitHub',
position: 'right',
},
@@ -98,48 +126,8 @@ const config = {
},
footer: {
style: 'dark',
links: [
{
title: 'Docs',
items: [
{
label: 'Tutorial',
to: '/docs/intro',
},
],
},
{
title: 'Community',
items: [
{
label: 'Stack Overflow',
href: 'https://stackoverflow.com/questions/tagged/docusaurus',
},
{
label: 'Discord',
href: 'https://discordapp.com/invite/docusaurus',
},
{
label: 'X',
href: 'https://x.com/docusaurus',
},
],
},
{
title: 'More',
items: [
{
label: 'Blog',
to: '/blog',
},
{
label: 'GitHub',
href: 'https://github.com/facebook/docusaurus',
},
],
},
],
copyright: `Copyright © ${new Date().getFullYear()} My Project, Inc. Built with Docusaurus.`,
links: [],
copyright: `Copyright © ${new Date().getFullYear()} Snigdha OS. Powered by TONMOY INFRASTRUCTURE.`,
},
prism: {
theme: prismThemes.github,

313
i18n/bn/code.json Normal file
View File

@@ -0,0 +1,313 @@
{
"theme.ErrorPageContent.title": {
"message": "এই পৃষ্ঠাটি ক্র্যাশ করেছে।",
"description": "The title of the fallback page when the page crashed"
},
"theme.BackToTopButton.buttonAriaLabel": {
"message": "শীর্ষে ফিরে যান",
"description": "The ARIA label for the back to top button"
},
"theme.blog.archive.title": {
"message": "আর্কাইভ",
"description": "The page & hero title of the blog archive page"
},
"theme.blog.archive.description": {
"message": "আর্কাইভ",
"description": "The page & hero description of the blog archive page"
},
"theme.blog.paginator.navAriaLabel": {
"message": "ব্লগ তালিকা পৃষ্ঠার নেভিগেশন",
"description": "The ARIA label for the blog pagination"
},
"theme.blog.paginator.newerEntries": {
"message": "নতুন এন্ট্রি",
"description": "The label used to navigate to the newer blog posts page (previous page)"
},
"theme.blog.paginator.olderEntries": {
"message": "পুরানো এন্ট্রি",
"description": "The label used to navigate to the older blog posts page (next page)"
},
"theme.blog.post.paginator.navAriaLabel": {
"message": "ব্লগ পোস্ট পৃষ্ঠার নেভিগেশন",
"description": "The ARIA label for the blog posts pagination"
},
"theme.blog.post.paginator.newerPost": {
"message": "নতুন পোস্ট",
"description": "The blog post button label to navigate to the newer/previous post"
},
"theme.blog.post.paginator.olderPost": {
"message": "পুরানো পোস্ট",
"description": "The blog post button label to navigate to the older/next post"
},
"theme.tags.tagsPageLink": {
"message": "সব ট্যাগ দেখুন",
"description": "The label of the link targeting the tag list page"
},
"theme.colorToggle.ariaLabel": {
"message": "ডার্ক এবং লাইট মোডের মধ্যে সুইচ করুন (বর্তমানে {mode})",
"description": "The ARIA label for the navbar color mode toggle"
},
"theme.colorToggle.ariaLabel.mode.dark": {
"message": "ডার্ক মোড",
"description": "The name for the dark color mode"
},
"theme.colorToggle.ariaLabel.mode.light": {
"message": "লাইট মোড",
"description": "The name for the light color mode"
},
"theme.docs.breadcrumbs.navAriaLabel": {
"message": "ব্রেডক্রাম্ব",
"description": "The ARIA label for the breadcrumbs"
},
"theme.docs.DocCard.categoryDescription.plurals": {
"message": "১টি আইটেম|{count} টি আইটেম",
"description": "The default description for a category card in the generated index about how many items this category includes"
},
"theme.docs.paginator.navAriaLabel": {
"message": "ডক্স পৃষ্ঠার নেভিগেশন",
"description": "The ARIA label for the docs pagination"
},
"theme.docs.paginator.previous": {
"message": "পূর্ববর্তী",
"description": "The label used to navigate to the previous doc"
},
"theme.docs.paginator.next": {
"message": "পরবর্তী",
"description": "The label used to navigate to the next doc"
},
"theme.docs.tagDocListPageTitle.nDocsTagged": {
"message": "১টি ডক ট্যাগড|{count} টি ডক ট্যাগড",
"description": "Pluralized label for \"{count} docs tagged\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
},
"theme.docs.tagDocListPageTitle": {
"message": "{nDocsTagged} এর জন্য ট্যাগ \"{tagName}\"",
"description": "The title of the page for a docs tag"
},
"theme.docs.versionBadge.label": {
"message": "ভার্সন: {versionLabel}"
},
"theme.docs.versions.unreleasedVersionLabel": {
"message": "এটি {siteTitle} {versionLabel} এর জন্য অপ্রকাশিত ডকুমেন্টেশন।",
"description": "The label used to tell the user that he's browsing an unreleased doc version"
},
"theme.docs.versions.unmaintainedVersionLabel": {
"message": "এটি {siteTitle} {versionLabel} এর জন্য ডকুমেন্টেশন, যা আর রক্ষণাবেক্ষণ করা হয় না।",
"description": "The label used to tell the user that he's browsing an unmaintained doc version"
},
"theme.docs.versions.latestVersionSuggestionLabel": {
"message": "সর্বশেষ ডকুমেন্টেশনের জন্য, {latestVersionLink} ({versionLabel}) দেখুন।",
"description": "The label used to tell the user to check the latest version"
},
"theme.docs.versions.latestVersionLinkLabel": {
"message": "সর্বশেষ ভার্সন",
"description": "The label used for the latest version suggestion link label"
},
"theme.common.editThisPage": {
"message": "এই পৃষ্ঠাটি সম্পাদনা করুন",
"description": "The link label to edit the current page"
},
"theme.common.headingLinkTitle": {
"message": "{heading} এর সাথে সরাসরি লিঙ্কড",
"description": "Title for link to heading"
},
"theme.lastUpdated.atDate": {
"message": "{date} তারিখে",
"description": "The words used to describe on which date a page has been last updated"
},
"theme.lastUpdated.byUser": {
"message": "{user} দ্বারা",
"description": "The words used to describe by who the page has been last updated"
},
"theme.lastUpdated.lastUpdatedAtBy": {
"message": "শেষ আপডেট {atDate} {byUser}",
"description": "The sentence used to display when a page has been last updated, and by who"
},
"theme.navbar.mobileVersionsDropdown.label": {
"message": "ভার্সনসমূহ",
"description": "The label for the navbar versions dropdown on mobile view"
},
"theme.NotFound.title": {
"message": "পৃষ্ঠাটি খুঁজে পাওয়া যায়নি",
"description": "The title of the 404 page"
},
"theme.tags.tagsListLabel": {
"message": "ট্যাগ্স:",
"description": "The label alongside a tag list"
},
"theme.admonition.caution": {
"message": "সতর্কতা",
"description": "The default label used for the Caution admonition (:::caution)"
},
"theme.admonition.danger": {
"message": "বিপদ",
"description": "The default label used for the Danger admonition (:::danger)"
},
"theme.admonition.info": {
"message": "তথ্য",
"description": "The default label used for the Info admonition (:::info)"
},
"theme.admonition.note": {
"message": "নোট",
"description": "The default label used for the Note admonition (:::note)"
},
"theme.admonition.tip": {
"message": "পরামর্শ",
"description": "The default label used for the Tip admonition (:::tip)"
},
"theme.admonition.warning": {
"message": "সতর্কীকরণ",
"description": "The default label used for the Warning admonition (:::warning)"
},
"theme.AnnouncementBar.closeButtonAriaLabel": {
"message": "বন্ধ করুন",
"description": "The ARIA label for close button of announcement bar"
},
"theme.blog.sidebar.navAriaLabel": {
"message": "সাম্প্রতিক ব্লগ পোস্ট নেভিগেশন",
"description": "The ARIA label for recent posts in the blog sidebar"
},
"theme.CodeBlock.copied": {
"message": "কপি হয়েছে",
"description": "The copied button label on code blocks"
},
"theme.CodeBlock.copyButtonAriaLabel": {
"message": "ক্লিপবোর্ডে কোড কপি করুন",
"description": "The ARIA label for copy code blocks button"
},
"theme.CodeBlock.copy": {
"message": "কপি",
"description": "The copy button label on code blocks"
},
"theme.CodeBlock.wordWrapToggle": {
"message": "শব্দ মোড়ানোর টগল",
"description": "The title attribute for toggle word wrapping button of code block lines"
},
"theme.DocSidebarItem.expandCategoryAriaLabel": {
"message": "সাইডবার ক্যাটাগরি প্রসারিত করুন '{label}'",
"description": "The ARIA label to expand the sidebar category"
},
"theme.DocSidebarItem.collapseCategoryAriaLabel": {
"message": "সাইডবার ক্যাটাগরি সঙ্কুচিত করুন '{label}'",
"description": "The ARIA label to collapse the sidebar category"
},
"theme.NavBar.navAriaLabel": {
"message": "প্রধান",
"description": "The ARIA label for the main navigation"
},
"theme.navbar.mobileLanguageDropdown.label": {
"message": "ভাষাসমূহ",
"description": "The label for the mobile language switcher dropdown"
},
"theme.NotFound.p1": {
"message": "আপনি যা খুঁজছিলেন তা আমরা খুঁজে পাইনি।",
"description": "The first paragraph of the 404 page"
},
"theme.NotFound.p2": {
"message": "দয়া করে সাইটের মালিকের সাথে যোগাযোগ করুন যা আপনাকে মূল URL এর সাথে যুক্ত করেছে এবং তাদের লিঙ্কটি ভাঙ্গা রয়েছে তা তাদের জানান।",
"description": "The 2nd paragraph of the 404 page"
},
"theme.TOCCollapsible.toggleButtonLabel": {
"message": "এই পেজ এ রয়েছে",
"description": "The label used by the button on the collapsible TOC component"
},
"theme.blog.post.readMore": {
"message": "আরও পড়ুন",
"description": "The label used in blog post item excerpts to link to full blog posts"
},
"theme.blog.post.readMoreLabel": {
"message": "আরও জানুন {title}",
"description": "The ARIA label for the link to full blog posts from excerpts"
},
"theme.blog.post.readingTime.plurals": {
"message": "এক মিনিট পড়া|{readingTime} মিনিট পড়া",
"description": "Pluralized label for \"{readingTime} min read\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
},
"theme.docs.breadcrumbs.home": {
"message": "হোম পেজ",
"description": "The ARIA label for the home page in the breadcrumbs"
},
"theme.docs.sidebar.collapseButtonTitle": {
"message": "সাইডবারটি সঙ্কুচিত করুন",
"description": "The title attribute for collapse button of doc sidebar"
},
"theme.docs.sidebar.collapseButtonAriaLabel": {
"message": "সাইডবারটি সঙ্কুচিত করুন",
"description": "The title attribute for collapse button of doc sidebar"
},
"theme.docs.sidebar.navAriaLabel": {
"message": "ডক্স সাইডবার",
"description": "The ARIA label for the sidebar navigation"
},
"theme.docs.sidebar.closeSidebarButtonAriaLabel": {
"message": "নেভিগেশন বার বন্ধ করুন",
"description": "The ARIA label for close button of mobile sidebar"
},
"theme.navbar.mobileSidebarSecondaryMenu.backButtonLabel": {
"message": "← মেনুতে ফিরে যান",
"description": "The label of the back button to return to main menu, inside the mobile navbar sidebar secondary menu (notably used to display the docs sidebar)"
},
"theme.docs.sidebar.toggleSidebarButtonAriaLabel": {
"message": "নেভিগেশন বার টগল করুন",
"description": "The ARIA label for hamburger menu button of mobile navigation"
},
"theme.docs.sidebar.expandButtonTitle": {
"message": "সাইডবারটি প্রসারিত করুন",
"description": "The ARIA label and title attribute for expand button of doc sidebar"
},
"theme.docs.sidebar.expandButtonAriaLabel": {
"message": "সাইডবারটি প্রসারিত করুন",
"description": "The ARIA label and title attribute for expand button of doc sidebar"
},
"theme.blog.post.plurals": {
"message": "একটি পোস্ট|{count} পোস্ট",
"description": "Pluralized label for \"{count} posts\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
},
"theme.blog.tagTitle": {
"message": "{nPosts} সঙ্গে ট্যাগ করা হয়েছে \"{tagName}\"",
"description": "The title of the page for a blog tag"
},
"theme.blog.author.pageTitle": {
"message": "{authorName} - {nPosts}",
"description": "The title of the page for a blog author"
},
"theme.blog.authorsList.pageTitle": {
"message": "লেখকগণ",
"description": "The title of the authors page"
},
"theme.blog.authorsList.viewAll": {
"message": "সব লেখক দেখুন",
"description": "The label of the link targeting the blog authors page"
},
"theme.blog.author.noPosts": {
"message": "এই লেখক এখনো কোন পোস্ট লেখেননি।",
"description": "The text for authors with 0 blog post"
},
"theme.contentVisibility.unlistedBanner.title": {
"message": "অলিস্টেড পেজ",
"description": "The unlisted content banner title"
},
"theme.contentVisibility.unlistedBanner.message": {
"message": "এই পেজটি অলিস্টেড। সার্চ ইঞ্জিন এটিকে ইনডেক্স করবে না, এবং শুধুমাত্র সরাসরি লিঙ্ক থাকা ব্যবহারকারীরা এটিতে প্রবেশ করতে পারবেন।",
"description": "The unlisted content banner message"
},
"theme.contentVisibility.draftBanner.title": {
"message": "ড্রাফট পেজ",
"description": "The draft content banner title"
},
"theme.contentVisibility.draftBanner.message": {
"message": "এই পেজটি একটি ড্রাফট। এটি শুধুমাত্র ডেভেলপমেন্ট মোডে দৃশ্যমান হবে এবং প্রোডাকশন বিল্ড থেকে বাদ দেওয়া হবে।",
"description": "The draft content banner message"
},
"theme.ErrorPageContent.tryAgain": {
"message": "আবার চেষ্টা করুন",
"description": "The label of the button to try again rendering when the React error boundary captures an error"
},
"theme.common.skipToMainContent": {
"message": "স্কিপ করে মূল কন্টেন্ট এ যান",
"description": "The skip to content label used for accessibility, allowing to rapidly navigate to main content with keyboard tab/enter navigation"
},
"theme.tags.tagsPageTitle": {
"message": "ট্যাগ্স",
"description": "The title of the tag list page"
}
}

View File

@@ -0,0 +1,14 @@
{
"title": {
"message": "ব্লগ",
"description": "The title for the blog used in SEO"
},
"description": {
"message": "ব্লগ",
"description": "The description for the blog used in SEO"
},
"sidebar.title": {
"message": "সাম্প্রতিক পোস্ট",
"description": "The label for the left sidebar"
}
}

View File

@@ -0,0 +1,14 @@
{
"version.label": {
"message": "পরবর্তী",
"description": "The label for version current"
},
"sidebar.tutorialSidebar.category.Introduction": {
"message": "ভূমিকা",
"description": "The label for category Introduction in sidebar tutorialSidebar"
},
"sidebar.tutorialSidebar.category.Introduction.link.generated-index.description": {
"message": "Snigdha OS ডেভেলপার ডকসের একটি প্রারম্ভিক গাইড, যা আপনাকে দ্রুত এবং কার্যকরভাবে শুরু করতে সাহায্য করবে।",
"description": "The generated-index page description for category Introduction in sidebar tutorialSidebar"
}
}

View File

@@ -0,0 +1,6 @@
{
"copyright": {
"message": "কপিরাইট © ২০২৫ স্নিগ্ধা অপারেটিং সিস্টেম। TONMOY INFRASTRUCTURE দ্বারা চালিত।",
"description": "The footer copyright"
}
}

View File

@@ -0,0 +1,14 @@
{
"title": {
"message": "SNIGDHA OS | ডেভেলপার ডকস",
"description": "The title in the navbar"
},
"logo.alt": {
"message": "আমার সাইট লোগো",
"description": "The alt text of navbar logo"
},
"item.label.GitHub": {
"message": "GitHub",
"description": "Navbar item with label GitHub"
}
}

313
i18n/gu/code.json Normal file
View File

@@ -0,0 +1,313 @@
{
"theme.ErrorPageContent.title": {
"message": "This page crashed.",
"description": "The title of the fallback page when the page crashed"
},
"theme.BackToTopButton.buttonAriaLabel": {
"message": "Scroll back to top",
"description": "The ARIA label for the back to top button"
},
"theme.blog.archive.title": {
"message": "Archive",
"description": "The page & hero title of the blog archive page"
},
"theme.blog.archive.description": {
"message": "Archive",
"description": "The page & hero description of the blog archive page"
},
"theme.blog.paginator.navAriaLabel": {
"message": "Blog list page navigation",
"description": "The ARIA label for the blog pagination"
},
"theme.blog.paginator.newerEntries": {
"message": "Newer entries",
"description": "The label used to navigate to the newer blog posts page (previous page)"
},
"theme.blog.paginator.olderEntries": {
"message": "Older entries",
"description": "The label used to navigate to the older blog posts page (next page)"
},
"theme.blog.post.paginator.navAriaLabel": {
"message": "Blog post page navigation",
"description": "The ARIA label for the blog posts pagination"
},
"theme.blog.post.paginator.newerPost": {
"message": "Newer post",
"description": "The blog post button label to navigate to the newer/previous post"
},
"theme.blog.post.paginator.olderPost": {
"message": "Older post",
"description": "The blog post button label to navigate to the older/next post"
},
"theme.tags.tagsPageLink": {
"message": "View all tags",
"description": "The label of the link targeting the tag list page"
},
"theme.colorToggle.ariaLabel": {
"message": "Switch between dark and light mode (currently {mode})",
"description": "The ARIA label for the navbar color mode toggle"
},
"theme.colorToggle.ariaLabel.mode.dark": {
"message": "dark mode",
"description": "The name for the dark color mode"
},
"theme.colorToggle.ariaLabel.mode.light": {
"message": "light mode",
"description": "The name for the light color mode"
},
"theme.docs.breadcrumbs.navAriaLabel": {
"message": "Breadcrumbs",
"description": "The ARIA label for the breadcrumbs"
},
"theme.docs.DocCard.categoryDescription.plurals": {
"message": "1 item|{count} items",
"description": "The default description for a category card in the generated index about how many items this category includes"
},
"theme.docs.paginator.navAriaLabel": {
"message": "Docs pages",
"description": "The ARIA label for the docs pagination"
},
"theme.docs.paginator.previous": {
"message": "Previous",
"description": "The label used to navigate to the previous doc"
},
"theme.docs.paginator.next": {
"message": "Next",
"description": "The label used to navigate to the next doc"
},
"theme.docs.tagDocListPageTitle.nDocsTagged": {
"message": "One doc tagged|{count} docs tagged",
"description": "Pluralized label for \"{count} docs tagged\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
},
"theme.docs.tagDocListPageTitle": {
"message": "{nDocsTagged} with \"{tagName}\"",
"description": "The title of the page for a docs tag"
},
"theme.docs.versionBadge.label": {
"message": "Version: {versionLabel}"
},
"theme.docs.versions.unreleasedVersionLabel": {
"message": "This is unreleased documentation for {siteTitle} {versionLabel} version.",
"description": "The label used to tell the user that he's browsing an unreleased doc version"
},
"theme.docs.versions.unmaintainedVersionLabel": {
"message": "This is documentation for {siteTitle} {versionLabel}, which is no longer actively maintained.",
"description": "The label used to tell the user that he's browsing an unmaintained doc version"
},
"theme.docs.versions.latestVersionSuggestionLabel": {
"message": "For up-to-date documentation, see the {latestVersionLink} ({versionLabel}).",
"description": "The label used to tell the user to check the latest version"
},
"theme.docs.versions.latestVersionLinkLabel": {
"message": "latest version",
"description": "The label used for the latest version suggestion link label"
},
"theme.common.editThisPage": {
"message": "Edit this page",
"description": "The link label to edit the current page"
},
"theme.common.headingLinkTitle": {
"message": "Direct link to {heading}",
"description": "Title for link to heading"
},
"theme.lastUpdated.atDate": {
"message": " on {date}",
"description": "The words used to describe on which date a page has been last updated"
},
"theme.lastUpdated.byUser": {
"message": " by {user}",
"description": "The words used to describe by who the page has been last updated"
},
"theme.lastUpdated.lastUpdatedAtBy": {
"message": "Last updated{atDate}{byUser}",
"description": "The sentence used to display when a page has been last updated, and by who"
},
"theme.navbar.mobileVersionsDropdown.label": {
"message": "Versions",
"description": "The label for the navbar versions dropdown on mobile view"
},
"theme.NotFound.title": {
"message": "Page Not Found",
"description": "The title of the 404 page"
},
"theme.tags.tagsListLabel": {
"message": "Tags:",
"description": "The label alongside a tag list"
},
"theme.admonition.caution": {
"message": "caution",
"description": "The default label used for the Caution admonition (:::caution)"
},
"theme.admonition.danger": {
"message": "danger",
"description": "The default label used for the Danger admonition (:::danger)"
},
"theme.admonition.info": {
"message": "info",
"description": "The default label used for the Info admonition (:::info)"
},
"theme.admonition.note": {
"message": "note",
"description": "The default label used for the Note admonition (:::note)"
},
"theme.admonition.tip": {
"message": "tip",
"description": "The default label used for the Tip admonition (:::tip)"
},
"theme.admonition.warning": {
"message": "warning",
"description": "The default label used for the Warning admonition (:::warning)"
},
"theme.AnnouncementBar.closeButtonAriaLabel": {
"message": "Close",
"description": "The ARIA label for close button of announcement bar"
},
"theme.blog.sidebar.navAriaLabel": {
"message": "Blog recent posts navigation",
"description": "The ARIA label for recent posts in the blog sidebar"
},
"theme.CodeBlock.copied": {
"message": "Copied",
"description": "The copied button label on code blocks"
},
"theme.CodeBlock.copyButtonAriaLabel": {
"message": "Copy code to clipboard",
"description": "The ARIA label for copy code blocks button"
},
"theme.CodeBlock.copy": {
"message": "Copy",
"description": "The copy button label on code blocks"
},
"theme.CodeBlock.wordWrapToggle": {
"message": "Toggle word wrap",
"description": "The title attribute for toggle word wrapping button of code block lines"
},
"theme.DocSidebarItem.expandCategoryAriaLabel": {
"message": "Expand sidebar category '{label}'",
"description": "The ARIA label to expand the sidebar category"
},
"theme.DocSidebarItem.collapseCategoryAriaLabel": {
"message": "Collapse sidebar category '{label}'",
"description": "The ARIA label to collapse the sidebar category"
},
"theme.NavBar.navAriaLabel": {
"message": "Main",
"description": "The ARIA label for the main navigation"
},
"theme.navbar.mobileLanguageDropdown.label": {
"message": "Languages",
"description": "The label for the mobile language switcher dropdown"
},
"theme.NotFound.p1": {
"message": "We could not find what you were looking for.",
"description": "The first paragraph of the 404 page"
},
"theme.NotFound.p2": {
"message": "Please contact the owner of the site that linked you to the original URL and let them know their link is broken.",
"description": "The 2nd paragraph of the 404 page"
},
"theme.TOCCollapsible.toggleButtonLabel": {
"message": "On this page",
"description": "The label used by the button on the collapsible TOC component"
},
"theme.blog.post.readMore": {
"message": "Read more",
"description": "The label used in blog post item excerpts to link to full blog posts"
},
"theme.blog.post.readMoreLabel": {
"message": "Read more about {title}",
"description": "The ARIA label for the link to full blog posts from excerpts"
},
"theme.blog.post.readingTime.plurals": {
"message": "One min read|{readingTime} min read",
"description": "Pluralized label for \"{readingTime} min read\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
},
"theme.docs.breadcrumbs.home": {
"message": "Home page",
"description": "The ARIA label for the home page in the breadcrumbs"
},
"theme.docs.sidebar.collapseButtonTitle": {
"message": "Collapse sidebar",
"description": "The title attribute for collapse button of doc sidebar"
},
"theme.docs.sidebar.collapseButtonAriaLabel": {
"message": "Collapse sidebar",
"description": "The title attribute for collapse button of doc sidebar"
},
"theme.docs.sidebar.navAriaLabel": {
"message": "Docs sidebar",
"description": "The ARIA label for the sidebar navigation"
},
"theme.docs.sidebar.closeSidebarButtonAriaLabel": {
"message": "Close navigation bar",
"description": "The ARIA label for close button of mobile sidebar"
},
"theme.navbar.mobileSidebarSecondaryMenu.backButtonLabel": {
"message": "← Back to main menu",
"description": "The label of the back button to return to main menu, inside the mobile navbar sidebar secondary menu (notably used to display the docs sidebar)"
},
"theme.docs.sidebar.toggleSidebarButtonAriaLabel": {
"message": "Toggle navigation bar",
"description": "The ARIA label for hamburger menu button of mobile navigation"
},
"theme.docs.sidebar.expandButtonTitle": {
"message": "Expand sidebar",
"description": "The ARIA label and title attribute for expand button of doc sidebar"
},
"theme.docs.sidebar.expandButtonAriaLabel": {
"message": "Expand sidebar",
"description": "The ARIA label and title attribute for expand button of doc sidebar"
},
"theme.blog.post.plurals": {
"message": "One post|{count} posts",
"description": "Pluralized label for \"{count} posts\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
},
"theme.blog.tagTitle": {
"message": "{nPosts} tagged with \"{tagName}\"",
"description": "The title of the page for a blog tag"
},
"theme.blog.author.pageTitle": {
"message": "{authorName} - {nPosts}",
"description": "The title of the page for a blog author"
},
"theme.blog.authorsList.pageTitle": {
"message": "Authors",
"description": "The title of the authors page"
},
"theme.blog.authorsList.viewAll": {
"message": "View all authors",
"description": "The label of the link targeting the blog authors page"
},
"theme.blog.author.noPosts": {
"message": "This author has not written any posts yet.",
"description": "The text for authors with 0 blog post"
},
"theme.contentVisibility.unlistedBanner.title": {
"message": "Unlisted page",
"description": "The unlisted content banner title"
},
"theme.contentVisibility.unlistedBanner.message": {
"message": "This page is unlisted. Search engines will not index it, and only users having a direct link can access it.",
"description": "The unlisted content banner message"
},
"theme.contentVisibility.draftBanner.title": {
"message": "Draft page",
"description": "The draft content banner title"
},
"theme.contentVisibility.draftBanner.message": {
"message": "This page is a draft. It will only be visible in dev and be excluded from the production build.",
"description": "The draft content banner message"
},
"theme.ErrorPageContent.tryAgain": {
"message": "Try again",
"description": "The label of the button to try again rendering when the React error boundary captures an error"
},
"theme.common.skipToMainContent": {
"message": "Skip to main content",
"description": "The skip to content label used for accessibility, allowing to rapidly navigate to main content with keyboard tab/enter navigation"
},
"theme.tags.tagsPageTitle": {
"message": "Tags",
"description": "The title of the tag list page"
}
}

View File

@@ -0,0 +1,14 @@
{
"title": {
"message": "Blog",
"description": "The title for the blog used in SEO"
},
"description": {
"message": "Blog",
"description": "The description for the blog used in SEO"
},
"sidebar.title": {
"message": "Recent posts",
"description": "The label for the left sidebar"
}
}

View File

@@ -0,0 +1,14 @@
{
"version.label": {
"message": "Next",
"description": "The label for version current"
},
"sidebar.tutorialSidebar.category.Introduction": {
"message": "Introduction",
"description": "The label for category Introduction in sidebar tutorialSidebar"
},
"sidebar.tutorialSidebar.category.Introduction.link.generated-index.description": {
"message": "An introductory guide to Snigdha OS Developer Docs, covering the basics to get you started quickly and effectively.",
"description": "The generated-index page description for category Introduction in sidebar tutorialSidebar"
}
}

View File

@@ -0,0 +1,6 @@
{
"copyright": {
"message": "Copyright © 2025 Snigdha OS. Powered by TONMOY INFRASTRUCTURE.",
"description": "The footer copyright"
}
}

View File

@@ -0,0 +1,14 @@
{
"title": {
"message": "SNIGDHA OS | DEVELOPER DOCS",
"description": "The title in the navbar"
},
"logo.alt": {
"message": "My Site Logo",
"description": "The alt text of navbar logo"
},
"item.label.GitHub": {
"message": "GitHub",
"description": "Navbar item with label GitHub"
}
}

313
i18n/hi/code.json Normal file
View File

@@ -0,0 +1,313 @@
{
"theme.ErrorPageContent.title": {
"message": "This page crashed.",
"description": "The title of the fallback page when the page crashed"
},
"theme.BackToTopButton.buttonAriaLabel": {
"message": "Scroll back to top",
"description": "The ARIA label for the back to top button"
},
"theme.blog.archive.title": {
"message": "Archive",
"description": "The page & hero title of the blog archive page"
},
"theme.blog.archive.description": {
"message": "Archive",
"description": "The page & hero description of the blog archive page"
},
"theme.blog.paginator.navAriaLabel": {
"message": "ब्लॉग सूची पेज नेविगेशन",
"description": "The ARIA label for the blog pagination"
},
"theme.blog.paginator.newerEntries": {
"message": "नए एंट्रीज़",
"description": "The label used to navigate to the newer blog posts page (previous page)"
},
"theme.blog.paginator.olderEntries": {
"message": "पुराने एंट्रीज़",
"description": "The label used to navigate to the older blog posts page (next page)"
},
"theme.blog.post.paginator.navAriaLabel": {
"message": "ब्लॉग पोस्ट पेज नेविगेशन",
"description": "The ARIA label for the blog posts pagination"
},
"theme.blog.post.paginator.newerPost": {
"message": "नए पोस्ट",
"description": "The blog post button label to navigate to the newer/previous post"
},
"theme.blog.post.paginator.olderPost": {
"message": "पुराने पोस्ट",
"description": "The blog post button label to navigate to the older/next post"
},
"theme.tags.tagsPageLink": {
"message": "सारे टैग देखें",
"description": "The label of the link targeting the tag list page"
},
"theme.colorToggle.ariaLabel": {
"message": "Switch between dark and light mode (currently {mode})",
"description": "The ARIA label for the navbar color mode toggle"
},
"theme.colorToggle.ariaLabel.mode.dark": {
"message": "dark mode",
"description": "The name for the dark color mode"
},
"theme.colorToggle.ariaLabel.mode.light": {
"message": "light mode",
"description": "The name for the light color mode"
},
"theme.docs.breadcrumbs.navAriaLabel": {
"message": "Breadcrumbs",
"description": "The ARIA label for the breadcrumbs"
},
"theme.docs.DocCard.categoryDescription.plurals": {
"message": "1 item|{count} items",
"description": "The default description for a category card in the generated index about how many items this category includes"
},
"theme.docs.paginator.navAriaLabel": {
"message": "डॉक्स पेज",
"description": "The ARIA label for the docs pagination"
},
"theme.docs.paginator.previous": {
"message": "पिछ्ला",
"description": "The label used to navigate to the previous doc"
},
"theme.docs.paginator.next": {
"message": "अगला",
"description": "The label used to navigate to the next doc"
},
"theme.docs.tagDocListPageTitle.nDocsTagged": {
"message": "One doc tagged|{count} docs tagged",
"description": "Pluralized label for \"{count} docs tagged\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
},
"theme.docs.tagDocListPageTitle": {
"message": "{nDocsTagged} with \"{tagName}\"",
"description": "The title of the page for a docs tag"
},
"theme.docs.versionBadge.label": {
"message": "Version: {versionLabel}"
},
"theme.docs.versions.unreleasedVersionLabel": {
"message": "यह {siteTitle} {versionLabel} वर्जन के लिए प्रकाशित डॉक्यूमेंटेशन है।",
"description": "The label used to tell the user that he's browsing an unreleased doc version"
},
"theme.docs.versions.unmaintainedVersionLabel": {
"message": "यह {siteTitle} {versionLabel} के लिए डॉक्यूमेंटेशन है, जिसे अब सक्रिय रूप से नहीं बनाए रखा गया है।",
"description": "The label used to tell the user that he's browsing an unmaintained doc version"
},
"theme.docs.versions.latestVersionSuggestionLabel": {
"message": "अप-टू-डेट डॉक्यूमेंटेशन के लिए {latestVersionLink} ({versionLabel}) देखें।",
"description": "The label used to tell the user to check the latest version"
},
"theme.docs.versions.latestVersionLinkLabel": {
"message": "सबसे नया वर्जन",
"description": "The label used for the latest version suggestion link label"
},
"theme.common.editThisPage": {
"message": "इस पेज को बदलें",
"description": "The link label to edit the current page"
},
"theme.common.headingLinkTitle": {
"message": "{heading} का सीधा लिंक",
"description": "Title for link to heading"
},
"theme.lastUpdated.atDate": {
"message": " {date} पर",
"description": "The words used to describe on which date a page has been last updated"
},
"theme.lastUpdated.byUser": {
"message": " {user} द्वारा",
"description": "The words used to describe by who the page has been last updated"
},
"theme.lastUpdated.lastUpdatedAtBy": {
"message": "आखरी अपडेट{atDate}{byUser}",
"description": "The sentence used to display when a page has been last updated, and by who"
},
"theme.navbar.mobileVersionsDropdown.label": {
"message": "Versions",
"description": "The label for the navbar versions dropdown on mobile view"
},
"theme.NotFound.title": {
"message": "पेज नहीं मिला",
"description": "The title of the 404 page"
},
"theme.tags.tagsListLabel": {
"message": "टैग:",
"description": "The label alongside a tag list"
},
"theme.admonition.caution": {
"message": "caution",
"description": "The default label used for the Caution admonition (:::caution)"
},
"theme.admonition.danger": {
"message": "danger",
"description": "The default label used for the Danger admonition (:::danger)"
},
"theme.admonition.info": {
"message": "info",
"description": "The default label used for the Info admonition (:::info)"
},
"theme.admonition.note": {
"message": "note",
"description": "The default label used for the Note admonition (:::note)"
},
"theme.admonition.tip": {
"message": "tip",
"description": "The default label used for the Tip admonition (:::tip)"
},
"theme.admonition.warning": {
"message": "warning",
"description": "The default label used for the Warning admonition (:::warning)"
},
"theme.AnnouncementBar.closeButtonAriaLabel": {
"message": "बंद करे",
"description": "The ARIA label for close button of announcement bar"
},
"theme.blog.sidebar.navAriaLabel": {
"message": "नया ब्लॉग पोस्ट नेविगेशन",
"description": "The ARIA label for recent posts in the blog sidebar"
},
"theme.CodeBlock.copied": {
"message": "कॉपीड",
"description": "The copied button label on code blocks"
},
"theme.CodeBlock.copyButtonAriaLabel": {
"message": "क्लिपबोर्ड पर कोड कॉपी करें",
"description": "The ARIA label for copy code blocks button"
},
"theme.CodeBlock.copy": {
"message": "कॉपी",
"description": "The copy button label on code blocks"
},
"theme.CodeBlock.wordWrapToggle": {
"message": "Toggle word wrap",
"description": "The title attribute for toggle word wrapping button of code block lines"
},
"theme.DocSidebarItem.expandCategoryAriaLabel": {
"message": "Expand sidebar category '{label}'",
"description": "The ARIA label to expand the sidebar category"
},
"theme.DocSidebarItem.collapseCategoryAriaLabel": {
"message": "Collapse sidebar category '{label}'",
"description": "The ARIA label to collapse the sidebar category"
},
"theme.NavBar.navAriaLabel": {
"message": "Main",
"description": "The ARIA label for the main navigation"
},
"theme.navbar.mobileLanguageDropdown.label": {
"message": "Languages",
"description": "The label for the mobile language switcher dropdown"
},
"theme.NotFound.p1": {
"message": "हमें वह नहीं मिला, जिसकी आपको तलाश थी।",
"description": "The first paragraph of the 404 page"
},
"theme.NotFound.p2": {
"message": "कृपया उस साइट के मालिक से संपर्क करें जिसने आपको मूल URL से जोड़ा है और उन्हें बताएं कि उनका लिंक टूट गया है।",
"description": "The 2nd paragraph of the 404 page"
},
"theme.TOCCollapsible.toggleButtonLabel": {
"message": "इस पेज पर",
"description": "The label used by the button on the collapsible TOC component"
},
"theme.blog.post.readMore": {
"message": "और पढ़ें",
"description": "The label used in blog post item excerpts to link to full blog posts"
},
"theme.blog.post.readMoreLabel": {
"message": "Read more about {title}",
"description": "The ARIA label for the link to full blog posts from excerpts"
},
"theme.blog.post.readingTime.plurals": {
"message": "एक मिनट में पढ़ें|{readingTime} मिनट में पढ़ें",
"description": "Pluralized label for \"{readingTime} min read\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
},
"theme.docs.breadcrumbs.home": {
"message": "Home page",
"description": "The ARIA label for the home page in the breadcrumbs"
},
"theme.docs.sidebar.collapseButtonTitle": {
"message": "साइडबार बंद करें",
"description": "The title attribute for collapse button of doc sidebar"
},
"theme.docs.sidebar.collapseButtonAriaLabel": {
"message": "साइडबार बंद करें",
"description": "The title attribute for collapse button of doc sidebar"
},
"theme.docs.sidebar.navAriaLabel": {
"message": "Docs sidebar",
"description": "The ARIA label for the sidebar navigation"
},
"theme.docs.sidebar.closeSidebarButtonAriaLabel": {
"message": "Close navigation bar",
"description": "The ARIA label for close button of mobile sidebar"
},
"theme.navbar.mobileSidebarSecondaryMenu.backButtonLabel": {
"message": "← मुख्य मेनू में वापस जाएं",
"description": "The label of the back button to return to main menu, inside the mobile navbar sidebar secondary menu (notably used to display the docs sidebar)"
},
"theme.docs.sidebar.toggleSidebarButtonAriaLabel": {
"message": "Toggle navigation bar",
"description": "The ARIA label for hamburger menu button of mobile navigation"
},
"theme.docs.sidebar.expandButtonTitle": {
"message": "साइडबार खोलें",
"description": "The ARIA label and title attribute for expand button of doc sidebar"
},
"theme.docs.sidebar.expandButtonAriaLabel": {
"message": "साइडबार खोलें",
"description": "The ARIA label and title attribute for expand button of doc sidebar"
},
"theme.blog.post.plurals": {
"message": "एक पोस्ट|{count} पोस्ट",
"description": "Pluralized label for \"{count} posts\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
},
"theme.blog.tagTitle": {
"message": "{nPosts} पोस्ट \"{tagName}\" टैग के साथ",
"description": "The title of the page for a blog tag"
},
"theme.blog.author.pageTitle": {
"message": "{authorName} - {nPosts}",
"description": "The title of the page for a blog author"
},
"theme.blog.authorsList.pageTitle": {
"message": "Authors",
"description": "The title of the authors page"
},
"theme.blog.authorsList.viewAll": {
"message": "View All Authors",
"description": "The label of the link targeting the blog authors page"
},
"theme.blog.author.noPosts": {
"message": "This author has not written any posts yet.",
"description": "The text for authors with 0 blog post"
},
"theme.contentVisibility.unlistedBanner.title": {
"message": "Unlisted page",
"description": "The unlisted content banner title"
},
"theme.contentVisibility.unlistedBanner.message": {
"message": "This page is unlisted. Search engines will not index it, and only users having a direct link can access it.",
"description": "The unlisted content banner message"
},
"theme.contentVisibility.draftBanner.title": {
"message": "Draft page",
"description": "The draft content banner title"
},
"theme.contentVisibility.draftBanner.message": {
"message": "This page is a draft. It will only be visible in dev and be excluded from the production build.",
"description": "The draft content banner message"
},
"theme.ErrorPageContent.tryAgain": {
"message": "Try again",
"description": "The label of the button to try again rendering when the React error boundary captures an error"
},
"theme.common.skipToMainContent": {
"message": "मुख्य कंटेंट तक स्किप करें",
"description": "The skip to content label used for accessibility, allowing to rapidly navigate to main content with keyboard tab/enter navigation"
},
"theme.tags.tagsPageTitle": {
"message": "टैग",
"description": "The title of the tag list page"
}
}

View File

@@ -0,0 +1,14 @@
{
"title": {
"message": "Blog",
"description": "The title for the blog used in SEO"
},
"description": {
"message": "Blog",
"description": "The description for the blog used in SEO"
},
"sidebar.title": {
"message": "Recent posts",
"description": "The label for the left sidebar"
}
}

View File

@@ -0,0 +1,14 @@
{
"version.label": {
"message": "Next",
"description": "The label for version current"
},
"sidebar.tutorialSidebar.category.Introduction": {
"message": "Introduction",
"description": "The label for category Introduction in sidebar tutorialSidebar"
},
"sidebar.tutorialSidebar.category.Introduction.link.generated-index.description": {
"message": "An introductory guide to Snigdha OS Developer Docs, covering the basics to get you started quickly and effectively.",
"description": "The generated-index page description for category Introduction in sidebar tutorialSidebar"
}
}

View File

@@ -0,0 +1,6 @@
{
"copyright": {
"message": "Copyright © 2025 Snigdha OS. Powered by TONMOY INFRASTRUCTURE.",
"description": "The footer copyright"
}
}

View File

@@ -0,0 +1,14 @@
{
"title": {
"message": "SNIGDHA OS | DEVELOPER DOCS",
"description": "The title in the navbar"
},
"logo.alt": {
"message": "My Site Logo",
"description": "The alt text of navbar logo"
},
"item.label.GitHub": {
"message": "GitHub",
"description": "Navbar item with label GitHub"
}
}

313
i18n/mr/code.json Normal file
View File

@@ -0,0 +1,313 @@
{
"theme.ErrorPageContent.title": {
"message": "This page crashed.",
"description": "The title of the fallback page when the page crashed"
},
"theme.BackToTopButton.buttonAriaLabel": {
"message": "Scroll back to top",
"description": "The ARIA label for the back to top button"
},
"theme.blog.archive.title": {
"message": "Archive",
"description": "The page & hero title of the blog archive page"
},
"theme.blog.archive.description": {
"message": "Archive",
"description": "The page & hero description of the blog archive page"
},
"theme.blog.paginator.navAriaLabel": {
"message": "Blog list page navigation",
"description": "The ARIA label for the blog pagination"
},
"theme.blog.paginator.newerEntries": {
"message": "Newer entries",
"description": "The label used to navigate to the newer blog posts page (previous page)"
},
"theme.blog.paginator.olderEntries": {
"message": "Older entries",
"description": "The label used to navigate to the older blog posts page (next page)"
},
"theme.blog.post.paginator.navAriaLabel": {
"message": "Blog post page navigation",
"description": "The ARIA label for the blog posts pagination"
},
"theme.blog.post.paginator.newerPost": {
"message": "Newer post",
"description": "The blog post button label to navigate to the newer/previous post"
},
"theme.blog.post.paginator.olderPost": {
"message": "Older post",
"description": "The blog post button label to navigate to the older/next post"
},
"theme.tags.tagsPageLink": {
"message": "View all tags",
"description": "The label of the link targeting the tag list page"
},
"theme.colorToggle.ariaLabel": {
"message": "Switch between dark and light mode (currently {mode})",
"description": "The ARIA label for the navbar color mode toggle"
},
"theme.colorToggle.ariaLabel.mode.dark": {
"message": "dark mode",
"description": "The name for the dark color mode"
},
"theme.colorToggle.ariaLabel.mode.light": {
"message": "light mode",
"description": "The name for the light color mode"
},
"theme.docs.breadcrumbs.navAriaLabel": {
"message": "Breadcrumbs",
"description": "The ARIA label for the breadcrumbs"
},
"theme.docs.DocCard.categoryDescription.plurals": {
"message": "1 item|{count} items",
"description": "The default description for a category card in the generated index about how many items this category includes"
},
"theme.docs.paginator.navAriaLabel": {
"message": "Docs pages",
"description": "The ARIA label for the docs pagination"
},
"theme.docs.paginator.previous": {
"message": "Previous",
"description": "The label used to navigate to the previous doc"
},
"theme.docs.paginator.next": {
"message": "Next",
"description": "The label used to navigate to the next doc"
},
"theme.docs.tagDocListPageTitle.nDocsTagged": {
"message": "One doc tagged|{count} docs tagged",
"description": "Pluralized label for \"{count} docs tagged\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
},
"theme.docs.tagDocListPageTitle": {
"message": "{nDocsTagged} with \"{tagName}\"",
"description": "The title of the page for a docs tag"
},
"theme.docs.versionBadge.label": {
"message": "Version: {versionLabel}"
},
"theme.docs.versions.unreleasedVersionLabel": {
"message": "This is unreleased documentation for {siteTitle} {versionLabel} version.",
"description": "The label used to tell the user that he's browsing an unreleased doc version"
},
"theme.docs.versions.unmaintainedVersionLabel": {
"message": "This is documentation for {siteTitle} {versionLabel}, which is no longer actively maintained.",
"description": "The label used to tell the user that he's browsing an unmaintained doc version"
},
"theme.docs.versions.latestVersionSuggestionLabel": {
"message": "For up-to-date documentation, see the {latestVersionLink} ({versionLabel}).",
"description": "The label used to tell the user to check the latest version"
},
"theme.docs.versions.latestVersionLinkLabel": {
"message": "latest version",
"description": "The label used for the latest version suggestion link label"
},
"theme.common.editThisPage": {
"message": "Edit this page",
"description": "The link label to edit the current page"
},
"theme.common.headingLinkTitle": {
"message": "Direct link to {heading}",
"description": "Title for link to heading"
},
"theme.lastUpdated.atDate": {
"message": " on {date}",
"description": "The words used to describe on which date a page has been last updated"
},
"theme.lastUpdated.byUser": {
"message": " by {user}",
"description": "The words used to describe by who the page has been last updated"
},
"theme.lastUpdated.lastUpdatedAtBy": {
"message": "Last updated{atDate}{byUser}",
"description": "The sentence used to display when a page has been last updated, and by who"
},
"theme.navbar.mobileVersionsDropdown.label": {
"message": "Versions",
"description": "The label for the navbar versions dropdown on mobile view"
},
"theme.NotFound.title": {
"message": "Page Not Found",
"description": "The title of the 404 page"
},
"theme.tags.tagsListLabel": {
"message": "Tags:",
"description": "The label alongside a tag list"
},
"theme.admonition.caution": {
"message": "caution",
"description": "The default label used for the Caution admonition (:::caution)"
},
"theme.admonition.danger": {
"message": "danger",
"description": "The default label used for the Danger admonition (:::danger)"
},
"theme.admonition.info": {
"message": "info",
"description": "The default label used for the Info admonition (:::info)"
},
"theme.admonition.note": {
"message": "note",
"description": "The default label used for the Note admonition (:::note)"
},
"theme.admonition.tip": {
"message": "tip",
"description": "The default label used for the Tip admonition (:::tip)"
},
"theme.admonition.warning": {
"message": "warning",
"description": "The default label used for the Warning admonition (:::warning)"
},
"theme.AnnouncementBar.closeButtonAriaLabel": {
"message": "Close",
"description": "The ARIA label for close button of announcement bar"
},
"theme.blog.sidebar.navAriaLabel": {
"message": "Blog recent posts navigation",
"description": "The ARIA label for recent posts in the blog sidebar"
},
"theme.CodeBlock.copied": {
"message": "Copied",
"description": "The copied button label on code blocks"
},
"theme.CodeBlock.copyButtonAriaLabel": {
"message": "Copy code to clipboard",
"description": "The ARIA label for copy code blocks button"
},
"theme.CodeBlock.copy": {
"message": "Copy",
"description": "The copy button label on code blocks"
},
"theme.CodeBlock.wordWrapToggle": {
"message": "Toggle word wrap",
"description": "The title attribute for toggle word wrapping button of code block lines"
},
"theme.DocSidebarItem.expandCategoryAriaLabel": {
"message": "Expand sidebar category '{label}'",
"description": "The ARIA label to expand the sidebar category"
},
"theme.DocSidebarItem.collapseCategoryAriaLabel": {
"message": "Collapse sidebar category '{label}'",
"description": "The ARIA label to collapse the sidebar category"
},
"theme.NavBar.navAriaLabel": {
"message": "Main",
"description": "The ARIA label for the main navigation"
},
"theme.navbar.mobileLanguageDropdown.label": {
"message": "Languages",
"description": "The label for the mobile language switcher dropdown"
},
"theme.NotFound.p1": {
"message": "We could not find what you were looking for.",
"description": "The first paragraph of the 404 page"
},
"theme.NotFound.p2": {
"message": "Please contact the owner of the site that linked you to the original URL and let them know their link is broken.",
"description": "The 2nd paragraph of the 404 page"
},
"theme.TOCCollapsible.toggleButtonLabel": {
"message": "On this page",
"description": "The label used by the button on the collapsible TOC component"
},
"theme.blog.post.readMore": {
"message": "Read more",
"description": "The label used in blog post item excerpts to link to full blog posts"
},
"theme.blog.post.readMoreLabel": {
"message": "Read more about {title}",
"description": "The ARIA label for the link to full blog posts from excerpts"
},
"theme.blog.post.readingTime.plurals": {
"message": "One min read|{readingTime} min read",
"description": "Pluralized label for \"{readingTime} min read\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
},
"theme.docs.breadcrumbs.home": {
"message": "Home page",
"description": "The ARIA label for the home page in the breadcrumbs"
},
"theme.docs.sidebar.collapseButtonTitle": {
"message": "Collapse sidebar",
"description": "The title attribute for collapse button of doc sidebar"
},
"theme.docs.sidebar.collapseButtonAriaLabel": {
"message": "Collapse sidebar",
"description": "The title attribute for collapse button of doc sidebar"
},
"theme.docs.sidebar.navAriaLabel": {
"message": "Docs sidebar",
"description": "The ARIA label for the sidebar navigation"
},
"theme.docs.sidebar.closeSidebarButtonAriaLabel": {
"message": "Close navigation bar",
"description": "The ARIA label for close button of mobile sidebar"
},
"theme.docs.sidebar.toggleSidebarButtonAriaLabel": {
"message": "Toggle navigation bar",
"description": "The ARIA label for hamburger menu button of mobile navigation"
},
"theme.navbar.mobileSidebarSecondaryMenu.backButtonLabel": {
"message": "← Back to main menu",
"description": "The label of the back button to return to main menu, inside the mobile navbar sidebar secondary menu (notably used to display the docs sidebar)"
},
"theme.docs.sidebar.expandButtonTitle": {
"message": "Expand sidebar",
"description": "The ARIA label and title attribute for expand button of doc sidebar"
},
"theme.docs.sidebar.expandButtonAriaLabel": {
"message": "Expand sidebar",
"description": "The ARIA label and title attribute for expand button of doc sidebar"
},
"theme.blog.post.plurals": {
"message": "One post|{count} posts",
"description": "Pluralized label for \"{count} posts\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
},
"theme.blog.tagTitle": {
"message": "{nPosts} tagged with \"{tagName}\"",
"description": "The title of the page for a blog tag"
},
"theme.blog.author.pageTitle": {
"message": "{authorName} - {nPosts}",
"description": "The title of the page for a blog author"
},
"theme.blog.authorsList.pageTitle": {
"message": "Authors",
"description": "The title of the authors page"
},
"theme.blog.authorsList.viewAll": {
"message": "View all authors",
"description": "The label of the link targeting the blog authors page"
},
"theme.blog.author.noPosts": {
"message": "This author has not written any posts yet.",
"description": "The text for authors with 0 blog post"
},
"theme.contentVisibility.unlistedBanner.title": {
"message": "Unlisted page",
"description": "The unlisted content banner title"
},
"theme.contentVisibility.unlistedBanner.message": {
"message": "This page is unlisted. Search engines will not index it, and only users having a direct link can access it.",
"description": "The unlisted content banner message"
},
"theme.contentVisibility.draftBanner.title": {
"message": "Draft page",
"description": "The draft content banner title"
},
"theme.contentVisibility.draftBanner.message": {
"message": "This page is a draft. It will only be visible in dev and be excluded from the production build.",
"description": "The draft content banner message"
},
"theme.ErrorPageContent.tryAgain": {
"message": "Try again",
"description": "The label of the button to try again rendering when the React error boundary captures an error"
},
"theme.common.skipToMainContent": {
"message": "Skip to main content",
"description": "The skip to content label used for accessibility, allowing to rapidly navigate to main content with keyboard tab/enter navigation"
},
"theme.tags.tagsPageTitle": {
"message": "Tags",
"description": "The title of the tag list page"
}
}

View File

@@ -0,0 +1,14 @@
{
"title": {
"message": "Blog",
"description": "The title for the blog used in SEO"
},
"description": {
"message": "Blog",
"description": "The description for the blog used in SEO"
},
"sidebar.title": {
"message": "Recent posts",
"description": "The label for the left sidebar"
}
}

View File

@@ -0,0 +1,14 @@
{
"version.label": {
"message": "Next",
"description": "The label for version current"
},
"sidebar.tutorialSidebar.category.Introduction": {
"message": "Introduction",
"description": "The label for category Introduction in sidebar tutorialSidebar"
},
"sidebar.tutorialSidebar.category.Introduction.link.generated-index.description": {
"message": "An introductory guide to Snigdha OS Developer Docs, covering the basics to get you started quickly and effectively.",
"description": "The generated-index page description for category Introduction in sidebar tutorialSidebar"
}
}

View File

@@ -0,0 +1,6 @@
{
"copyright": {
"message": "Copyright © 2025 Snigdha OS. Powered by TONMOY INFRASTRUCTURE.",
"description": "The footer copyright"
}
}

View File

@@ -0,0 +1,14 @@
{
"title": {
"message": "SNIGDHA OS | DEVELOPER DOCS",
"description": "The title in the navbar"
},
"logo.alt": {
"message": "My Site Logo",
"description": "The alt text of navbar logo"
},
"item.label.GitHub": {
"message": "GitHub",
"description": "Navbar item with label GitHub"
}
}

313
i18n/ta/code.json Normal file
View File

@@ -0,0 +1,313 @@
{
"theme.ErrorPageContent.title": {
"message": "This page crashed.",
"description": "The title of the fallback page when the page crashed"
},
"theme.BackToTopButton.buttonAriaLabel": {
"message": "Scroll back to top",
"description": "The ARIA label for the back to top button"
},
"theme.blog.archive.title": {
"message": "Archive",
"description": "The page & hero title of the blog archive page"
},
"theme.blog.archive.description": {
"message": "Archive",
"description": "The page & hero description of the blog archive page"
},
"theme.blog.paginator.navAriaLabel": {
"message": "Blog list page navigation",
"description": "The ARIA label for the blog pagination"
},
"theme.blog.paginator.newerEntries": {
"message": "Newer entries",
"description": "The label used to navigate to the newer blog posts page (previous page)"
},
"theme.blog.paginator.olderEntries": {
"message": "Older entries",
"description": "The label used to navigate to the older blog posts page (next page)"
},
"theme.blog.post.paginator.navAriaLabel": {
"message": "Blog post page navigation",
"description": "The ARIA label for the blog posts pagination"
},
"theme.blog.post.paginator.newerPost": {
"message": "Newer post",
"description": "The blog post button label to navigate to the newer/previous post"
},
"theme.blog.post.paginator.olderPost": {
"message": "Older post",
"description": "The blog post button label to navigate to the older/next post"
},
"theme.tags.tagsPageLink": {
"message": "View all tags",
"description": "The label of the link targeting the tag list page"
},
"theme.colorToggle.ariaLabel": {
"message": "Switch between dark and light mode (currently {mode})",
"description": "The ARIA label for the navbar color mode toggle"
},
"theme.colorToggle.ariaLabel.mode.dark": {
"message": "dark mode",
"description": "The name for the dark color mode"
},
"theme.colorToggle.ariaLabel.mode.light": {
"message": "light mode",
"description": "The name for the light color mode"
},
"theme.docs.breadcrumbs.navAriaLabel": {
"message": "Breadcrumbs",
"description": "The ARIA label for the breadcrumbs"
},
"theme.docs.DocCard.categoryDescription.plurals": {
"message": "1 item|{count} items",
"description": "The default description for a category card in the generated index about how many items this category includes"
},
"theme.docs.paginator.navAriaLabel": {
"message": "Docs pages",
"description": "The ARIA label for the docs pagination"
},
"theme.docs.paginator.previous": {
"message": "Previous",
"description": "The label used to navigate to the previous doc"
},
"theme.docs.paginator.next": {
"message": "Next",
"description": "The label used to navigate to the next doc"
},
"theme.docs.tagDocListPageTitle.nDocsTagged": {
"message": "One doc tagged|{count} docs tagged",
"description": "Pluralized label for \"{count} docs tagged\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
},
"theme.docs.tagDocListPageTitle": {
"message": "{nDocsTagged} with \"{tagName}\"",
"description": "The title of the page for a docs tag"
},
"theme.docs.versionBadge.label": {
"message": "Version: {versionLabel}"
},
"theme.docs.versions.unreleasedVersionLabel": {
"message": "This is unreleased documentation for {siteTitle} {versionLabel} version.",
"description": "The label used to tell the user that he's browsing an unreleased doc version"
},
"theme.docs.versions.unmaintainedVersionLabel": {
"message": "This is documentation for {siteTitle} {versionLabel}, which is no longer actively maintained.",
"description": "The label used to tell the user that he's browsing an unmaintained doc version"
},
"theme.docs.versions.latestVersionSuggestionLabel": {
"message": "For up-to-date documentation, see the {latestVersionLink} ({versionLabel}).",
"description": "The label used to tell the user to check the latest version"
},
"theme.docs.versions.latestVersionLinkLabel": {
"message": "latest version",
"description": "The label used for the latest version suggestion link label"
},
"theme.common.editThisPage": {
"message": "Edit this page",
"description": "The link label to edit the current page"
},
"theme.common.headingLinkTitle": {
"message": "Direct link to {heading}",
"description": "Title for link to heading"
},
"theme.lastUpdated.atDate": {
"message": " on {date}",
"description": "The words used to describe on which date a page has been last updated"
},
"theme.lastUpdated.byUser": {
"message": " by {user}",
"description": "The words used to describe by who the page has been last updated"
},
"theme.lastUpdated.lastUpdatedAtBy": {
"message": "Last updated{atDate}{byUser}",
"description": "The sentence used to display when a page has been last updated, and by who"
},
"theme.NotFound.title": {
"message": "Page Not Found",
"description": "The title of the 404 page"
},
"theme.navbar.mobileVersionsDropdown.label": {
"message": "Versions",
"description": "The label for the navbar versions dropdown on mobile view"
},
"theme.tags.tagsListLabel": {
"message": "Tags:",
"description": "The label alongside a tag list"
},
"theme.AnnouncementBar.closeButtonAriaLabel": {
"message": "Close",
"description": "The ARIA label for close button of announcement bar"
},
"theme.admonition.caution": {
"message": "caution",
"description": "The default label used for the Caution admonition (:::caution)"
},
"theme.admonition.danger": {
"message": "danger",
"description": "The default label used for the Danger admonition (:::danger)"
},
"theme.admonition.info": {
"message": "info",
"description": "The default label used for the Info admonition (:::info)"
},
"theme.admonition.note": {
"message": "note",
"description": "The default label used for the Note admonition (:::note)"
},
"theme.admonition.tip": {
"message": "tip",
"description": "The default label used for the Tip admonition (:::tip)"
},
"theme.admonition.warning": {
"message": "warning",
"description": "The default label used for the Warning admonition (:::warning)"
},
"theme.blog.sidebar.navAriaLabel": {
"message": "Blog recent posts navigation",
"description": "The ARIA label for recent posts in the blog sidebar"
},
"theme.CodeBlock.copied": {
"message": "Copied",
"description": "The copied button label on code blocks"
},
"theme.CodeBlock.copyButtonAriaLabel": {
"message": "Copy code to clipboard",
"description": "The ARIA label for copy code blocks button"
},
"theme.CodeBlock.copy": {
"message": "Copy",
"description": "The copy button label on code blocks"
},
"theme.CodeBlock.wordWrapToggle": {
"message": "Toggle word wrap",
"description": "The title attribute for toggle word wrapping button of code block lines"
},
"theme.DocSidebarItem.expandCategoryAriaLabel": {
"message": "Expand sidebar category '{label}'",
"description": "The ARIA label to expand the sidebar category"
},
"theme.DocSidebarItem.collapseCategoryAriaLabel": {
"message": "Collapse sidebar category '{label}'",
"description": "The ARIA label to collapse the sidebar category"
},
"theme.NavBar.navAriaLabel": {
"message": "Main",
"description": "The ARIA label for the main navigation"
},
"theme.NotFound.p1": {
"message": "We could not find what you were looking for.",
"description": "The first paragraph of the 404 page"
},
"theme.NotFound.p2": {
"message": "Please contact the owner of the site that linked you to the original URL and let them know their link is broken.",
"description": "The 2nd paragraph of the 404 page"
},
"theme.TOCCollapsible.toggleButtonLabel": {
"message": "On this page",
"description": "The label used by the button on the collapsible TOC component"
},
"theme.navbar.mobileLanguageDropdown.label": {
"message": "Languages",
"description": "The label for the mobile language switcher dropdown"
},
"theme.blog.post.readMore": {
"message": "Read more",
"description": "The label used in blog post item excerpts to link to full blog posts"
},
"theme.blog.post.readMoreLabel": {
"message": "Read more about {title}",
"description": "The ARIA label for the link to full blog posts from excerpts"
},
"theme.blog.post.readingTime.plurals": {
"message": "One min read|{readingTime} min read",
"description": "Pluralized label for \"{readingTime} min read\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
},
"theme.docs.breadcrumbs.home": {
"message": "Home page",
"description": "The ARIA label for the home page in the breadcrumbs"
},
"theme.docs.sidebar.collapseButtonTitle": {
"message": "Collapse sidebar",
"description": "The title attribute for collapse button of doc sidebar"
},
"theme.docs.sidebar.collapseButtonAriaLabel": {
"message": "Collapse sidebar",
"description": "The title attribute for collapse button of doc sidebar"
},
"theme.docs.sidebar.navAriaLabel": {
"message": "Docs sidebar",
"description": "The ARIA label for the sidebar navigation"
},
"theme.docs.sidebar.closeSidebarButtonAriaLabel": {
"message": "Close navigation bar",
"description": "The ARIA label for close button of mobile sidebar"
},
"theme.navbar.mobileSidebarSecondaryMenu.backButtonLabel": {
"message": "← Back to main menu",
"description": "The label of the back button to return to main menu, inside the mobile navbar sidebar secondary menu (notably used to display the docs sidebar)"
},
"theme.docs.sidebar.toggleSidebarButtonAriaLabel": {
"message": "Toggle navigation bar",
"description": "The ARIA label for hamburger menu button of mobile navigation"
},
"theme.docs.sidebar.expandButtonTitle": {
"message": "Expand sidebar",
"description": "The ARIA label and title attribute for expand button of doc sidebar"
},
"theme.docs.sidebar.expandButtonAriaLabel": {
"message": "Expand sidebar",
"description": "The ARIA label and title attribute for expand button of doc sidebar"
},
"theme.blog.post.plurals": {
"message": "One post|{count} posts",
"description": "Pluralized label for \"{count} posts\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
},
"theme.blog.tagTitle": {
"message": "{nPosts} tagged with \"{tagName}\"",
"description": "The title of the page for a blog tag"
},
"theme.blog.author.pageTitle": {
"message": "{authorName} - {nPosts}",
"description": "The title of the page for a blog author"
},
"theme.blog.authorsList.pageTitle": {
"message": "Authors",
"description": "The title of the authors page"
},
"theme.blog.authorsList.viewAll": {
"message": "View all authors",
"description": "The label of the link targeting the blog authors page"
},
"theme.blog.author.noPosts": {
"message": "This author has not written any posts yet.",
"description": "The text for authors with 0 blog post"
},
"theme.contentVisibility.unlistedBanner.title": {
"message": "Unlisted page",
"description": "The unlisted content banner title"
},
"theme.contentVisibility.unlistedBanner.message": {
"message": "This page is unlisted. Search engines will not index it, and only users having a direct link can access it.",
"description": "The unlisted content banner message"
},
"theme.contentVisibility.draftBanner.title": {
"message": "Draft page",
"description": "The draft content banner title"
},
"theme.contentVisibility.draftBanner.message": {
"message": "This page is a draft. It will only be visible in dev and be excluded from the production build.",
"description": "The draft content banner message"
},
"theme.ErrorPageContent.tryAgain": {
"message": "Try again",
"description": "The label of the button to try again rendering when the React error boundary captures an error"
},
"theme.common.skipToMainContent": {
"message": "Skip to main content",
"description": "The skip to content label used for accessibility, allowing to rapidly navigate to main content with keyboard tab/enter navigation"
},
"theme.tags.tagsPageTitle": {
"message": "Tags",
"description": "The title of the tag list page"
}
}

View File

@@ -0,0 +1,14 @@
{
"title": {
"message": "Blog",
"description": "The title for the blog used in SEO"
},
"description": {
"message": "Blog",
"description": "The description for the blog used in SEO"
},
"sidebar.title": {
"message": "Recent posts",
"description": "The label for the left sidebar"
}
}

View File

@@ -0,0 +1,14 @@
{
"version.label": {
"message": "Next",
"description": "The label for version current"
},
"sidebar.tutorialSidebar.category.Introduction": {
"message": "Introduction",
"description": "The label for category Introduction in sidebar tutorialSidebar"
},
"sidebar.tutorialSidebar.category.Introduction.link.generated-index.description": {
"message": "An introductory guide to Snigdha OS Developer Docs, covering the basics to get you started quickly and effectively.",
"description": "The generated-index page description for category Introduction in sidebar tutorialSidebar"
}
}

View File

@@ -0,0 +1,6 @@
{
"copyright": {
"message": "Copyright © 2025 Snigdha OS. Powered by TONMOY INFRASTRUCTURE.",
"description": "The footer copyright"
}
}

View File

@@ -0,0 +1,14 @@
{
"title": {
"message": "SNIGDHA OS | DEVELOPER DOCS",
"description": "The title in the navbar"
},
"logo.alt": {
"message": "My Site Logo",
"description": "The alt text of navbar logo"
},
"item.label.GitHub": {
"message": "GitHub",
"description": "Navbar item with label GitHub"
}
}

313
i18n/te/code.json Normal file
View File

@@ -0,0 +1,313 @@
{
"theme.ErrorPageContent.title": {
"message": "This page crashed.",
"description": "The title of the fallback page when the page crashed"
},
"theme.blog.archive.title": {
"message": "Archive",
"description": "The page & hero title of the blog archive page"
},
"theme.blog.archive.description": {
"message": "Archive",
"description": "The page & hero description of the blog archive page"
},
"theme.BackToTopButton.buttonAriaLabel": {
"message": "Scroll back to top",
"description": "The ARIA label for the back to top button"
},
"theme.blog.paginator.navAriaLabel": {
"message": "Blog list page navigation",
"description": "The ARIA label for the blog pagination"
},
"theme.blog.paginator.newerEntries": {
"message": "Newer entries",
"description": "The label used to navigate to the newer blog posts page (previous page)"
},
"theme.blog.paginator.olderEntries": {
"message": "Older entries",
"description": "The label used to navigate to the older blog posts page (next page)"
},
"theme.blog.post.paginator.navAriaLabel": {
"message": "Blog post page navigation",
"description": "The ARIA label for the blog posts pagination"
},
"theme.blog.post.paginator.newerPost": {
"message": "Newer post",
"description": "The blog post button label to navigate to the newer/previous post"
},
"theme.blog.post.paginator.olderPost": {
"message": "Older post",
"description": "The blog post button label to navigate to the older/next post"
},
"theme.tags.tagsPageLink": {
"message": "View all tags",
"description": "The label of the link targeting the tag list page"
},
"theme.colorToggle.ariaLabel": {
"message": "Switch between dark and light mode (currently {mode})",
"description": "The ARIA label for the navbar color mode toggle"
},
"theme.colorToggle.ariaLabel.mode.dark": {
"message": "dark mode",
"description": "The name for the dark color mode"
},
"theme.colorToggle.ariaLabel.mode.light": {
"message": "light mode",
"description": "The name for the light color mode"
},
"theme.docs.breadcrumbs.navAriaLabel": {
"message": "Breadcrumbs",
"description": "The ARIA label for the breadcrumbs"
},
"theme.docs.DocCard.categoryDescription.plurals": {
"message": "1 item|{count} items",
"description": "The default description for a category card in the generated index about how many items this category includes"
},
"theme.docs.paginator.navAriaLabel": {
"message": "Docs pages",
"description": "The ARIA label for the docs pagination"
},
"theme.docs.paginator.previous": {
"message": "Previous",
"description": "The label used to navigate to the previous doc"
},
"theme.docs.paginator.next": {
"message": "Next",
"description": "The label used to navigate to the next doc"
},
"theme.docs.tagDocListPageTitle.nDocsTagged": {
"message": "One doc tagged|{count} docs tagged",
"description": "Pluralized label for \"{count} docs tagged\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
},
"theme.docs.tagDocListPageTitle": {
"message": "{nDocsTagged} with \"{tagName}\"",
"description": "The title of the page for a docs tag"
},
"theme.docs.versionBadge.label": {
"message": "Version: {versionLabel}"
},
"theme.docs.versions.unreleasedVersionLabel": {
"message": "This is unreleased documentation for {siteTitle} {versionLabel} version.",
"description": "The label used to tell the user that he's browsing an unreleased doc version"
},
"theme.docs.versions.unmaintainedVersionLabel": {
"message": "This is documentation for {siteTitle} {versionLabel}, which is no longer actively maintained.",
"description": "The label used to tell the user that he's browsing an unmaintained doc version"
},
"theme.docs.versions.latestVersionSuggestionLabel": {
"message": "For up-to-date documentation, see the {latestVersionLink} ({versionLabel}).",
"description": "The label used to tell the user to check the latest version"
},
"theme.docs.versions.latestVersionLinkLabel": {
"message": "latest version",
"description": "The label used for the latest version suggestion link label"
},
"theme.common.editThisPage": {
"message": "Edit this page",
"description": "The link label to edit the current page"
},
"theme.common.headingLinkTitle": {
"message": "Direct link to {heading}",
"description": "Title for link to heading"
},
"theme.lastUpdated.atDate": {
"message": " on {date}",
"description": "The words used to describe on which date a page has been last updated"
},
"theme.lastUpdated.byUser": {
"message": " by {user}",
"description": "The words used to describe by who the page has been last updated"
},
"theme.lastUpdated.lastUpdatedAtBy": {
"message": "Last updated{atDate}{byUser}",
"description": "The sentence used to display when a page has been last updated, and by who"
},
"theme.navbar.mobileVersionsDropdown.label": {
"message": "Versions",
"description": "The label for the navbar versions dropdown on mobile view"
},
"theme.NotFound.title": {
"message": "Page Not Found",
"description": "The title of the 404 page"
},
"theme.tags.tagsListLabel": {
"message": "Tags:",
"description": "The label alongside a tag list"
},
"theme.admonition.caution": {
"message": "caution",
"description": "The default label used for the Caution admonition (:::caution)"
},
"theme.admonition.danger": {
"message": "danger",
"description": "The default label used for the Danger admonition (:::danger)"
},
"theme.admonition.info": {
"message": "info",
"description": "The default label used for the Info admonition (:::info)"
},
"theme.admonition.note": {
"message": "note",
"description": "The default label used for the Note admonition (:::note)"
},
"theme.admonition.tip": {
"message": "tip",
"description": "The default label used for the Tip admonition (:::tip)"
},
"theme.admonition.warning": {
"message": "warning",
"description": "The default label used for the Warning admonition (:::warning)"
},
"theme.AnnouncementBar.closeButtonAriaLabel": {
"message": "Close",
"description": "The ARIA label for close button of announcement bar"
},
"theme.blog.sidebar.navAriaLabel": {
"message": "Blog recent posts navigation",
"description": "The ARIA label for recent posts in the blog sidebar"
},
"theme.CodeBlock.copied": {
"message": "Copied",
"description": "The copied button label on code blocks"
},
"theme.CodeBlock.copyButtonAriaLabel": {
"message": "Copy code to clipboard",
"description": "The ARIA label for copy code blocks button"
},
"theme.CodeBlock.copy": {
"message": "Copy",
"description": "The copy button label on code blocks"
},
"theme.CodeBlock.wordWrapToggle": {
"message": "Toggle word wrap",
"description": "The title attribute for toggle word wrapping button of code block lines"
},
"theme.DocSidebarItem.expandCategoryAriaLabel": {
"message": "Expand sidebar category '{label}'",
"description": "The ARIA label to expand the sidebar category"
},
"theme.DocSidebarItem.collapseCategoryAriaLabel": {
"message": "Collapse sidebar category '{label}'",
"description": "The ARIA label to collapse the sidebar category"
},
"theme.NavBar.navAriaLabel": {
"message": "Main",
"description": "The ARIA label for the main navigation"
},
"theme.navbar.mobileLanguageDropdown.label": {
"message": "Languages",
"description": "The label for the mobile language switcher dropdown"
},
"theme.NotFound.p1": {
"message": "We could not find what you were looking for.",
"description": "The first paragraph of the 404 page"
},
"theme.NotFound.p2": {
"message": "Please contact the owner of the site that linked you to the original URL and let them know their link is broken.",
"description": "The 2nd paragraph of the 404 page"
},
"theme.TOCCollapsible.toggleButtonLabel": {
"message": "On this page",
"description": "The label used by the button on the collapsible TOC component"
},
"theme.blog.post.readMore": {
"message": "Read more",
"description": "The label used in blog post item excerpts to link to full blog posts"
},
"theme.blog.post.readMoreLabel": {
"message": "Read more about {title}",
"description": "The ARIA label for the link to full blog posts from excerpts"
},
"theme.blog.post.readingTime.plurals": {
"message": "One min read|{readingTime} min read",
"description": "Pluralized label for \"{readingTime} min read\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
},
"theme.docs.breadcrumbs.home": {
"message": "Home page",
"description": "The ARIA label for the home page in the breadcrumbs"
},
"theme.docs.sidebar.collapseButtonTitle": {
"message": "Collapse sidebar",
"description": "The title attribute for collapse button of doc sidebar"
},
"theme.docs.sidebar.collapseButtonAriaLabel": {
"message": "Collapse sidebar",
"description": "The title attribute for collapse button of doc sidebar"
},
"theme.docs.sidebar.navAriaLabel": {
"message": "Docs sidebar",
"description": "The ARIA label for the sidebar navigation"
},
"theme.docs.sidebar.closeSidebarButtonAriaLabel": {
"message": "Close navigation bar",
"description": "The ARIA label for close button of mobile sidebar"
},
"theme.navbar.mobileSidebarSecondaryMenu.backButtonLabel": {
"message": "← Back to main menu",
"description": "The label of the back button to return to main menu, inside the mobile navbar sidebar secondary menu (notably used to display the docs sidebar)"
},
"theme.docs.sidebar.toggleSidebarButtonAriaLabel": {
"message": "Toggle navigation bar",
"description": "The ARIA label for hamburger menu button of mobile navigation"
},
"theme.docs.sidebar.expandButtonTitle": {
"message": "Expand sidebar",
"description": "The ARIA label and title attribute for expand button of doc sidebar"
},
"theme.docs.sidebar.expandButtonAriaLabel": {
"message": "Expand sidebar",
"description": "The ARIA label and title attribute for expand button of doc sidebar"
},
"theme.blog.post.plurals": {
"message": "One post|{count} posts",
"description": "Pluralized label for \"{count} posts\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
},
"theme.blog.tagTitle": {
"message": "{nPosts} tagged with \"{tagName}\"",
"description": "The title of the page for a blog tag"
},
"theme.blog.author.pageTitle": {
"message": "{authorName} - {nPosts}",
"description": "The title of the page for a blog author"
},
"theme.blog.authorsList.pageTitle": {
"message": "Authors",
"description": "The title of the authors page"
},
"theme.blog.authorsList.viewAll": {
"message": "View all authors",
"description": "The label of the link targeting the blog authors page"
},
"theme.blog.author.noPosts": {
"message": "This author has not written any posts yet.",
"description": "The text for authors with 0 blog post"
},
"theme.contentVisibility.unlistedBanner.title": {
"message": "Unlisted page",
"description": "The unlisted content banner title"
},
"theme.contentVisibility.unlistedBanner.message": {
"message": "This page is unlisted. Search engines will not index it, and only users having a direct link can access it.",
"description": "The unlisted content banner message"
},
"theme.contentVisibility.draftBanner.title": {
"message": "Draft page",
"description": "The draft content banner title"
},
"theme.contentVisibility.draftBanner.message": {
"message": "This page is a draft. It will only be visible in dev and be excluded from the production build.",
"description": "The draft content banner message"
},
"theme.ErrorPageContent.tryAgain": {
"message": "Try again",
"description": "The label of the button to try again rendering when the React error boundary captures an error"
},
"theme.common.skipToMainContent": {
"message": "Skip to main content",
"description": "The skip to content label used for accessibility, allowing to rapidly navigate to main content with keyboard tab/enter navigation"
},
"theme.tags.tagsPageTitle": {
"message": "Tags",
"description": "The title of the tag list page"
}
}

View File

@@ -0,0 +1,14 @@
{
"title": {
"message": "Blog",
"description": "The title for the blog used in SEO"
},
"description": {
"message": "Blog",
"description": "The description for the blog used in SEO"
},
"sidebar.title": {
"message": "Recent posts",
"description": "The label for the left sidebar"
}
}

View File

@@ -0,0 +1,14 @@
{
"version.label": {
"message": "Next",
"description": "The label for version current"
},
"sidebar.tutorialSidebar.category.Introduction": {
"message": "Introduction",
"description": "The label for category Introduction in sidebar tutorialSidebar"
},
"sidebar.tutorialSidebar.category.Introduction.link.generated-index.description": {
"message": "An introductory guide to Snigdha OS Developer Docs, covering the basics to get you started quickly and effectively.",
"description": "The generated-index page description for category Introduction in sidebar tutorialSidebar"
}
}

View File

@@ -0,0 +1,6 @@
{
"copyright": {
"message": "Copyright © 2025 Snigdha OS. Powered by TONMOY INFRASTRUCTURE.",
"description": "The footer copyright"
}
}

View File

@@ -0,0 +1,14 @@
{
"title": {
"message": "SNIGDHA OS | DEVELOPER DOCS",
"description": "The title in the navbar"
},
"logo.alt": {
"message": "My Site Logo",
"description": "The alt text of navbar logo"
},
"item.label.GitHub": {
"message": "GitHub",
"description": "Navbar item with label GitHub"
}
}

313
i18n/uk/code.json Normal file
View File

@@ -0,0 +1,313 @@
{
"theme.ErrorPageContent.title": {
"message": "На сторінці стався збій.",
"description": "The title of the fallback page when the page crashed"
},
"theme.BackToTopButton.buttonAriaLabel": {
"message": "Прокрутити до початку",
"description": "The ARIA label for the back to top button"
},
"theme.blog.archive.title": {
"message": "Архів",
"description": "The page & hero title of the blog archive page"
},
"theme.blog.archive.description": {
"message": "Архів",
"description": "The page & hero description of the blog archive page"
},
"theme.blog.paginator.navAriaLabel": {
"message": "Навігація по сторінці списку блогів",
"description": "The ARIA label for the blog pagination"
},
"theme.blog.paginator.newerEntries": {
"message": "Наступні записи",
"description": "The label used to navigate to the newer blog posts page (previous page)"
},
"theme.blog.paginator.olderEntries": {
"message": "Попередні записи",
"description": "The label used to navigate to the older blog posts page (next page)"
},
"theme.blog.post.paginator.navAriaLabel": {
"message": "Навігація по сторінці посту блогу",
"description": "The ARIA label for the blog posts pagination"
},
"theme.blog.post.paginator.newerPost": {
"message": "Наступний пост",
"description": "The blog post button label to navigate to the newer/previous post"
},
"theme.blog.post.paginator.olderPost": {
"message": "Попередній пост",
"description": "The blog post button label to navigate to the older/next post"
},
"theme.tags.tagsPageLink": {
"message": "Переглянути всі теги",
"description": "The label of the link targeting the tag list page"
},
"theme.colorToggle.ariaLabel": {
"message": "Перемикання між темним та світлим режимом (зараз використовується {mode})",
"description": "The ARIA label for the navbar color mode toggle"
},
"theme.colorToggle.ariaLabel.mode.dark": {
"message": "Темний режим",
"description": "The name for the dark color mode"
},
"theme.colorToggle.ariaLabel.mode.light": {
"message": "Світлий режим",
"description": "The name for the light color mode"
},
"theme.docs.breadcrumbs.navAriaLabel": {
"message": "Навігаційний ланцюжок поточної сторінки",
"description": "The ARIA label for the breadcrumbs"
},
"theme.docs.DocCard.categoryDescription.plurals": {
"message": "{count} елемент|{count} елементи|{count} елементів",
"description": "The default description for a category card in the generated index about how many items this category includes"
},
"theme.docs.paginator.navAriaLabel": {
"message": "сторінка документації",
"description": "The ARIA label for the docs pagination"
},
"theme.docs.paginator.previous": {
"message": "Попередня сторінка",
"description": "The label used to navigate to the previous doc"
},
"theme.docs.paginator.next": {
"message": "Наступна сторінка",
"description": "The label used to navigate to the next doc"
},
"theme.docs.tagDocListPageTitle.nDocsTagged": {
"message": "Одна сторінка|{count} сторінки|{count} сторінок",
"description": "Pluralized label for \"{count} docs tagged\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
},
"theme.docs.tagDocListPageTitle": {
"message": "{nDocsTagged} з тегом \"{tagName}\"",
"description": "The title of the page for a docs tag"
},
"theme.docs.versionBadge.label": {
"message": "Версія: {versionLabel}"
},
"theme.docs.versions.unreleasedVersionLabel": {
"message": "Це документація для майбутньої версії {siteTitle} {versionLabel}.",
"description": "The label used to tell the user that he's browsing an unreleased doc version"
},
"theme.docs.versions.unmaintainedVersionLabel": {
"message": "Це документація {siteTitle} для версії {versionLabel}, яка вже не підтримується.",
"description": "The label used to tell the user that he's browsing an unmaintained doc version"
},
"theme.docs.versions.latestVersionSuggestionLabel": {
"message": "Актуальна документація знаходиться на сторінці {latestVersionLink} ({versionLabel}).",
"description": "The label used to tell the user to check the latest version"
},
"theme.docs.versions.latestVersionLinkLabel": {
"message": "остання версія",
"description": "The label used for the latest version suggestion link label"
},
"theme.common.editThisPage": {
"message": "Відредагувати цю сторінку",
"description": "The link label to edit the current page"
},
"theme.common.headingLinkTitle": {
"message": "Пряме посилання на {heading}",
"description": "Title for link to heading"
},
"theme.lastUpdated.atDate": {
"message": " {date}",
"description": "The words used to describe on which date a page has been last updated"
},
"theme.lastUpdated.byUser": {
"message": " від {user}",
"description": "The words used to describe by who the page has been last updated"
},
"theme.lastUpdated.lastUpdatedAtBy": {
"message": "Останнє оновлення{atDate}{byUser}",
"description": "The sentence used to display when a page has been last updated, and by who"
},
"theme.navbar.mobileVersionsDropdown.label": {
"message": "Версії",
"description": "The label for the navbar versions dropdown on mobile view"
},
"theme.NotFound.title": {
"message": "Сторінку не знайдено",
"description": "The title of the 404 page"
},
"theme.tags.tagsListLabel": {
"message": "Теги:",
"description": "The label alongside a tag list"
},
"theme.admonition.caution": {
"message": "обережно",
"description": "The default label used for the Caution admonition (:::caution)"
},
"theme.admonition.danger": {
"message": "небезпека",
"description": "The default label used for the Danger admonition (:::danger)"
},
"theme.admonition.info": {
"message": "інформація",
"description": "The default label used for the Info admonition (:::info)"
},
"theme.admonition.note": {
"message": "примітка",
"description": "The default label used for the Note admonition (:::note)"
},
"theme.admonition.tip": {
"message": "порада",
"description": "The default label used for the Tip admonition (:::tip)"
},
"theme.admonition.warning": {
"message": "warning",
"description": "The default label used for the Warning admonition (:::warning)"
},
"theme.AnnouncementBar.closeButtonAriaLabel": {
"message": "Закрити",
"description": "The ARIA label for close button of announcement bar"
},
"theme.CodeBlock.copied": {
"message": "Скопійовано",
"description": "The copied button label on code blocks"
},
"theme.CodeBlock.copyButtonAriaLabel": {
"message": "Копіювати в буфер обміну",
"description": "The ARIA label for copy code blocks button"
},
"theme.CodeBlock.copy": {
"message": "Копіювати",
"description": "The copy button label on code blocks"
},
"theme.CodeBlock.wordWrapToggle": {
"message": "Перемикання обведення слів",
"description": "The title attribute for toggle word wrapping button of code block lines"
},
"theme.blog.sidebar.navAriaLabel": {
"message": "Навігація за останніми постами у блозі",
"description": "The ARIA label for recent posts in the blog sidebar"
},
"theme.DocSidebarItem.expandCategoryAriaLabel": {
"message": "Expand sidebar category '{label}'",
"description": "The ARIA label to expand the sidebar category"
},
"theme.DocSidebarItem.collapseCategoryAriaLabel": {
"message": "Collapse sidebar category '{label}'",
"description": "The ARIA label to collapse the sidebar category"
},
"theme.NavBar.navAriaLabel": {
"message": "Main",
"description": "The ARIA label for the main navigation"
},
"theme.navbar.mobileLanguageDropdown.label": {
"message": "Мови",
"description": "The label for the mobile language switcher dropdown"
},
"theme.NotFound.p1": {
"message": "На жаль, ми не змогли знайти сторінку, яку ви запитували.",
"description": "The first paragraph of the 404 page"
},
"theme.NotFound.p2": {
"message": "Будь ласка, зверніться до власника сайту, з якого ви перейшли на це посилання, щоб повідомити, що посилання не працює.",
"description": "The 2nd paragraph of the 404 page"
},
"theme.TOCCollapsible.toggleButtonLabel": {
"message": "Зміст цієї сторінки",
"description": "The label used by the button on the collapsible TOC component"
},
"theme.blog.post.readMore": {
"message": "Читати далі",
"description": "The label used in blog post item excerpts to link to full blog posts"
},
"theme.blog.post.readMoreLabel": {
"message": "Докладніше про {title}",
"description": "The ARIA label for the link to full blog posts from excerpts"
},
"theme.blog.post.readingTime.plurals": {
"message": "{readingTime} хв. читання|{readingTime} хв. читання|{readingTime} хв. читання",
"description": "Pluralized label for \"{readingTime} min read\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
},
"theme.docs.breadcrumbs.home": {
"message": "Головна сторінка",
"description": "The ARIA label for the home page in the breadcrumbs"
},
"theme.docs.sidebar.collapseButtonTitle": {
"message": "Згорнути сайдбар",
"description": "The title attribute for collapse button of doc sidebar"
},
"theme.docs.sidebar.collapseButtonAriaLabel": {
"message": "Згорнути сайдбар",
"description": "The title attribute for collapse button of doc sidebar"
},
"theme.docs.sidebar.navAriaLabel": {
"message": "Docs sidebar",
"description": "The ARIA label for the sidebar navigation"
},
"theme.docs.sidebar.closeSidebarButtonAriaLabel": {
"message": "Close navigation bar",
"description": "The ARIA label for close button of mobile sidebar"
},
"theme.navbar.mobileSidebarSecondaryMenu.backButtonLabel": {
"message": "← Перейти до головного меню",
"description": "The label of the back button to return to main menu, inside the mobile navbar sidebar secondary menu (notably used to display the docs sidebar)"
},
"theme.docs.sidebar.toggleSidebarButtonAriaLabel": {
"message": "Toggle navigation bar",
"description": "The ARIA label for hamburger menu button of mobile navigation"
},
"theme.docs.sidebar.expandButtonTitle": {
"message": "Розгорнути сайдбар",
"description": "The ARIA label and title attribute for expand button of doc sidebar"
},
"theme.docs.sidebar.expandButtonAriaLabel": {
"message": "Розгорнути сайдбар",
"description": "The ARIA label and title attribute for expand button of doc sidebar"
},
"theme.blog.post.plurals": {
"message": "{count} запис|{count} записи|{count} записів",
"description": "Pluralized label for \"{count} posts\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
},
"theme.blog.tagTitle": {
"message": "{nPosts} з тегом \"{tagName}\"",
"description": "The title of the page for a blog tag"
},
"theme.blog.author.pageTitle": {
"message": "{authorName} - {nPosts}",
"description": "The title of the page for a blog author"
},
"theme.blog.authorsList.pageTitle": {
"message": "Authors",
"description": "The title of the authors page"
},
"theme.blog.authorsList.viewAll": {
"message": "View All Authors",
"description": "The label of the link targeting the blog authors page"
},
"theme.blog.author.noPosts": {
"message": "This author has not written any posts yet.",
"description": "The text for authors with 0 blog post"
},
"theme.contentVisibility.unlistedBanner.title": {
"message": "Unlisted page",
"description": "The unlisted content banner title"
},
"theme.contentVisibility.unlistedBanner.message": {
"message": "This page is unlisted. Search engines will not index it, and only users having a direct link can access it.",
"description": "The unlisted content banner message"
},
"theme.contentVisibility.draftBanner.title": {
"message": "Draft page",
"description": "The draft content banner title"
},
"theme.contentVisibility.draftBanner.message": {
"message": "This page is a draft. It will only be visible in dev and be excluded from the production build.",
"description": "The draft content banner message"
},
"theme.ErrorPageContent.tryAgain": {
"message": "Спробуйте ще раз",
"description": "The label of the button to try again rendering when the React error boundary captures an error"
},
"theme.common.skipToMainContent": {
"message": "Перейти до основного вмісту",
"description": "The skip to content label used for accessibility, allowing to rapidly navigate to main content with keyboard tab/enter navigation"
},
"theme.tags.tagsPageTitle": {
"message": "Теги",
"description": "The title of the tag list page"
}
}

View File

@@ -0,0 +1,14 @@
{
"title": {
"message": "Blog",
"description": "The title for the blog used in SEO"
},
"description": {
"message": "Blog",
"description": "The description for the blog used in SEO"
},
"sidebar.title": {
"message": "Recent posts",
"description": "The label for the left sidebar"
}
}

View File

@@ -0,0 +1,14 @@
{
"version.label": {
"message": "Next",
"description": "The label for version current"
},
"sidebar.tutorialSidebar.category.Introduction": {
"message": "Introduction",
"description": "The label for category Introduction in sidebar tutorialSidebar"
},
"sidebar.tutorialSidebar.category.Introduction.link.generated-index.description": {
"message": "An introductory guide to Snigdha OS Developer Docs, covering the basics to get you started quickly and effectively.",
"description": "The generated-index page description for category Introduction in sidebar tutorialSidebar"
}
}

View File

@@ -0,0 +1,6 @@
{
"copyright": {
"message": "Copyright © 2025 Snigdha OS. Powered by TONMOY INFRASTRUCTURE.",
"description": "The footer copyright"
}
}

View File

@@ -0,0 +1,14 @@
{
"title": {
"message": "SNIGDHA OS | DEVELOPER DOCS",
"description": "The title in the navbar"
},
"logo.alt": {
"message": "Snigdha OS Dev Docs Logo",
"description": "The alt text of navbar logo"
},
"item.label.GitHub": {
"message": "GitHub",
"description": "Navbar item with label GitHub"
}
}

313
i18n/ur/code.json Normal file
View File

@@ -0,0 +1,313 @@
{
"theme.ErrorPageContent.title": {
"message": "یہ صفحہ کریش ہوگیا۔",
"description": "The title of the fallback page when the page crashed"
},
"theme.BackToTopButton.buttonAriaLabel": {
"message": "اوپر جانے کے لئے سکرول کریں",
"description": "The ARIA label for the back to top button"
},
"theme.blog.archive.title": {
"message": "آرکائیو",
"description": "The page & hero title of the blog archive page"
},
"theme.blog.archive.description": {
"message": "آرکائیو",
"description": "The page & hero description of the blog archive page"
},
"theme.blog.paginator.navAriaLabel": {
"message": "بلاگ لسٹ پیج نیویگیشن",
"description": "The ARIA label for the blog pagination"
},
"theme.blog.paginator.newerEntries": {
"message": "نئے انٹریز",
"description": "The label used to navigate to the newer blog posts page (previous page)"
},
"theme.blog.paginator.olderEntries": {
"message": "پرانے انٹریز",
"description": "The label used to navigate to the older blog posts page (next page)"
},
"theme.blog.post.paginator.navAriaLabel": {
"message": "بلاگ پوسٹ پیج نیویگیشن",
"description": "The ARIA label for the blog posts pagination"
},
"theme.blog.post.paginator.newerPost": {
"message": "نئی پوسٹ",
"description": "The blog post button label to navigate to the newer/previous post"
},
"theme.blog.post.paginator.olderPost": {
"message": "پرانا پوسٹ",
"description": "The blog post button label to navigate to the older/next post"
},
"theme.tags.tagsPageLink": {
"message": "تمام ٹیگ دیکھیں",
"description": "The label of the link targeting the tag list page"
},
"theme.colorToggle.ariaLabel": {
"message": "ڈارک اور لائٹ موڈ کے درمیان سوئچ کریں (فی الحال {mode})",
"description": "The ARIA label for the navbar color mode toggle"
},
"theme.colorToggle.ariaLabel.mode.dark": {
"message": "ڈارک موڈ",
"description": "The name for the dark color mode"
},
"theme.colorToggle.ariaLabel.mode.light": {
"message": "لائٹ موڈ",
"description": "The name for the light color mode"
},
"theme.docs.breadcrumbs.navAriaLabel": {
"message": "بریڈ کرمز",
"description": "The ARIA label for the breadcrumbs"
},
"theme.docs.DocCard.categoryDescription.plurals": {
"message": "1 آئٹم|{count} آئٹمز",
"description": "The default description for a category card in the generated index about how many items this category includes"
},
"theme.docs.paginator.navAriaLabel": {
"message": "ڈاکس پیجز",
"description": "The ARIA label for the docs pagination"
},
"theme.docs.paginator.previous": {
"message": "پچھلا",
"description": "The label used to navigate to the previous doc"
},
"theme.docs.paginator.next": {
"message": "اگلا",
"description": "The label used to navigate to the next doc"
},
"theme.docs.tagDocListPageTitle.nDocsTagged": {
"message": "ایک ڈاک ٹگیڈ|{count} ڈاکس ٹگیڈ",
"description": "Pluralized label for \"{count} docs tagged\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
},
"theme.docs.tagDocListPageTitle": {
"message": "\"{tagName}\" کے ساتھ {nDocsTagged}",
"description": "The title of the page for a docs tag"
},
"theme.docs.versionBadge.label": {
"message": "ورژن: {versionLabel}"
},
"theme.docs.versions.unreleasedVersionLabel": {
"message": "یہ {siteTitle} {versionLabel} ورژن کی غیر جاری دستاویزات ہیں۔",
"description": "The label used to tell the user that he's browsing an unreleased doc version"
},
"theme.docs.versions.unmaintainedVersionLabel": {
"message": "یہ {siteTitle} {versionLabel} ورژن کی دستاویزات ہیں، جو اب مزید فعال طور پر زیرِ دیکھ بھال نہیں ہیں۔",
"description": "The label used to tell the user that he's browsing an unmaintained doc version"
},
"theme.docs.versions.latestVersionSuggestionLabel": {
"message": "جدید دستاویزات کے لئے، {latestVersionLink} ({versionLabel}) دیکھیں۔",
"description": "The label used to tell the user to check the latest version"
},
"theme.docs.versions.latestVersionLinkLabel": {
"message": "جدید ورژن",
"description": "The label used for the latest version suggestion link label"
},
"theme.common.editThisPage": {
"message": "اس صفحے کو ایڈٹ کریں",
"description": "The link label to edit the current page"
},
"theme.common.headingLinkTitle": {
"message": "براہ راست لنک {heading} پر",
"description": "Title for link to heading"
},
"theme.lastUpdated.atDate": {
"message": " {date} کو",
"description": "The words used to describe on which date a page has been last updated"
},
"theme.lastUpdated.byUser": {
"message": " {user} کے ذریعہ",
"description": "The words used to describe by who the page has been last updated"
},
"theme.lastUpdated.lastUpdatedAtBy": {
"message": "آخری بار اپ ڈیٹ کیا گیا{atDate}{byUser}",
"description": "The sentence used to display when a page has been last updated, and by who"
},
"theme.navbar.mobileVersionsDropdown.label": {
"message": "ورژنز",
"description": "The label for the navbar versions dropdown on mobile view"
},
"theme.NotFound.title": {
"message": "صفحہ نہیں ملا",
"description": "The title of the 404 page"
},
"theme.tags.tagsListLabel": {
"message": "ٹیگ:",
"description": "The label alongside a tag list"
},
"theme.AnnouncementBar.closeButtonAriaLabel": {
"message": "بند کریں",
"description": "The ARIA label for close button of announcement bar"
},
"theme.admonition.caution": {
"message": "احتیاط",
"description": "The default label used for the Caution admonition (:::caution)"
},
"theme.admonition.danger": {
"message": "خطرہ",
"description": "The default label used for the Danger admonition (:::danger)"
},
"theme.admonition.info": {
"message": "معلومات",
"description": "The default label used for the Info admonition (:::info)"
},
"theme.admonition.note": {
"message": "نوٹ",
"description": "The default label used for the Note admonition (:::note)"
},
"theme.admonition.tip": {
"message": "مشورہ",
"description": "The default label used for the Tip admonition (:::tip)"
},
"theme.admonition.warning": {
"message": "خبردار",
"description": "The default label used for the Warning admonition (:::warning)"
},
"theme.blog.sidebar.navAriaLabel": {
"message": "بلاگ حالیہ پوسٹس نیویگیشن",
"description": "The ARIA label for recent posts in the blog sidebar"
},
"theme.CodeBlock.copied": {
"message": "کاپی کیا گیا",
"description": "The copied button label on code blocks"
},
"theme.CodeBlock.copyButtonAriaLabel": {
"message": "کوڈ کو کلپ بورڈ پر کاپی کریں",
"description": "The ARIA label for copy code blocks button"
},
"theme.CodeBlock.copy": {
"message": "کاپی کریں",
"description": "The copy button label on code blocks"
},
"theme.CodeBlock.wordWrapToggle": {
"message": "ورڈ ریپ کو ٹوگل کریں",
"description": "The title attribute for toggle word wrapping button of code block lines"
},
"theme.DocSidebarItem.expandCategoryAriaLabel": {
"message": "سائیڈبار کیٹیگری '{label}' کو پھیلائیں",
"description": "The ARIA label to expand the sidebar category"
},
"theme.DocSidebarItem.collapseCategoryAriaLabel": {
"message": "سائیڈبار کیٹیگری '{label}' کو بند کریں",
"description": "The ARIA label to collapse the sidebar category"
},
"theme.NavBar.navAriaLabel": {
"message": "مین",
"description": "The ARIA label for the main navigation"
},
"theme.navbar.mobileLanguageDropdown.label": {
"message": "زبانیں",
"description": "The label for the mobile language switcher dropdown"
},
"theme.NotFound.p1": {
"message": "ہم وہ نہیں ڈھونڈ سکے جو آپ تلاش کر رہے تھے۔",
"description": "The first paragraph of the 404 page"
},
"theme.NotFound.p2": {
"message": "براہ کرم اس سائٹ کے مالک سے رابطہ کریں جس نے آپ کو اصل یو آر ایل سے لنک کیا تھا اور انہیں بتائیں کہ ان کا لنک ٹوٹ چکا ہے۔",
"description": "The 2nd paragraph of the 404 page"
},
"theme.TOCCollapsible.toggleButtonLabel": {
"message": "اس صفحے پر",
"description": "The label used by the button on the collapsible TOC component"
},
"theme.blog.post.readMore": {
"message": "مزید پڑھیں",
"description": "The label used in blog post item excerpts to link to full blog posts"
},
"theme.blog.post.readMoreLabel": {
"message": "{title} کے بارے میں مزید پڑھیں",
"description": "The ARIA label for the link to full blog posts from excerpts"
},
"theme.blog.post.readingTime.plurals": {
"message": "ایک منٹ پڑھیں|{readingTime} منٹ پڑھیں",
"description": "Pluralized label for \"{readingTime} min read\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
},
"theme.docs.breadcrumbs.home": {
"message": "ہوم پیج",
"description": "The ARIA label for the home page in the breadcrumbs"
},
"theme.docs.sidebar.collapseButtonTitle": {
"message": "سائیڈبار کو بند کریں",
"description": "The title attribute for collapse button of doc sidebar"
},
"theme.docs.sidebar.collapseButtonAriaLabel": {
"message": "سائیڈبار کو بند کریں",
"description": "The title attribute for collapse button of doc sidebar"
},
"theme.docs.sidebar.navAriaLabel": {
"message": "دستاویزات سائیڈبار",
"description": "The ARIA label for the sidebar navigation"
},
"theme.docs.sidebar.closeSidebarButtonAriaLabel": {
"message": "نیویگیشن بار کو بند کریں",
"description": "The ARIA label for close button of mobile sidebar"
},
"theme.navbar.mobileSidebarSecondaryMenu.backButtonLabel": {
"message": "← مرکزی مینو پر واپس جائیں",
"description": "The label of the back button to return to main menu, inside the mobile navbar sidebar secondary menu (notably used to display the docs sidebar)"
},
"theme.docs.sidebar.toggleSidebarButtonAriaLabel": {
"message": "نیویگیشن بار کو ٹوگل کریں",
"description": "The ARIA label for hamburger menu button of mobile navigation"
},
"theme.docs.sidebar.expandButtonTitle": {
"message": "سائیڈبار کو پھیلائیں",
"description": "The ARIA label and title attribute for expand button of doc sidebar"
},
"theme.docs.sidebar.expandButtonAriaLabel": {
"message": "سائیڈبار کو پھیلائیں",
"description": "The ARIA label and title attribute for expand button of doc sidebar"
},
"theme.blog.post.plurals": {
"message": "ایک پوسٹ|{count} پوسٹس",
"description": "Pluralized label for \"{count} posts\". Use as much plural forms (separated by \"|\") as your language support (see https://www.unicode.org/cldr/cldr-aux/charts/34/supplemental/language_plural_rules.html)"
},
"theme.blog.tagTitle": {
"message": "\"{tagName}\" کے ساتھ {nPosts} پوسٹس",
"description": "The title of the page for a blog tag"
},
"theme.blog.author.pageTitle": {
"message": "{authorName} - {nPosts}",
"description": "The title of the page for a blog author"
},
"theme.blog.authorsList.pageTitle": {
"message": "مصنفین",
"description": "The title of the authors page"
},
"theme.blog.authorsList.viewAll": {
"message": "تمام مصنفین دیکھیں",
"description": "The label of the link targeting the blog authors page"
},
"theme.blog.author.noPosts": {
"message": "اس مصنف نے ابھی تک کوئی پوسٹ نہیں لکھی۔",
"description": "The text for authors with 0 blog post"
},
"theme.contentVisibility.unlistedBanner.title": {
"message": "غیر درج شدہ صفحہ",
"description": "The unlisted content banner title"
},
"theme.contentVisibility.unlistedBanner.message": {
"message": "یہ صفحہ غیر درج شدہ ہے۔ سرچ انجن اس کو انڈیکس نہیں کریں گے، اور صرف وہ صارفین اس تک رسائی حاصل کر سکتے ہیں جن کے پاس براہ راست لنک ہو۔",
"description": "The unlisted content banner message"
},
"theme.contentVisibility.draftBanner.title": {
"message": "ڈرافٹ صفحہ",
"description": "The draft content banner title"
},
"theme.contentVisibility.draftBanner.message": {
"message": "یہ صفحہ ڈرافٹ ہے۔ یہ صرف ڈویلپمنٹ میں نظر آئے گا اور پیداوار کی بلڈ سے خارج ہو گا۔",
"description": "The draft content banner message"
},
"theme.ErrorPageContent.tryAgain": {
"message": "دوبارہ کوشش کریں",
"description": "The label of the button to try again rendering when the React error boundary captures an error"
},
"theme.common.skipToMainContent": {
"message": "مین مواد پر جائیں",
"description": "The skip to content label used for accessibility, allowing to rapidly navigate to main content with keyboard tab/enter navigation"
},
"theme.tags.tagsPageTitle": {
"message": "ٹیگ",
"description": "The title of the tag list page"
}
}

View File

@@ -0,0 +1,14 @@
{
"title": {
"message": "بلاگ",
"description": "The title for the blog used in SEO"
},
"description": {
"message": "بلاگ",
"description": "The description for the blog used in SEO"
},
"sidebar.title": {
"message": "حالیہ پوسٹس",
"description": "The label for the left sidebar"
}
}

View File

@@ -0,0 +1,14 @@
{
"version.label": {
"message": "اگلا",
"description": "The label for version current"
},
"sidebar.tutorialSidebar.category.Introduction": {
"message": "مقدمہ",
"description": "The label for category Introduction in sidebar tutorialSidebar"
},
"sidebar.tutorialSidebar.category.Introduction.link.generated-index.description": {
"message": "Snigdha OS Developer Docs کا تعارفی گائیڈ، جو آپ کو جلد اور مؤثر طریقے سے شروع کرنے کے لئے بنیادی معلومات فراہم کرتا ہے۔",
"description": "The generated-index page description for category Introduction in sidebar tutorialSidebar"
}
}

View File

@@ -0,0 +1,45 @@
---
sidebar_position: 1
slug: /
---
# جائزہ
سگنِدھا او ایس ڈویلپر ڈاکیومنٹیشن (ڈیو ڈاکس) آپ کی مکمل رہنمائی ہے جو سگنِدھا او ایس ماحولیاتی نظام کے لیے ایپلیکیشنز تخلیق کرنے، اپنی مرضی کے مطابق بنانے، اور ان کی کارکردگی کو بہتر بنانے کے لیے۔ ڈیو ڈاکس ڈویلپرز کو ہر مرحلے میں طاقتور ٹولز، واضح رہنمائی، اور قابل عمل بصیرت فراہم کرتا ہے تاکہ آپ اپنے تخلیقی خیالات کو حقیقت میں تبدیل کر سکیں۔
### اہم خصوصیات اور تفصیلات
1. **مکمل آغاز کے رہنما**
- سگنِدھا او ایس ڈویلپمنٹ ماحول ترتیب دینے کے لیے قدم بہ قدم ہدایات۔
- ایس ڈی کے کی تنصیب اور انضمام کے لیے واضح ہدایات۔
2. **وسیع فریم ورک اور ای پی آئی ڈاکیومنٹیشن**
- سگنِدھا او ایس کے بنیادی فریم ورک اور ای پی آئی کی گہری تفصیل۔
- ملٹی تھریڈنگ، ہارڈ ویئر انضمام، اور اے آئی/ایم ایل کی خصوصیات کو دریافت کریں۔
3. **UI/UX ڈیزائن کے وسائل**
- مستقل اور صارف دوست انٹرفیس بنانے کے لیے تفصیلی ڈیزائن اصول۔
- استعمال کے لیے تیار سانچے، تھیمز، اور طرز گائیڈز۔
4. **ڈویلپمنٹ ٹولز اور وسائل**
- آئی ڈی ای پلگ ان، ڈیبگنگ ٹولز، اور کارکردگی پروفائلرز تک رسائی۔
- ڈویلپمنٹ کو تیز کرنے کے لیے تیار کوڈ اسنیپٹس اور مکمل طور پر فعال نمونہ منصوبے۔
5. **پرو ڈویلپرز کے لیے ایڈوانس موضوعات**
- کارکردگی کی ٹیوننگ، کراس پلیٹ فارم ہم آہنگی، اور سیکیورٹی کی بہترین پریکٹسز پر ہدایات۔
- IoT انضمام، وائس کمانڈز، اور مزید جیسی ایڈوانس خصوصیات کی بصیرت۔
6. **مضبوط ٹیسٹنگ اور ڈیبگنگ فریم ورک**
- سگنِدھا او ایس ایپلیکیشنز کو مؤثر طریقے سے ٹیسٹ کرنے کے لیے مخصوص ٹولز۔
- مسائل کو حل کرنے اور ایپ کی استحکام کو بہتر بنانے کے لیے رہنمائی۔
7. **پبلشنگ اور ڈسٹریبیوشن**
- سگنِدھا ایپ اسٹور پر ایپس کو جمع کرانے کے لیے قدم بہ قدم رہنمائی۔
- ایپ کے جائزے کی تعمیل، تقسیم کی حکمت عملیوں، اور صارف کی حصول کے بارے میں نکات۔
### سگنِدھا او ایس ڈیو ڈاکس کیوں منتخب کریں؟
- **صارف مرکوز نقطہ نظر**: سگنِدھا او ایس رفتار، بھروسے مندی، اور ہم آہنگ صارف کے تجربات کے پیش نظر بنایا گیا ہے۔
- **جدید ٹولز**: جدید ترین ٹولز اور فریم ورک کا فائدہ اٹھائیں تاکہ جدید ایپلیکیشنز تخلیق کی جا سکیں۔
- **کمیونٹی اور مدد**: ایک متحرک ڈویلپر کمیونٹی میں شامل ہوں اور معاونت کے لیے مخصوص سپورٹ چینلز تک رسائی حاصل کریں۔
وسائل کا جائزہ لیں، دوسرے ڈویلپرز سے جڑیں، اور سگنِدھا او ایس ڈویلپر ڈاکیومنٹیشن کے ساتھ اپنے تخلیقی وژن کو حقیقت میں تبدیل کریں۔ ہم مل کر ایپلیکیشن ڈویلپمنٹ میں جو ممکن ہے اسے نئی شکل دیں گے۔

View File

@@ -0,0 +1,47 @@
---
sidebar_position: 2
---
# کیوں آرک؟
لینکس کی تقسیموں کی دنیا میں، بیس سسٹم کا انتخاب ایک اہم فیصلہ ہے۔ یہ صارف کے تجربے، آپریٹنگ سسٹم کی لچک، اور مجموعی کارکردگی کو تشکیل دیتا ہے۔ سگنِدھا او ایس کے لیے، یہ انتخاب احتیاط اور سوچ بچار کے ساتھ کیا گیا — *آرک لینکس* کو بیس کے طور پر منتخب کیا گیا۔ لیکن کیوں آرک لینکس؟ آئیے اس فیصلے کے پیچھے وجوہات پر تفصیل سے بات کرتے ہیں۔
### **1. رولنگ ریلیز ماڈل**
آرک لینکس اپنے رولنگ ریلیز ماڈل کے لیے جانا جاتا ہے، جس کا مطلب ہے کہ صارفین کو بڑے ورژن اپ ڈیٹس کا انتظار کرنے کی بجائے مسلسل نئی سافٹ ویئر اور خصوصیات تک رسائی حاصل ہوتی ہے۔ یہ سگنِدھا او ایس کے فلسفے کے عین مطابق ہے، جو جدید، جدید ترین ٹولز اور ٹیکنالوجیز کو ترجیح دیتا ہے۔ آرک کو بیس کے طور پر منتخب کر کے، سگنِدھا او ایس کے صارفین ایک مسلسل اپ ڈیٹ ہونے والا سسٹم استعمال کرتے ہیں، جو ان کے ماحول کو تازہ اور متعلقہ رکھتا ہے، اور کم سے کم مسائل کے ساتھ۔
### **2. KISS اصول**
"کِپ اٹ سمپل، اسٹوپڈ" (KISS) اصول آرک لینکس کے بنیادی فلسفوں میں سے ایک ہے۔ آرک غیر ضروری بلیٹ سے بچتا ہے، اور صارفین کو اپنے سسٹم کو نیچے سے اوپر تک بنانے کی آزادی دیتا ہے۔ سگنِدھا او ایس اس فلسفے کو وراثت میں لیتا ہے، اور ایک صاف ستھرا ماحول فراہم کرنے کا مقصد رکھتا ہے جس میں صرف ضروری اجزاء ہوتے ہیں، تاکہ صارفین کو بغیر کسی پریشانی کے اپنے مثالی سسٹم کو حسب ضرورت بنایا جا سکے۔
KISS اصول کی پیروی کرتے ہوئے، سگنِدھا او ایس لچک، سادگی، اور کنٹرول فراہم کرتا ہے، اس بات کو یقینی بناتا ہے کہ صارفین کو بالکل وہی ملے جو وہ چاہتے ہیں، بغیر کسی غیر مطلوبہ سرپرائز کے۔
### **3. لچک اور حسب ضرورت**
آرک لینکس بے پناہ لچک فراہم کرتا ہے، جو سگنِدھا او ایس کو اس پر مبنی بنانے کے فیصلے میں ایک اہم عنصر تھا۔ آرک کے ساتھ، صارفین کو اپنے سسٹم کو بالکل اپنی مرضی کے مطابق ترتیب دینے کی طاقت ملتی ہے۔ پیکیج کی تنصیب سے لے کر ڈیسک ٹاپ ماحول تک، آرک صارف کو مکمل آزادی دیتا ہے۔
سگنِدھا او ایس ان قدموں پر چلنے کا مقصد رکھتا ہے، اور صارفین کو ایک انتہائی لچکدار پلیٹ فارم فراہم کرتا ہے جسے وہ اپنی مخصوص ضروریات کے مطابق ڈھال سکتے ہیں۔ چاہے آپ ڈویلپر ہوں، مواد تخلیق کرنے والا ہوں، یا صرف ایک لینکس کے شوقین ہوں، حسب ضرورت کے اختیارات تقریباً لامتناہی ہیں۔
### **4. آرک یوزر ریپازیٹری (AUR) تک رسائی**
آرک یوزر ریپازیٹری (AUR) آرک لینکس کے سب سے مشہور پہلوؤں میں سے ایک ہے۔ یہ کمیونٹی کی طرف سے فراہم کردہ پیکیجز کا ایک وسیع ذخیرہ ہے، جو تقریباً ہر سافٹ ویئر کو آسانی سے دستیاب بناتا ہے۔ سگنِدھا او ایس کے لیے، AUR تک رسائی کا مطلب ہے کہ صارفین کو ایک وسیع ایپلی کیشنز تک رسائی حاصل ہوتی ہے جو سرکاری ریپازیٹریز میں شامل نہیں ہوتی ہیں۔
یہ خاص طور پر ان صارفین کے لیے اہم ہے جنہیں وہ سافٹ ویئر درکار ہوتا ہے جو روایتی پیکیج مینیجرز یا سرکاری ریپازیٹریز میں دستیاب نہیں ہوتا۔ AUR کے ساتھ، سگنِدھا او ایس کے صارفین کو سافٹ ویئر کا ایک وسیع لائبریری دستیاب ہوتی ہے، جو ان کے آپریٹنگ سسٹمز کی صلاحیتوں کو تقریباً لامتناہی امکانات تک بڑھاتا ہے۔
### **5. دستاویزات اور کمیونٹی کی حمایت**
آرک لینکس کو اکثر اپنی غیر معمولی دستاویزات، *آرک وکی* کے لیے سراہا جاتا ہے۔ یہ علم کا خزانہ واضح، مختصر رہنمائی فراہم کرتا ہے کہ سسٹم کے کسی بھی پہلو کو کیسے نصب، تشکیل اور حل کیا جائے۔ جب سگنِدھا او ایس نے آرک لینکس کو اپنے بیس کے طور پر اپنایا، تو اس نے اس علم کے خزانے کو بھی وراثت میں لیا، جو نئے اور تجربہ کار دونوں صارفین کے لیے ایک قیمتی وسیلہ ہے۔
اس کے علاوہ، آرک لینکس کی ایک زندہ اور فعال کمیونٹی ہے، اور یہ کمیونٹی کی حمایت سگنِدھا او ایس تک پہنچتی ہے۔ صارفین مدد حاصل کر سکتے ہیں اور علم کا تبادلہ کر سکتے ہیں، اس بات کو یقینی بناتے ہوئے کہ وہ سگنِدھا او ایس کے ساتھ اپنے سفر میں کبھی بھی اکیلا محسوس نہ کریں۔
### **6. استحکام اور کارکردگی**
اگرچہ اسے "کٹنگ ایج" ڈسٹری بیوشن کے طور پر جانا جاتا ہے، آرک لینکس غیر معمولی طور پر مستحکم ہے۔ اس کا رولنگ ریلیز ماڈل یہ یقینی بناتا ہے کہ صارفین ہمیشہ جدید ترین سافٹ ویئر اپ ڈیٹس حاصل کریں، لیکن آرک کے منتظمین ان اپ ڈیٹس کو استحکام کے لیے احتیاط سے جانچتے ہیں اس سے پہلے کہ وہ باہر بھیجے جائیں۔ جدید ترین ٹیکنالوجیز کے ساتھ ساتھ سسٹم کی استحکام کو یقینی بنانا آرک کو سگنِدھا او ایس کے لیے ایک مثالی انتخاب بناتا ہے۔
سگنِدھا او ایس کے صارفین کے لیے اس کا مطلب یہ ہے کہ وہ کارکردگی کی اصلاحات اور جدید سافٹ ویئر سے لطف اندوز ہو سکتے ہیں، بغیر سسٹم کی اعتباریت کو قربان کیے۔
### **7. پیکمین کی طاقت**
آرک لینکس کی ایک نمایاں خصوصیت اس کا پیکیج مینیجر *پیکمین* ہے۔ پیکمین ہلکا پھلکا، تیز، اور انتہائی موثر ہے، جو سافٹ ویئر کے انتظام کو آسان اور تیز بناتا ہے۔ سگنِدھا او ایس کے صارفین کو پیکمین کی سادگی اور تیز رفتاری کا فائدہ ہوتا ہے، جس سے پیکج کی تنصیب، اپ ڈیٹس، اور ہٹانے کا عمل نہایت آسان ہو جاتا ہے۔
اس کے علاوہ، آرک کا پیکیج مینیجمنٹ سسٹم AUR کے ساتھ بخوبی ہم آہنگ ہوتا ہے، جس سے سگنِدھا او ایس کے صارفین کو سرکاری اور کمیونٹی ریپازیٹریز سے سافٹ ویئر کو صرف چند سادہ کمانڈز کے ذریعے انسٹال کرنا آسان ہو جاتا ہے۔
### **اختتاماً: کیوں آرک؟**
سگنِدھا او ایس کو آرک لینکس پر مبنی بنانے کا فیصلہ مختلف مقاصد کے ساتھ کیا گیا تھا: لچک، سادگی، اور کارکردگی۔ آرک کو بنیاد کے طور پر منتخب کر کے، سگنِدھا او ایس ایک کھلا، حسب ضرورت پلیٹ فارم فراہم کرتا ہے جس میں مسلسل اپ ڈیٹس، سافٹ ویئر کے وسیع ذخائر تک رسائی، اور مضبوط کمیونٹی کی حمایت شامل ہے۔ چاہے آپ ایک تجربہ کار لینکس صارف ہوں یا نیا، سگنِدھا او ایس ایک ورسٹائل اور مستحکم ماحول فراہم کرتا ہے جو آرک کی قدرتی طاقت سے فائدہ اٹھاتا ہے۔
آخرکار، سگنِدھا او ایس صرف ایک آپریٹنگ سسٹم نہیں ہے — یہ ایک کمیونٹی سے چلنے والا منصوبہ ہے جو انتخاب، کنٹرول، اور سادگی کے اصولوں پر بنایا گیا ہے۔ آرک لینکس کے ساتھ اس کے مرکز میں، سگنِدھا او ایس اس بات کو یقینی بناتا ہے کہ صارفین کے پاس اپنے مثالی کمپیوٹنگ تجربے کو تخلیق کرنے کے لیے تمام ٹولز اور آزادی موجود ہو۔
> سگنِدھا او ایس کمیونٹی میں شامل ہونے کے لیے آزاد محسوس کریں اور دریافت کریں کہ آرک کی طاقت اور سگنِدھا کی لچک آپ کے کامل لینکس سیٹ اپ کے لیے کس طرح مل کر کام کر سکتے ہیں!

View File

@@ -0,0 +1,6 @@
{
"copyright": {
"message": "کاپی رائٹ © 2025 Snigdha OS۔ پاورڈ بائی TONMOY INFRASTRUCTURE۔",
"description": "The footer copyright"
}
}

View File

@@ -0,0 +1,14 @@
{
"title": {
"message": "SNIGDHA OS | ڈویلپر ڈاکس",
"description": "The title in the navbar"
},
"logo.alt": {
"message": "میرا سائٹ لوگو",
"description": "The alt text of navbar logo"
},
"item.label.GitHub": {
"message": "گٹ ہب",
"description": "Navbar item with label GitHub"
}
}

View File

@@ -14,8 +14,8 @@
"write-heading-ids": "docusaurus write-heading-ids"
},
"dependencies": {
"@docusaurus/core": "3.6.3",
"@docusaurus/preset-classic": "3.6.3",
"@docusaurus/core": "3.7.0",
"@docusaurus/preset-classic": "3.7.0",
"@mdx-js/react": "^3.0.0",
"clsx": "^2.0.0",
"prism-react-renderer": "^2.3.0",
@@ -23,8 +23,8 @@
"react-dom": "^18.0.0"
},
"devDependencies": {
"@docusaurus/module-type-aliases": "3.6.3",
"@docusaurus/types": "3.6.3"
"@docusaurus/module-type-aliases": "3.7.0",
"@docusaurus/types": "3.7.0"
},
"browserslist": {
"production": [

683
pnpm-lock.yaml generated

File diff suppressed because it is too large Load Diff

33
push.sh
View File

@@ -3,12 +3,10 @@
# Author : ESHAN ROY
# Author URI : https://eshanized.github.io
# NOTE : Run at your own risk!
# Define the conventional commit types with new emojis
TYPES=("🚀 feat" "🐛 fix" "📝 docs" "✨ style" "🛠 refactor" "⚡️ perf" "🔬 test" "🔧 build" "🤖 ci" "🧹 chore" "⏪ revert")
# Function to display an error and exit
# Function to display an error and exit and
error_exit() {
echo -e "\033[1;31m[ERROR]\033[0m $1"
exit 1
@@ -17,6 +15,13 @@ error_exit() {
# Ensure the script is run in a Git repository
git rev-parse --is-inside-work-tree > /dev/null 2>&1 || error_exit "This is not a Git repository."
# Get the current branch name
branch=$(git rev-parse --abbrev-ref HEAD)
# Pull the latest changes from the remote repository
echo "Pulling latest changes from remote branch '$branch'..."
git pull origin "$branch" || error_exit "Failed to pull changes from the remote repository. Please resolve any conflicts manually."
# Prompt the user to select a commit type
echo "Select a commit type:"
select type in "${TYPES[@]}"; do
@@ -32,13 +37,6 @@ type_emoji=${type}
type=${type_emoji#* }
emoji=${type_emoji% *}
# Prompt the user to enter a scope (optional)
read -p "Enter a scope (optional): " scope
scope_part=""
if [ -n "$scope" ]; then
scope_part="($scope)"
fi
# Prompt the user to enter a short description
read -p "Enter a short description: " desc
if [ -z "$desc" ]; then
@@ -49,26 +47,17 @@ fi
read -p "Enter a longer description (optional): " long_desc
# Create the commit message
commit_msg="$emoji $type$scope_part: $desc"
commit_msg="$emoji $type: $desc"
# If a longer description was provided, add it to the commit message
if [ -n "$long_desc" ]; then
commit_msg+="
$long_desc"
commit_msg+="\n\n$long_desc"
fi
# Print the commit message to the console
echo -e "\nCommit message:"
echo -e "\033[1;36m$commit_msg\033[0m"
# Confirm before committing
read -p "Do you want to proceed with this commit? (y/n): " confirm
if [[ "$confirm" != "y" && "$confirm" != "Y" ]]; then
echo "Commit aborted."
exit 0
fi
# Stage all changes
git add .
@@ -80,7 +69,7 @@ else
fi
# Push the changes to the remote repository
branch=$(git rev-parse --abbrev-ref HEAD)
echo "Pushing changes to remote branch '$branch'..."
if git push origin "$branch"; then
echo -e "\033[1;32mChanges pushed to remote branch '$branch'.\033[0m"
else

View File

@@ -38,12 +38,16 @@ const FeatureList = [
function Feature({Svg, title, description}) {
return (
<div className={clsx('col col--4')}>
<div className="text--center">
<Svg className={styles.featureSvg} role="img" />
</div>
<div className="text--center padding-horiz--md">
<Heading as="h3">{title}</Heading>
<p>{description}</p>
<div className={clsx(styles.feature)}>
<div className="text--center">
<Svg className={styles.featureSvg} role="img" />
</div>
<div className="text--center padding-horiz--md">
<Heading as="h3" className={clsx(styles.featureTitle)}>
{title}
</Heading>
<p className={clsx(styles.featureDescription)}>{description}</p>
</div>
</div>
</div>
);
@@ -51,7 +55,7 @@ function Feature({Svg, title, description}) {
export default function HomepageFeatures() {
return (
<section className={styles.features}>
<section className={clsx(styles.features)}>
<div className="container">
<div className="row">
{FeatureList.map((props, idx) => (

View File

@@ -1,11 +1,61 @@
/* Feature Section Styling */
.features {
background-color: #f5f5f5;
padding: 4rem 0;
}
.feature {
display: flex;
flex-direction: column;
justify-content: space-between;
align-items: center;
padding: 2rem 0;
width: 100%;
padding: 2rem;
background: white;
border-radius: 8px;
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.feature:hover {
transform: translateY(-10px);
box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
}
.featureSvg {
height: 200px;
width: 200px;
width: 80px;
height: 80px;
margin-bottom: 1.5rem;
transition: fill 0.3s ease;
}
.feature:hover .featureSvg {
fill: #6495ed;
}
.featureTitle {
font-size: 1.5rem;
font-weight: bold;
margin-bottom: 1rem;
color: #333;
}
.featureDescription {
color: #666;
font-size: 1rem;
line-height: 1.5;
text-align: center;
max-width: 300px;
margin: 0 auto;
}
/* Responsive grid for feature cards */
@media (max-width: 768px) {
.features {
padding: 2rem 0;
}
.feature {
margin-bottom: 2rem;
}
}

View File

@@ -1,43 +0,0 @@
import clsx from 'clsx';
import Link from '@docusaurus/Link';
import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
import Layout from '@theme/Layout';
import HomepageFeatures from '@site/src/components/HomepageFeatures';
import Heading from '@theme/Heading';
import styles from './index.module.css';
function HomepageHeader() {
const {siteConfig} = useDocusaurusContext();
return (
<header className={clsx('hero hero--primary', styles.heroBanner)}>
<div className="container">
<Heading as="h1" className="hero__title">
{siteConfig.title}
</Heading>
<p className="hero__subtitle">{siteConfig.tagline}</p>
<div className={styles.buttons}>
<Link
className="button button--secondary button--lg"
to="/docs/intro">
Explore Dev Docs for Snigdha OS
</Link>
</div>
</div>
</header>
);
}
export default function Home() {
const {siteConfig} = useDocusaurusContext();
return (
<Layout
title={`${siteConfig.title}`}
description="Description will go into a meta tag in <head />">
<HomepageHeader />
<main>
<HomepageFeatures />
</main>
</Layout>
);
}

View File

@@ -1,23 +1,145 @@
/**
* CSS files with the .module.css suffix will be treated as CSS modules
* and scoped locally.
*/
/* Hero Banner Section */
.heroBanner {
padding: 4rem 0;
padding: 5rem 2rem;
text-align: center;
position: relative;
overflow: hidden;
background: linear-gradient(to right, #6495ed, #3b82f6); /* Added gradient background */
color: white;
border-radius: 12px;
}
@media screen and (max-width: 996px) {
.heroBanner {
padding: 2rem;
padding: 3rem 1.5rem;
}
}
.hero__title {
font-size: 3rem;
font-weight: bold;
letter-spacing: -0.5px;
line-height: 1.2;
margin-bottom: 1.5rem;
text-shadow: 2px 2px rgba(0, 0, 0, 0.2); /* Slight text shadow for depth */
}
.hero__subtitle {
font-size: 1.5rem;
margin-bottom: 2rem;
max-width: 800px;
margin-left: auto;
margin-right: auto;
opacity: 0.9;
line-height: 1.5;
font-weight: 300;
}
@media screen and (max-width: 996px) {
.hero__title {
font-size: 2.5rem;
}
.hero__subtitle {
font-size: 1.2rem;
}
}
/* Buttons Section */
.buttons {
display: flex;
align-items: center;
justify-content: center;
align-items: center;
gap: 20px;
margin-top: 2rem;
animation: fadeIn 1s ease-out; /* Added fade-in animation */
}
.button {
padding: 12px 30px;
font-size: 16px;
font-weight: 600;
border-radius: 50px;
background-color: #6495ed;
color: white;
text-align: center;
cursor: pointer;
border: none;
outline: none;
position: relative;
overflow: hidden;
transition: color 0.3s ease, background-color 0.3s ease, transform 0.3s ease;
box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1); /* Subtle box-shadow for better depth */
}
.button:hover {
background-color: #4169e1;
color: #fff;
transform: translateY(-5px); /* Smooth hover effect */
}
.button::before {
content: '';
position: absolute;
top: 50%;
left: 50%;
width: 300%;
height: 300%;
background-color: #fff;
transition: width 0.4s ease, height 0.4s ease, top 0.4s ease, left 0.4s ease;
border-radius: 50%;
z-index: 0;
transform: translate(-50%, -50%);
}
.button:hover::before {
width: 0;
height: 0;
top: 50%;
left: 50%;
}
/* Animation for Fade-in */
@keyframes fadeIn {
0% {
opacity: 0;
transform: translateY(30px);
}
100% {
opacity: 1;
transform: translateY(0);
}
}
/* Feature Section */
.features {
background: #f8fafc; /* Light background for features */
padding: 4rem 0;
}
.featureSvg {
max-width: 150px;
max-height: 150px;
margin-bottom: 20px;
transition: transform 0.3s ease;
}
.featureSvg:hover {
transform: scale(1.1); /* Slight scaling effect on hover */
}
.text--center {
text-align: center;
}
/* Typography Adjustments */
h1, h2, h3 {
font-family: 'Roboto', sans-serif;
font-weight: 700;
}
p {
font-family: 'Open Sans', sans-serif;
font-weight: 300;
line-height: 1.6;
}