A browser-based farming simulation game built from scratch using HTML5 Canvas, CSS, and Vanilla JavaScript.
Farm Simulator is a 2D farming simulation game currently under active development. The goal of this project is to create a complete farming experience entirely from scratch without using any external game engine or JavaScript framework.
Instead of relying on existing libraries, every major system—including the game loop, rendering engine, camera, world generation, player movement, farming mechanics, inventory, economy, and save system—is being designed and implemented manually.
This project serves both as a learning journey and as a demonstration of software architecture, clean code principles, and game development using modern JavaScript.
v0.2.0 – Core Farming Complete
- Project Setup
- Game Loop
- Camera
- World Generation
- Tile Registry
- Hoe Tool
- Seed Planting
- Watering
- Crop Growth
- Harvesting
- Inventory
- Hotbar
- Item Registry
- Crop Registry
🚧 Currently working on Sprint 2.5 – Visual Polish
- Trees
- Rocks
- Flowers
- Procedural decorations
- Expandable farm
- Shop system
- Coin system
- Buying & selling
- Farm upgrades
- Day & Night cycle
- Weather
- Seasons
- Save & Load
- Auto Save
- NPC Villagers
- Animals
- Fishing
- Events
- Exploration
- Hunger
- Stamina
- Wildlife
- Survival mechanics
- Dynamic difficulty
- HTML5
- CSS3
- Vanilla JavaScript (ES6+)
- HTML5 Canvas
- Git
- GitHub
- Object-Oriented Design
- Modular Architecture
- Procedural World Generation
- Data-Driven Tile Registry
- Brush-Based Terrain Generation
- Camera System
- Collision Detection
- Custom Input System
- Tool System
- Clean Git Workflow
FarmSimulator/
│
├── assets/
├── js/
│
├── README.md
├── TODO.md
├── DEVLOG.md
├── CHANGELOG.md
├── LICENSE
└── index.html
- Project Setup
- Game Loop
- Camera
- Player Movement
- Procedural World
- Brush System
- Tile Registry
- Hoe Tool
- Item Registry
- Inventory
- Seeds
- Watering Can
- Crop Growth
- Harvesting
- Trees
- Rocks
- Flowers
- World Decoration
- Shop
- Money
- Farm Expansion
- Save / Load
- World Seed
- Player Progress
- Pixel Art
- Animations
- Sound Effects
- UI Improvements
This project focuses on improving practical skills in:
- JavaScript
- HTML5 Canvas
- Game Development
- Object-Oriented Programming
- Software Architecture
- Git & GitHub
- Debugging
- Performance Optimization
Every completed milestone follows a structured workflow:
- ✅ Planning
- ✅ Development
- ✅ Testing
- ✅ Git Commit
- ✅ Git Push
- ✅ TODO Update
- ✅ DEVLOG Update
- ✅ CHANGELOG Update
- ✅ Git Tag
- ✅ GitHub Release
The long-term vision of Farm Simulator is to become a polished browser-based farming game featuring procedural world generation, relaxing gameplay, expandable farming mechanics, and clean software architecture.
Beyond creating a game, the project aims to demonstrate how medium-sized JavaScript applications can be designed, organized, and maintained using professional development practices.
This project is licensed under the MIT License.