mirror of
https://github.com/Snigdha-OS/snigdhaos-web-dev.git
synced 2025-09-08 05:44:56 +02:00
📝 docs(_more): details and clarity
This commit is contained in:
183
readme.md
183
readme.md
@@ -1,66 +1,107 @@
|
||||
|
||||
# Snigdha OS Web Dev
|
||||
|
||||
Welcome to the Snigdha OS Web Dev repository! This repository contains the source code, components, and resources used for building and maintaining the official website for Snigdha OS.
|
||||
# Snigdha OS Web Dev 🌐💻
|
||||
|
||||
Welcome to the **Snigdha OS Web Dev** repository! 🎉 This repository contains the source code, components, and resources used for building and maintaining the official website for **Snigdha OS**. 🚀
|
||||
<div align="center">
|
||||
[](https://app.netlify.com/sites/snigdhaos/deploys)
|
||||
</div>
|
||||
|
||||
## Table of Contents
|
||||
## Table of Contents 📑
|
||||
|
||||
- [Overview](#overview)
|
||||
- [Features](#features)
|
||||
- [Technologies Used](#technologies-used)
|
||||
- [Developers](#developers)
|
||||
- [Development Guide](#development-guide)
|
||||
- [Contributing](#contributing)
|
||||
- [License](#license)
|
||||
- [Overview](#overview) 🌟
|
||||
- [Features](#features) ✨
|
||||
- [Technologies Used](#technologies-used) ⚙️
|
||||
- [Repository Structure](#repository-structure) 📂
|
||||
- [Developers](#developers) 👨💻👩💻
|
||||
- [Development Guide](#development-guide) 🛠️
|
||||
- [Contributing](#contributing) 🤝
|
||||
- [License](#license) 📜
|
||||
|
||||
## Overview
|
||||
|
||||
The Snigdha OS Web Dev repository powers the official Snigdha OS website. It includes various web development components, styles, and scripts necessary for the website's functionality. The website is designed to be clean, lightweight, and user-friendly, aligning with the philosophy of Snigdha OS.
|
||||
|
||||
## Features
|
||||
## Overview 🌟
|
||||
|
||||
- **Responsive Design**: The website is fully responsive and works across various devices and screen sizes.
|
||||
- **User Registration & Authentication**: Integrated with the Snigdha OS user system for registration and authentication.
|
||||
- **Region-based Downloads**: Allows users to select regional mirrors for downloading Snigdha OS.
|
||||
- **Customizable UI**: Built with flexibility in mind for future enhancements and easy theming.
|
||||
- **SEO Optimization**: The website is optimized for search engines to ensure better discoverability.
|
||||
The **Snigdha OS Web Dev** repository powers the official website for the next **Snigdha OS**. It includes various web development components, styles, and scripts necessary for the website's functionality. The website is designed to be clean, lightweight, and user-friendly, aligning with the minimalist philosophy of Snigdha OS. 🖥️
|
||||
|
||||
## Technologies Used
|
||||
|
||||
This project utilizes a range of modern web technologies to create a seamless and performant experience:
|
||||
|
||||
- **React.js**: A JavaScript library for building user interfaces, allowing for reusable components and a fast development workflow.
|
||||
- **Node.js**: A runtime environment for executing JavaScript on the server-side.
|
||||
- **Express.js**: A minimal web framework for Node.js used for backend API routes.
|
||||
- **Redux**: A state management library to handle the application's state in a predictable way.
|
||||
- **CSS3**: For styling the website with modern layout techniques (Flexbox, Grid).
|
||||
- **Sass**: A CSS preprocessor to manage complex stylesheets and make the development process more efficient.
|
||||
- **Webpack**: A module bundler for JavaScript and other assets, ensuring optimal performance and organization.
|
||||
- **Jest**: A testing framework used for running unit and integration tests.
|
||||
- **ESLint**: A tool for identifying and fixing issues in JavaScript code to ensure consistency and adherence to coding standards.
|
||||
## Features ✨
|
||||
|
||||
## Developers
|
||||
- 📱 **Responsive Design**: Works seamlessly across devices and screen sizes.
|
||||
- 🔑 **User Registration & Authentication**: Integrated with the Snigdha OS user system.
|
||||
- 🌍 **Region-based Downloads**: Select regional mirrors for faster downloads.
|
||||
- 🎨 **Customizable UI**: Built for flexibility and easy theming.
|
||||
- 🌐 **SEO Optimization**: Ensures better discoverability on search engines.
|
||||
|
||||
Below is the list of developers contributing to the Snigdha OS Web Dev:
|
||||
|
||||
- **eshanized** - Lead Developer, Web Architect
|
||||
|
||||
If you would like to contribute or join the team, feel free to reach out!
|
||||
## Technologies Used ⚙️
|
||||
|
||||
## Development Guide
|
||||
This project leverages modern technologies to deliver an efficient and scalable experience:
|
||||
|
||||
### Prerequisites
|
||||
- ⚛️ **React.js**: For building dynamic user interfaces.
|
||||
- 🟢 **Node.js**: A runtime environment for server-side JavaScript.
|
||||
- 🚀 **Express.js**: Minimal web framework for backend API routes.
|
||||
- 🗂️ **Redux**: State management for predictable application behavior.
|
||||
- 🎨 **CSS3 & Sass**: Styling with modern techniques like Flexbox and Grid.
|
||||
- 📦 **Webpack**: Bundling JavaScript and assets for optimized performance.
|
||||
- ✅ **Jest**: Testing framework for unit and integration tests.
|
||||
- 🛠️ **ESLint**: For consistent and error-free JavaScript code.
|
||||
|
||||
To get started with development, you need:
|
||||
|
||||
- **Node.js** and **pnpm** installed on your local machine.
|
||||
- A modern web browser (Chrome, Firefox, etc.) for testing and debugging.
|
||||
- A code editor (VSCode, Sublime Text, etc.).
|
||||
- Familiarity with React.js, JavaScript, CSS, and Git.
|
||||
|
||||
### Setting Up the Development Environment
|
||||
## Repository Structure 📂
|
||||
|
||||
The repository is organized for clarity and modularity:
|
||||
|
||||
```plaintext
|
||||
snigdhaos-web-dev/
|
||||
├── src/ # Main source code
|
||||
│ ├── components/ # Reusable components (Header, Footer, Forms)
|
||||
│ ├── pages/ # Website pages (Home, About, Download)
|
||||
│ ├── styles/ # Global and component-specific styles
|
||||
│ ├── utils/ # Utility functions and helpers
|
||||
│ └── App.js # Root React component
|
||||
├── public/ # Static assets (images, icons, fonts)
|
||||
├── tests/ # Unit and integration tests
|
||||
├── package.json # Project dependencies and scripts
|
||||
├── pnpm-lock.yaml # Lockfile for pnpm dependencies
|
||||
├── README.md # This README file
|
||||
├── .eslintrc.js # ESLint configuration
|
||||
├── .gitignore # Files to ignore in Git
|
||||
└── LICENSE # License file
|
||||
```
|
||||
|
||||
### Key Folders 📁
|
||||
|
||||
- **`src/components/`**: Modular, reusable UI components like navigation bars and forms.
|
||||
- **`src/pages/`**: Individual pages of the website, such as Home, About, and Download.
|
||||
- **`src/styles/`**: Stylesheets for consistent design across the website.
|
||||
- **`public/`**: Static files served directly without processing.
|
||||
|
||||
|
||||
|
||||
## Developers 👨💻👩💻
|
||||
|
||||
Meet the amazing contributors behind Snigdha OS Web Dev:
|
||||
|
||||
- **[Eshanized](https://github.com/eshanized/)** - Lead Developer, Web Architect 🌟
|
||||
|
||||
We’re always looking for passionate developers to join the team! 💖
|
||||
|
||||
|
||||
|
||||
## Development Guide 🛠️
|
||||
|
||||
### Prerequisites ⚡
|
||||
|
||||
To start working on the project, you need:
|
||||
- **Node.js** and **pnpm** installed on your machine.
|
||||
- A modern browser for testing (e.g., Chrome, Firefox).
|
||||
- A code editor like VSCode for efficient development.
|
||||
- Familiarity with React.js, JavaScript, and Git.
|
||||
|
||||
### Setting Up the Development Environment 🚀
|
||||
|
||||
1. Clone the repository:
|
||||
```bash
|
||||
@@ -78,55 +119,43 @@ To get started with development, you need:
|
||||
pnpm start
|
||||
```
|
||||
|
||||
This will start the development server at `http://localhost:3000`. Any changes made to the code will be reflected immediately.
|
||||
The server will start at `http://localhost:5173`. Changes to the code will auto-refresh in your browser.
|
||||
|
||||
### Folder Structure
|
||||
|
||||
- `src/`: Contains all the source code for the frontend.
|
||||
- `public/`: Static files such as images, icons, and fonts.
|
||||
- `components/`: Reusable components like headers, footers, and forms.
|
||||
- `pages/`: Individual pages of the website like home, about, and download pages.
|
||||
- `styles/`: CSS files for styling the website.
|
||||
|
||||
### Contribution Guidelines
|
||||
## Contributing 🤝
|
||||
|
||||
- **Fork the repository** and clone your fork locally.
|
||||
- Create a new branch for each feature or bug fix:
|
||||
We welcome contributions! Here’s how you can contribute:
|
||||
|
||||
1. **Fork the repository**:
|
||||
Click the “Fork” button at the top of the page to create your copy.
|
||||
|
||||
2. **Create a branch** for your feature or bug fix:
|
||||
```bash
|
||||
git checkout -b feature-name
|
||||
```
|
||||
- Make your changes, commit them with clear and descriptive commit messages.
|
||||
- Push your changes to your fork and create a pull request to the `main` branch.
|
||||
|
||||
### Code Style and Best Practices
|
||||
3. **Make your changes**:
|
||||
Write clean and well-documented code.
|
||||
|
||||
- Follow a consistent style guide for JavaScript and CSS.
|
||||
- Use meaningful variable names, and avoid long functions.
|
||||
- Comment complex logic to explain the reasoning behind it.
|
||||
- Use `pnpm run lint` to check for code style issues before committing.
|
||||
4. **Commit your changes**:
|
||||
```bash
|
||||
git commit -m "Add: Feature description"
|
||||
```
|
||||
|
||||
### Testing
|
||||
5. **Push to your fork** and submit a pull request:
|
||||
```bash
|
||||
git push origin feature-name
|
||||
```
|
||||
|
||||
To test changes locally, run:
|
||||
```bash
|
||||
pnpm run test
|
||||
```
|
||||
|
||||
This will run the Jest test suite for any components or functions that have been set up for testing.
|
||||
|
||||
## Contributing
|
||||
## License 📜
|
||||
|
||||
We welcome contributions from everyone! If you'd like to contribute to Snigdha OS Web Dev, please follow these steps:
|
||||
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.
|
||||
|
||||
1. Fork the repository.
|
||||
2. Clone your fork locally and create a new branch.
|
||||
3. Make your changes and test them.
|
||||
4. Create a pull request with a clear description of your changes.
|
||||
|
||||
If you have any ideas or suggestions, please feel free to open an issue or start a discussion.
|
||||
|
||||
## License
|
||||
|
||||
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for more information.
|
||||
|
||||
<div align="center">Thanks for contributing to Snigdha OS Web Dev!</div>
|
||||
<div align="center">
|
||||
💖 Thanks for being part of the Snigdha OS Web Dev journey! 🌟
|
||||
</div>
|
Reference in New Issue
Block a user