great-dev v1.0.4
great-dev ๐
A powerful CLI tool for JavaScript and TypeScript development with hot reloading. ๐ฅ
Features ๐
- ๐ Hot reloading for JavaScript and TypeScript files
- ๐งฐ Intelligent runtime detection and multi-runtime support
- ๐ Configurable file watching with debounce
- ๐ฆ TypeScript compilation (file-based or in-memory)
- ๐งต Worker thread support for improved performance
- ๐ง Memory optimization
- ๐ Detailed logging with multiple levels
- ๐ Optional meme mode for fun output
Installation ๐ฅ
npm install -g great-dev
Basic Usage ๐
great-dev -p ./src
This will start watching the ./src
directory for changes and automatically reload your application.
Configuration โ๏ธ
You can configure great-dev using command-line options or a configuration file.
Command-line Options ๐ฅ๏ธ
-p, --path <paths...>
: Paths to watch for changes-i, --ignore <patterns...>
: Patterns to ignore-w, --watch-delay <ms>
: Debounce delay for file watching (ms)-t, --ts-config <path>
: Path to tsconfig.json-l, --log-level <level>
: Log level (info, debug, verbose)-m, --meme-mode
: Enable meme mode for fun output--worker-threads <number>
: Number of worker threads to use
Example:
great-dev -p ./src -i node_modules -w 500 -l debug --worker-threads 4
Configuration File ๐
Create a .greatdevrc.json
file in your project root:
{
"paths": ["./src"],
"ignore": ["node_modules/**", "**/*.test.ts"],
"watchDelay": 300,
"tsConfigPath": "tsconfig.json",
"logLevel": "info",
"memeMode": false,
"workerThreads": 2
}
Advanced Features ๐ง
Logging Levels ๐
great-dev supports multiple logging levels:
info
: Basic information (default)debug
: More detailed information for troubleshootingverbose
: Highly detailed logs for in-depth analysis
Set the log level using the -l, --log-level
option or in the configuration file.
Worker Threads ๐งต
Improve performance by utilizing worker threads. Specify the number of worker threads using the --worker-threads
option or in the configuration file.
Memory Optimization ๐พ
great-dev automatically optimizes memory usage by periodically running garbage collection and adjusting the heap size limit.
Meme Mode ๐
Enable meme mode for fun ASCII art output using the -m, --meme-mode
option or in the configuration file.
Troubleshooting ๐ง
- If you encounter any issues, check the console output for error messages.
- Ensure that your project's dependencies are installed.
- Verify that the specified paths and ignore patterns are correct.
- Check if your
tsconfig.json
is correctly configured, especially theoutDir
setting.
Contributing ๐ค
Contributions are welcome! Please feel free to submit a Pull Request.
License ๐
This project is licensed under the MIT License.