https://github.com/micqo/galvanico
Galvanico is an open-source, browser-based strategy game inspired by Ikariam, but set in the Industrial Age. Players develop their own industrial cities, research new technologies, manage resources, and engage in trade and diplomacy in a world powered by electricity and innovation.
https://github.com/micqo/galvanico
browser-game cockroachdb game game-development golang nats open-source vue vue3
Last synced: about 1 month ago
JSON representation
Galvanico is an open-source, browser-based strategy game inspired by Ikariam, but set in the Industrial Age. Players develop their own industrial cities, research new technologies, manage resources, and engage in trade and diplomacy in a world powered by electricity and innovation.
- Host: GitHub
- URL: https://github.com/micqo/galvanico
- Owner: MIcQo
- License: apache-2.0
- Created: 2025-03-21T17:41:37.000Z (about 2 months ago)
- Default Branch: main
- Last Pushed: 2025-04-05T03:55:07.000Z (about 1 month ago)
- Last Synced: 2025-04-05T04:24:52.658Z (about 1 month ago)
- Topics: browser-game, cockroachdb, game, game-development, golang, nats, open-source, vue, vue3
- Language: Go
- Homepage:
- Size: 205 KB
- Stars: 4
- Watchers: 1
- Forks: 1
- Open Issues: 17
-
Metadata Files:
- Readme: readme.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# Galvanico
[](CONTRIBUTING.md)
Galvanico is an open-source, browser-based strategy game inspired by Ikariam, but set in the Industrial Age. Players develop their own industrial cities, research new technologies, manage resources, and engage in trade and diplomacy in a world powered by electricity and innovation.
## Features
* **Industrial Age Setting:** Immerse yourself in a world of steam engines, early electricity, and burgeoning industries.
* **City Building:** Construct and manage various industrial buildings, including factories, power plants, and research labs.
* **Research & Technology:** Unlock new technologies to improve your city's efficiency, military strength, and economic power.
* **Resource Management:** Gather and manage resources like coal, iron, and electricity to fuel your industrial empire.
* **Trade & Diplomacy:** Interact with other players through trade agreements, alliances, and diplomacy.
* **Military Expansion:** Build and command industrial-era military units to defend your city and conquer new territories.
* **Electricity System:** A core mechanic, managing and generating electricity to power your industrial buildings.
* **Open Source:** Contribute to the development and shape the future of Galvanico.## Getting Started
### Prerequisites
* Go (latest stable version)
* Node.js (latest LTS recommended)
* npm (or yarn)
* A modern web browser### Installation
1. Clone the repository:
```bash
git clone https://github.com/MIcQo/galvanico.git
cd galvanico
```2. Install backend dependencies (Go):
```bash
go mod tidy
```
3. Stand up required services:```bash
docker compose up -d
```4. Configure environment variables:
```bash
cp config.example.yaml config.yaml
```Edit `config.yaml` with your desired settings.
5. Initialize the database:
First, you need to create the inital bun migration schema:
```bash
go run main.go db init
```5. Start the backend server:
```bash
go run main.go serve
```4. Install frontend dependencies (Vue 3):
```bash
cd client
npm install # or yarn install
cd ..
```5. Start the frontend development server:
```bash
cd client
npm run dev # or yarn dev
```6. Open your browser and navigate to `http://localhost:5173`. (or the port that Vue dev server outputs)
## Development
We welcome contributions from the community! Please read our [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines on how to contribute.
### Project Structure
```
galvanico/
├── cmd/ # Go commands
├── client/ # Frontend code (Vue 3, etc.)
├── internal/ # Internal code between server parts (if any)
├── migrations/ # Migration files
├── docs/ # Documentation
├── docker-compose.yaml # Docker compose file
├── CONTRIBUTING.md # Contribution guidelines
├── LICENSE # License information
└── README.md # This file
```### Technologies Used
* **Frontend:** [Vue 3](https://vuejs.org/) , [TypeScript](https://www.typescriptlang.org/)
* **Backend:** [Go](https://golang.org/)
* **Database:** [PostgreSQL](https://www.postgresql.org/) (actually, we
use [CockroachDB](https://github.com/cockroachdb/cockroach))
* **Broker:** [NATS](https://github.com/nats-io/nats-server)## Contributing
We encourage you to contribute to Galvanico! Here's how you can get involved:
* **Report Bugs:** If you find a bug, please open an issue on GitHub.
* **Suggest Features:** Share your ideas for new features and improvements.
* **Submit Pull Requests:** Contribute code, documentation, or other improvements.
* **Help with Design:** Contribute to the game's visual design and user interface.
* **Translate the Game:** Help us make Galvanico accessible to a wider audience.Please read our [CONTRIBUTING.md](CONTRIBUTING.md) for detailed guidelines.
## License
Galvanico is released under the [Apache 2.0 License](LICENSE).
## Acknowledgments
* Inspired by [Ikariam](https://www.ikariam.com/).
* Thanks to all contributors and the open-source community.## Contact
For any questions or inquiries, please open an issue on GitHub.
---
**Let's build the industrial age together!**