Adequate property documentation
Which version are you using? 1.18.0
Is the latest version affected?
- [x] Yes
Which library are you using?
- [x] Vanilla JS (
tsparticles)
Is your feature request related to a problem? Please describe. Trying to determine the correct way to use the library, achieve a certain desired effect, or ascertain what is possible and what is not possible, is almost impossible today without hours and hours of trial and error, brute-force placing random values into the available properties until they start to make sense. This is an extremely poor experience and inhibiting of properly using the library at an expert level.
Describe the solution you'd like
Each property should be documented in a place that is easily accessible. The documentation must be unambiguous and complete. Documenting speed as the animation speed or the particle speed is wholly circular and inadequate since it does not contribute any information. Each property must be explained in exacting terms as to what its effects are, what the allowable values are (strings, array, object, numbers, range), what the units of the number specified is and what the default value is if it is missing.
Example for speed (I don't think this is correct, though): the velocity of the particle in pixels per frame, default if unset: 1 or the delta in opacity applied to the particle per millisecond, default if unset: 0.5.
Describe alternatives you've considered Trying to figure out the exact meaning of properties by:
- trying out random numbers until you recognize some kind of a pattern and can get an effect close to what you were hoping for by guessing numbers.
- googling to see if there are articles that use tsparticles or jsparticles and have actually explained the property you want to know about.
- for lack of english documentation, trying to read the source code just to determine how a property is being used.
Additional context Some examples of unclear properties:
- sync (
the related animation is synchronized between all particlesis inadequate and again, is circular; it does not tell me how that is different from what happens otherwise) - speed
- infection stages
- frequency
- move angle
- density area, factor
- outModes
- reduceDuplicates
- size animation destroy, startValue vs. random
- stroke (what shapes does it apply to)
- links consent, warp
- pauses
- themes
Thanks for opening a new issue. The team has been notified and will review it as soon as possible.
For urgent issues and priority support, visit https://xscode.com/matteobruni/tsparticles
Stale issue message
Hi there, started working on this issue (starting w/ sync) and I was wondering, where to submit a proposed definition?
Hi there, started working on this issue (starting w/ sync) and I was wondering, where to submit a proposed definition?
What do you mean with a proposed definition?
Apologies, I meant "documentation". What I should have asked was, "where would you like me to provide the documentation for each of the properties listed?" (e.g., on the documentation site as a new module, or within an existing module, etc.)
Apologies, I meant "documentation". What I should have asked was, "where would you like me to provide the documentation for each of the properties listed?" (e.g., on the documentation site as a new module, or within an existing module, etc.)
Ah ok, there's typedoc installed in the engine folder. You can update documentation directly in the code. There's also the engine/markdown folder for more detailed pages used by typedoc.
If you have other ideas for improving documentation, we can discuss them here, Discord or Slack