Abhishek-Mallick / Abhishek-Mallick/universal-box

core: `universal-box add storage` command

Đang mở
#111 1 bình luận 0 reaction 0 người được giao Xem trên GitHub
🤔Needs discussion enhancement hacktoberfest
Ngôn ngữ chính
JavaScript
Star
47
Fork
41
Chỉ số merge pull request
Không có pull request nào được merge trong 30 ngày

Mô tả

## Feature Request for `universal-box add `

**Is your feature request related to a problem you're trying to solve with Universal-Box? Please describe.**
This feature aims to enhance **Universal-Box** by allowing users to dynamically add components to their applications using the command `universal-box add `. This flexibility will enable developers to customize their projects without relying on fixed templates.

**Describe the solution you'd like**
Implementing a command structure that allows users to add features such as storage and authentication dynamically. For example, when a user runs `universal-box add storage`, the following workflow should occur:
1. **Check the Existing Project Structure**: Analyze the current project setup to understand its structure.
2. **Determine the Type of Project**: Identify the type of project based on existing files.
3. **Ask the User Which Storage Solution to Integrate**: Prompt the user with options like Firebase, AWS S3, or Local Storage.
4. **Install Relevant Packages**: Based on the user's choice, install necessary packages (e.g., `npm install firebase` for Firebase).
5. **Create a Configuration File**: Generate a configuration file (e.g., `storageConfig.js`) with default settings specific to the chosen storage solution.
```javascript
// storageConfig.js
const firebaseConfig = {
apiKey: "YOUR_API_KEY",
authDomain: "YOUR_AUTH_DOMAIN",
projectId: "YOUR_PROJECT_ID",
storageBucket: "YOUR_STORAGE_BUCKET",
messagingSenderId: "YOUR_MESSAGING_SENDER_ID",
appId: "YOUR_APP_ID"
};
```

6. **Generate Necessary Directories**: Create a directory (e.g., `/src/storage`) to organize all storage-related code.

7. **Update Documentation**: Automatically update `README.md` to include instructions on how to use the newly added functionality.

### How would this feature improve Universal-Box?
- Implementing this feature will significantly enhance Universal-Box by allowing developers to tailor their applications according to their specific needs. It promotes best practices by ensuring that all necessary configurations and dependencies are handled automatically, leading to better collaboration and fewer bugs in applications.

### Additional context
- I have some doubts about how the codebase will understand and customize itself effectively. One potential solution could be utilizing an in-house Language Model (LLM) tailored to our needs, rather than relying on third-party APIs. This approach would ensure long-term sustainability and cost-effectiveness for developers.
- The same logic applies to implementing commands like `universal-box add auth`. We can start with the `universal-box add storage` feature and then replicate this approach for other commands.

This issue is open to discussions! Feel free to join our [Discord](https://discord.com/invite/aWtZQTQPe4) for further conversation. I will also be creating similar issues like `universal-box add auth` if anyone wants to take that up.

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Hướng nghiên cứu

Look at the existing CLI command structure in the codebase, likely in a commands or cli directory. Understand how the project currently scaffolds templates. The feature requires analyzing project structure, prompting users, installing packages, generating config files like storageConfig.js, and updating documentation. Start by examining how the 'add' command would be registered and what utilities exist for file generation and package installation.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
aws, firebase, javascript, node.js
Lĩnh vực
cli, tooling
Loại issue
Tính năng
Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
45/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.