A powerful desktop application built with Java Swing that helps developers quickly scaffold new projects across multiple technologies through an intuitive graphical interface and socket-based backend.
-
🚀 Quick project scaffolding for multiple technologies:
- React with JavaScript
- React with TypeScript
- Node.js MVC
- SCSS templates
- HTML/CSS projects
-
💻 User-friendly desktop interface built with Java Swing
-
🔄 Real-time project generation through socket communication
-
📁 Custom project location selection
-
📝 Automated README generation for new projects
-
🎯 Pre-configured project templates following best practices
Before running the application, ensure you have:
- Java Development Kit (JDK) 8 or higher installed
- Sufficient disk space for project generation
- Network access for socket communication
- Clone the repository:
git clone https://github.com/maruf-pfc/QuickGen.git
- Navigate to the project directory:
cd QuickGen
- Compile the server:
javac QuickGenServer.java
- Compile the client:
javac QuickGenClient.java
- Start the server:
java QuickGenServer
- Launch the desktop application:
java QuickGenClient
-
In the application:
-
Select your desired technology
-
Enter a project name
-
Choose a directory for project creation
-
Click "Generate Project"
📦QuickGen
┣ 📂quickgen
┃ ┣ 📂opt
┃ ┃ ┗ 📂quickgen
┃ ┃ ┃ ┣ 📜QuickGen.jar
┃ ┃ ┃ ┗ 📜icon.png
┃ ┗ 📂usr
┃ ┃ ┗ 📂share
┃ ┃ ┃ ┗ 📂applications
┣ 📂templates
┃ ┣ 📂html-css
┃ ┣ 📂nodejs-mvc
┃ ┣ 📂react-js
┃ ┣ 📂react-ts
┃ ┗ 📂scss
┣ 📜.gitignore
┣ 📜LICENSE
┣ 📜QuickGen.jar
┣ 📜QuickGenClient.java
┣ 📜QuickGenServer.java
┣ 📜README.md
┣ 📜create-deb.js
┣ 📜create-exe.js
┣ 📜demo.png
┣ 📜executable.md
┣ 📜launch4j-config.xml
┣ 📜manifest.txt
┣ 📜setup-launch4j.js
┗ 📜setup.js
- Open this link Create Executable File
Each technology template includes:
- Basic project configuration
- Required dependencies
- Sample components/files
- Development scripts
- Generated README with setup instructions
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
- Create a new directory in
templates/
for your technology - Include all necessary project files and configurations
- Update the technology mapping in
QuickGenServer.java
- Add template-specific README instructions
- Submit a pull request with your changes
The application includes comprehensive error handling for:
- Invalid project names
- Directory access issues
- Network communication errors
- Template missing errors
- Server connection problems
To modify the application:
- Update GUI components in
QuickGenClient.java
- Modify server logic in
QuickGenServer.java
- Add/update templates in the
templates/
directory - Recompile both client and server components
This project is licensed under the MIT License - see the LICENSE file for details.
- Java Swing for the desktop interface
- Socket programming for client-server communication
- Various project template maintainers
- Open source community
For support, please:
- Check existing Issues
- Create a new issue with detailed information
- Join our Discord community
- Additional technology templates
- Custom template configuration
- Project dependency updates
- Multi-language support
- Template versioning
- Your Name - Initial work - YourUsername
See also the list of contributors who participated in this project.