--- title: SmolWorld emoji: 🌐 colorFrom: yellow colorTo: pink sdk: static sdk_version: latest python_version: 3.12 suggested_hardware: t4-small suggested_storage: small app_file: index.html short_description: Small-World Network of Evolving Spikey Neural Networks pinned: true license: apache-2.0 thumbnail: >- https://cdn-uploads.huggingface.co/production/uploads/smolworld/thumbnail.png --- ## Overview SmolWorld is a lightweight JavaScript-based simulation engine designed for spikey neural network visualization and evolution. Built with performance and extensibility in mind, it provides a robust foundation for research and educational purposes in network science. ## Features ### Core Architecture - Entity Component System (ECS) for efficient entity management - Layer-based rendering system with multiple contexts - Terminal interface with command history - Advanced camera controls with smooth transitions - Comprehensive vector and matrix math utilities ### Technical Components - **Scene Management** - Multi-layer rendering (Game, GUI, Debug, Terminal) - Entity management with transform hierarchy - Scene-wide input handling system - **Interactive Terminal** - Toggle visibility with backtick (`) - Command history navigation - Scrollable output buffer - Smooth animation transitions - **Camera System** - WASD navigation controls - Mouse wheel zoom functionality - Smooth lerp-based transitions - Position and zoom reset capabilities - **Debug Features** - Real-time FPS counter - Camera position monitoring - Entity bounding box visualization - Zoom control interface ## Installation ### Prerequisites - Modern web browser - Local development server (optional) ### Getting Started 1. Clone the repository ```bash git clone https://huggingface.co/spaces/p3nGu1nZz/smolworld cd smolworld ``` 1. Open index.html in your browser or serve through a local server ### Controls - **WASD**: Camera movement - **Mouse Wheel**: Zoom in/out - **Backtick (`)**: Toggle terminal - **Plus/Minus**: Manual zoom controls ## Contributing Contributions are welcome! Please feel free to submit issues and pull requests. ## Citation If you use this project in your research, please cite: ```bibtex @software{smolworld, author = {K. Rawson}, title = {SmolWorld: Small-World Spikey Network Simulation}, year = {2025}, publisher = {Huggingface}, journal = {Huggingface space}, howpublished = {\url{https://huggingface.co/spaces/p3nGu1nZz/smolworld}} } ``` ## License This project is licensed under the Apache 2.0 License.