This project provides a coding assistant bot that can perform various tasks such as generating components, editing files, setting up projects, and more.
- Demo
- Usage
- Installation
- Capabilities
- Technologies Used
- Best Features
- Future Improvements
- Contributing
- License
Check out the watch demo video here
For detailed usage instructions, please refer to the check.md file.
To install the project, follow these steps:
-
Clone the repository:
git clone https://github.com/abdurehman760/coding-assistant
-
Navigate to the project directory:
cd coding-assistant
-
Install the dependencies:
npm install
The Coding Assistant Bot can perform a variety of tasks, including but not limited to:
- Generating components for different frameworks (React, Vue, Angular, etc.)
- Creating text files with detailed content
- Generating files with specific extensions
- Editing existing files based on user instructions
- Setting up new projects (NestJS, React)
- Installing dependencies
- Running build commands
- Reviewing code in specified directories
- Performing file operations (delete, rename, copy, move)
- Executing shell commands
The Coding Assistant Bot is built using the following technologies:
- Node.js: JavaScript runtime environment
- NestJS: A progressive Node.js framework for building efficient, reliable, and scalable server-side applications
- OpenAI API: For generating code and responses
- TypeScript: A strongly typed programming language that builds on JavaScript
- File System (fs): For file operations
- AI-Powered Code Generation: Utilizes OpenAI's API to generate high-quality code based on user prompts.
- Comprehensive File Management: Supports various file operations such as generating, editing, deleting, renaming, copying, and moving files.
- Project Setup: Can set up new projects for popular frameworks like NestJS and React.
- Code Review: Provides detailed code reviews, covering aspects like structure, naming conventions, and potential improvements.
- CLI Interface: Easy-to-use command-line interface for interacting with the bot.
- Start and Stop: Easily start the application with
npm start
and stop it by typing@stop
in the terminal. - Colored Terminal Output: Uses
colorette
to provide colored output in the terminal for better readability and user experience.
- Enhanced Error Handling: Improve error handling to provide more informative and user-friendly error messages.
- Support for More Frameworks: Extend support to additional frameworks and languages.
- Integration with CI/CD: Integrate with continuous integration and continuous deployment pipelines for automated testing and deployment.
- User Authentication: Add user authentication and authorization to secure the bot's functionalities.
- Web Interface: Develop a web-based interface for users who prefer a graphical user interface over the CLI.
- Memory and Context Awareness: Implement memory and context awareness to provide more personalized and contextually relevant responses.
If you would like to contribute to this project, please follow these steps:
- Fork the repository.
- Create a new branch (
git checkout -b feature-branch
). - Make your changes.
- Commit your changes (
git commit -m 'Add some feature'
). - Push to the branch (
git push origin feature-branch
). - Open a pull request.
This project is licensed under the MIT License. See the LICENSE file for details.