#genesis #go #starter #generate #rust

app genesis_rs

Enabling developers with Genesis. Genesis is a powerful, flexible, and user-friendly project starter tool designed for Go and Rust developers. It streamlines the initial setup process, allowing developers to focus on what truly matters: building great applications and solving business problems.

15 stable releases

1.2.3 Aug 10, 2024
1.2.2 Aug 7, 2024
1.2.0 Jul 23, 2024

#832 in Development tools

Download history 423/week @ 2024-07-11 170/week @ 2024-07-18 108/week @ 2024-07-25 223/week @ 2024-08-01 164/week @ 2024-08-08 9/week @ 2024-08-15

397 downloads per month

MIT license

26KB
526 lines

Genesis 🌱

Genesis is a powerful, flexible, and user-friendly project starter tool designed for Go and Rust developers. It streamlines the initial setup process, allowing developers to focus on what truly matters: building great applications and solving business problems.

genesis

Get Started

cargo install genesis_rs
genesis -h

🚀 Why Genesis?

When developing software, setting up a new project can be a time-consuming and oftenly a frustrating process. Genesis solves this problem by:

  • Quick Setup and Interactive CLI: Quickly initialize Go and Rust projects using your CLI for easy project configuration
  • Language Support: Support for Go and Rust, with room for expansion
  • Customizable Paths: Flexibly set project locations
  • Automatic Dependency Management: Run go mod tidy for Go and cargo build for Rust projects
  • Cross-Platform: Works on Windows, macOS, and Linux-based systems

By handling the initial setup, Genesis allows developers to immediately dive into application core functionality and business logic, significantly reducing time-to-market for new ideas.s

🛠 Installation

Install Genesis using Cargo, the Rust package manager:

cargo install genesis_rs

📘 Usage

Genesis offers both interactive and non-interactive modes to suit your workflow:

Interactive Mode

Simply run:

genesis run

Follow the prompts to select your project language and specify the project name.

Non-Interactive Mode

Specify the language and path directly:

genesis run --language <LANG> --path /path/to/your/project

For example if you are using a Debian system:

genesis run --language rust --path /home/user/Desktop

Available Commands

  • genesis: Display version and available commands
  • genesis run: Start the interactive project setup
  • genesis run --language <LANG> --path <PATH>: Run with specific language and path
  • genesis update : Update genesis to the latest version
  • genesis --help: Show the help message with all available options

🤝 Contributing

We welcome contributions to Genesis! Whether it's adding new features, improving documentation, or reporting bugs, your help is appreciated. Please feel free to:

  1. Submit issues
  2. Fork the repository
  3. Send pull requests

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

📞 Contact

If you have any questions or need support, feel free to:

Dependencies

~15–25MB
~431K SLoC