GenieFramework / GenieFramework/StippleUI.jl

[suggestion] An example for unifying the elements format

Open
#22 13 comments 0 reactions 0 assignees View on GitHub
Dominant language
Julia
Stars
90
Forks
16
PR merge metrics
No merged PRs in 30d

Description

I hope to use same format for all elements to make things simpler. I hope/suggest that **the following format rules are valid for all julia element functions**. Special element functions may have other format rules.

1. The argument `[xxx]` will always be the `HTML content` no matter its position in `ele()`.
E.g. , Julia `ele("aa", "bb", [xxx], cc="dd")` => HTML `xxx`

2. There is only one argument `[xxx]` allowed in julia element function.
E.g., Julia `ele("aa", [xxx], [yyy],cc="dd")` **is NOT allowed !**.

3. If there is no argument `[xxx]`, the first string argument in julia element function will be the `HTML content`.
E.g., `ele("aa", bb="dd", "cc")` => HTML `aa`

4. argument `:xx` will be the `HTML attribute v-model="xx"`
E.g., `ele(:xx, bb="dd", "cc")` => HTML `cc`

5. argument `xx=:yy` will be the `HTML attribute :xx="yy"`
E.g., `ele(xx=:yy, bb="dd", "cc")` => HTML `cc`

6. other vue/custom attribute can be introduced by macro/string
E.g., julia ` btn("button",(@vclick "x=!x"),[])` => HTML ``
where, when click `button` the julia bool variable `x` will be changed to `!x`

Contributor guide

No contributing guide indexed for this repository

Research direction

The issue names no files, tests, or entry points. Start by locating the Julia element-function implementation and reviewing the existing discussion before attempting work. Done would require agreement on the proposed argument and attribute rules, followed by tests covering the accepted format.

Written by the indexing model from the issue text.

Assessment

Tech stack
julia
Domain
frontend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.