Skip to content

yllvar/DeepSeek-Engineer

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

10 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Screenshot 2025-01-25 at 17 11 12

๐Ÿš€ DeepSeek Engineer: Code Faster, Smarter, and More Efficiently! ๐Ÿš€

DeepSeek Engineer is your ultimate tool for writing code faster, taking on more projects, and looking like a coding wizard! ๐Ÿง™โ€โ™‚๏ธ Whether you're a seasoned developer or just starting out, this project is designed to supercharge your workflow and make coding a breeze. Let's dive in! ๐ŸŒŠ


๐Ÿ› ๏ธ Getting Started

1. Install Dependencies

First things first, let's get everything set up. Run the following command to install all the necessary dependencies:

npm install

2. Set Up Environment Variables

Next, create a .env.local file in the root directory and add your DeepSeek API key:

DEEPSEEK_API_KEY=your_api_key_here

3. Start the Development Server

Now, let's fire up the development server:

npm run dev

Once the server is running, you can access the application at http://localhost:3000.


๐Ÿ—๏ธ Code Architecture

The project is built with a modular architecture, ensuring a clear separation of concerns. Here's a breakdown of the core components:

Core Components

  • src/components/Chat.tsx: The main chat interface component.
  • src/hooks/useChat.ts: Custom hook for managing chat functionality.
  • src/utils/deepseek-client.ts: Handles integration with the DeepSeek API.
  • src/utils/file-operations.ts: Manages file system operations.
  • src/utils/conversation-manager.ts: Handles chat history and context management.

โœจ Key Features

1. Chat Interface

  • Real-time message streaming ๐Ÿ’ฌ
  • Markdown support ๐Ÿ“
  • Code syntax highlighting ๐ŸŒˆ
  • Error handling and loading states โš ๏ธ

2. File Operations

  • File reading and writing ๐Ÿ“‚
  • Directory traversal ๐Ÿ—‚๏ธ
  • Diff generation for file modifications ๐Ÿ”„
  • Safety checks and validations โœ…

3. AI Integration

  • Context-aware responses ๐Ÿค–
  • Code analysis capabilities ๐Ÿ”
  • Intelligent code modifications ๐Ÿ› ๏ธ
  • Rate limiting and error handling โณ

๐ŸŽฎ Usage

Basic Chat

Simply type your questions or requests in the chat interface. The AI will respond with relevant code, explanations, or suggestions.

File Operations

Use the following commands in the chat:

  • /add <path>: Add a file or directory to the conversation context.
  • /ls <path>: List contents of a directory.
  • /cat <path>: Display contents of a file.
  • /exec <command>: Execute a shell command (use with caution).

Code Modifications

When requesting code changes, the AI will:

  1. Analyze the existing code.
  2. Generate appropriate modifications.
  3. Show a diff preview of changes.
  4. Apply the changes upon confirmation.

๐Ÿš€ Development

Building for Production

npm run build
npm start

Running Tests

npm run test

Linting

npm run lint

๐Ÿ”ฎ Future Improvements

1. Enhanced IDE Integration

  • VSCode extension ๐Ÿ–ฅ๏ธ
  • Direct file editing capabilities โœ๏ธ
  • Syntax-aware code modifications ๐Ÿง 

2. Advanced Features

  • Multi-file context understanding ๐Ÿ“š
  • Project-wide refactoring ๐Ÿ”ง
  • Test generation ๐Ÿงช
  • Documentation generation ๐Ÿ“„

3. User Experience

  • Custom themes ๐ŸŽจ
  • Keyboard shortcuts โŒจ๏ธ
  • Command history โช
  • Context persistence ๐Ÿ’พ

4. Security

  • Role-based access control ๐Ÿ”
  • Secure file operations ๐Ÿ›ก๏ธ
  • API key rotation ๐Ÿ”„

5. Performance

  • Response caching โšก
  • Optimized file operations ๐Ÿš€
  • Reduced API calls ๐Ÿ“‰

๐Ÿค Contributing

We welcome contributions from the community! Whether you're fixing a bug, adding a feature, or just want to brainstorm ideas, we'd love to have you on board. Please feel free to submit a Pull Request or reach out to us. We believe there are smarter people out there, and we're eager to learn from you! ๐ŸŒŸ


๐Ÿ“œ License

This project is licensed under the MIT License. For more details, see the LICENSE file.


๐Ÿ™ Acknowledgments


๐Ÿ†˜ Support

For support, please open an issue in the GitHub repository or contact the maintainers.


๐Ÿšจ Important Note on File Access

Local Development vs. Deployed Environment

  1. Local Development:

    • When running the application locally on your machine, it can access local files.
    • Commands like /add, /ls, and /cat will work as expected, allowing you to interact with files on your local machine.
  2. Deployed on Vercel:

    • The deployed application cannot access files on your local machine.
    • File operations will not work in the deployed environment as it lacks access to your local file system.

Intended Use

  • Local Development: The file access features are primarily for development and testing on your local machine.
  • Deployed Environment: When deployed, the application should be adapted to work with cloud storage solutions or other methods of file handling that don't rely on local file access.

Adapting for Deployment

To make the application work similarly when deployed, consider the following steps:

  1. Implement a file upload feature to send local files to the server.
  2. Use cloud storage (like AWS S3 or Google Cloud Storage) to store and access files.
  3. Modify the file operation commands to work with the cloud storage instead of the local file system.

Current Limitations

The current implementation doesn't distinguish between local and deployed environments, which is why you might experience issues when trying to access local files through the deployed application.


Made with โค๏ธ and a touch of laziness by Yllvar. ๐Ÿ˜„


Happy coding! ๐ŸŽ‰

About

Save time and boost productivity with DeepSeek Engineer, a powerful coding assistant powered by DeepSeek's R1 capabilities. This project is designed to help you write code faster, debug smarter, and streamline your development workflow.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors