News and Roadmap
Here you can find news about the core NeoHaskell project. For real time updates, you should probably join the Discord server, or follow the NeoHaskell Twitter account.
Sprint Planning
NeoHaskell grows and thrives with the support of its amazing community! Below you'll find our sprint planning, complete with goals and GitHub issues. If you see something you'd like to help with, feel free to jump in by commenting on an issue or shooting a message over Discord. Every contribution, no matter how small, makes a difference!
Sprint 2: 2025/03/27 - 2025/04/16 (View on GitHub)
Goals:
Complete the foundational implementation of the Event Store module
GitHub Issues:
Issue #144 — Define Minimal Event Schema for the Event Store
Issue #145 — Specify Event Store Storage and Retrieval Operations
Issue #146 — Identify and Document Event Store Error Cases
Issue #147 — Ensure the Event Store Persistence Interface is Agnostic
Issue #148 — Create a Simple Backend Implementation for the Event Store
Issue #149 — Implement Basic Write-Only Behavior for the Event Store
Issue #150 — Enable Event Retrieval in Correct Order from the Event Store
Issue #152 — Implement Automatic Ordered Insertion with Optimistic Locking
Issue #154 — Enforce Multi-Stream Isolation in the Event Store
Issue #155 — Ensure Idempotency in the Event Store (Optional Event ID/Hash)
Issue #156 — Implement Backoff/Retry for Automatic Inserts on Conflict
Issue #157 — Validate Concurrent Write Order Consistency in the Event Store
Sprint 1: 2025/03/13 - 2025/03/27 (View on GitHub)
Goals:
Have an MVP of the
neo
CLI tool workingGitHub Issues:
Issue #68 — Print always a message about reporting issue on command failure
Issue #126 — Move forEach from Array to Task to Avoid Cyclic Dependency
Issue #70 — All Neo (sub)commands should have a help command that explains how to use it properly
Issue #133 — Initialize projects with neo init
Issue #109 — CLI Command that allows running the project
Issue #138 — Research how to provide a REPL using the Nix environment, rather than cabal- DEPRIORITIZED FOR NOWIssue #114 — 'neo' is not available yet
Issue #134 — Create the installation script for the website
Announcements
- NeoHaskell v0.5.0 - HTTP, TOML, Nested Actions Now Executed and Major Refactoring
- NeoHaskell v0.4.0: Update with Concurrency Fixes and Architectural Improvements
- Understanding Triggers in NeoHaskell: A Gateway to Event-Driven Programming
- Introducing NeoHaskell v0.3.0: Triggers, Actions, and Services
- Announcing NeoHaskell v0.2.0: Bringing Elm-Inspired Architecture to CLI Apps
- DevLog 00002 - A main loop working
- DevLog 00001 - Command Line Updates
- Introducing NeoHaskell: A beacon of joy in a greyed tech world
Roadmap
The roadmap represents a rough view of the progress of the different parts of the project. If one box is checked doesn't mean it is 100% done, as software usually is an infinite work, it means that it is usable, but always with room for improvement.
- Array
- Basics
- Bytes
- Char
- Function utils
- IO
- Int
- LinkedList
- Map
- Maybe
- Record
- Result
- Text
- Tuple
- Unit
- Unknown
- Var
- Version
- Async IO operations - Should be reworked into Async Tasks
- Channel
- ConcurrentVar
- Action Handling
- Trigger Handling
- Task core module
- File tasks core module
- Path tasks core module
- Subprocess tasks core module
- Build CLI command
- Autoinstaller
- Test command
- Run command
- Time core module
- File Actions
- Path Actions
- Subprocess Actions
- Time Actions
- Http (Tasks)
- Http (Actions)
- Event Handling (needs to be reworked)
- View/HTML Handling
- Traits (TBD)
- REPL CLI command