1.2 KiB
1.2 KiB
Code Style and Conventions for TaskBuffer
File Structure
- Source code in
ts/
directory - Tests in
test/
directory - Compiled output in
dist_ts/
- All filenames must be lowercase
Naming Conventions
- Interfaces: Prefix with
I
(e.g.,ITaskFunction
) - Types: Prefix with
T
(e.g.,TPreOrAfterTaskFunction
) - Classes: PascalCase (e.g.,
TaskManager
) - Files:
taskbuffer.classes.{classname}.ts
pattern - Test files:
test.{number}.{feature}.ts
pattern
TypeScript Conventions
- Use ES modules (import/export)
- Avoid ENums when possible
- Import dependencies through
plugins.ts
- Reference with full path:
plugins.myModule.myClass()
- Use async/await patterns consistently
- Strong typing throughout
Testing Conventions
- Import expect from
@git.zone/tstest/tapbundle
- Test files end with
export default tap.start()
- Use descriptive test names with tap.test()
- Test both browser and node when applicable
Code Quality
- Make focused, goal-oriented changes
- Preserve necessary complexity
- Keep code elegant and maintainable
- No inline documentation unless requested
- Complete implementations only (no partial work)