Eventual is designed to provide a light-weight and fast developer lifecycle. In general, the process looks like as follows:
- Build - start writing code, create Commands, Workflows, Tasks, etc.
- Run - start a server running the service locally for instant feedback
- Test - write unit tests and mock out parts of your service
- Deploy - deploy the service to production
- Replay - debug broken workflows by replaying them locally in your IDE
- ... repeat
Start writing code. Add Commands, Workflows, Tasks, Subscriptions, configure Infrastructure, etc.
Run your Service locally to test it as a whole. Follow a tracer-bullet feature end-to-end. Observe how they interact with each other. Set breakpoints and follow execution across all of these pieces.
See How to run locally for more information.
Add unit tests for individual pieces. Mock out different parts of your application to test in isolation.
See How to unit test for more information.
Once you're ready, you can deploy to AWS from the root, for example from within your CI/CD.
npm run deploy
pnpm run deploy
When a workflow breaks in production, use the
eventual reply CLI to download and replay a workflow locally to debug in your IDE.
See How to debug production workflows for more information.