GV is a blazing-fast, next-generation fullstack web framework written in Go, designed to make building modern web applications a breeze! 💨
GV combines the power of Go on the backend with the flexibility of modern frontend frameworks like React, Vue, and Svelte. With features like Hot Module Replacement (HMR), CDN dependency management, and a plugin container, GV offers a streamlined development experience that boosts productivity and performance. ⚡
Get started with GV in just a few steps!
- ⬇️ Clone the Repository:
git clone [email protected]:struckchure/gv.git- 🛠️ Navigate to the Project Directory:
cd gv- ✅ Install Dependencies:
go mod tidyHere are some basic examples to get you started with GV:
➕ Adding a Dependency
To add a new dependency to your project, use the add command:
gv add esm:[email protected]This command updates the config.yaml file and installs the necessary TypeScript definitions.
🔄 Syncing Dependencies
To sync your project's dependencies based on the config.yaml file, use the sync command:
gv syncThis ensures all dependencies are installed and up-to-date.
✨ Creating a New Project
To create a new project using one of the provided templates:- Run the
newcommand:
gv new-
Follow the prompts to enter your project name, package name, and choose a template (Blank, React, Vue, Svelte).
-
GV will set up the project structure and install the necessary dependencies.
- 🔥 Hot Module Replacement (HMR): Automatically update your frontend without full page reloads.
- 📦 CDN Dependency Management: Easily manage frontend dependencies from CDNs.
- 🔌 Plugin Container: A powerful plugin system for extending GV's functionality.
- 📝 Automatic TypeScript Definition Generation: Keep your frontend types in sync with your Go backend.
- ⚡ Blazing-Fast Performance: Go's efficiency ensures excellent backend performance.
- 🧩 Flexible Frontend: Supports React, Vue, Svelte, and more.
| Technology | Description | Link |
|---|---|---|
| Go | Backend language | https://go.dev/ |
| esbuild | JavaScript bundler | https://esbuild.github.io/ |
| React | Frontend library | https://react.dev/ |
| Vue | Frontend framework | https://vuejs.org/ |
| Svelte | Frontend compiler | https://svelte.dev/ |
| Echo | go web framework | https://echo.labstack.com/ |
We welcome contributions to GV! Here are the guidelines:
- 💡 Fork the Repository: Create your own fork of the project.
- 🌿 Create a Branch: Make your changes in a separate branch.
- ✍️ Commit Changes: Add clear and concise commit messages.
- 🧪 Test: Make sure tests pass.
- 🚀 Submit a Pull Request: Send your changes for review.
This project is licensed under the MIT License.