-
Notifications
You must be signed in to change notification settings - Fork 2
File Config
Thanatat Tamtan edited this page Sep 23, 2023
·
8 revisions
Hime can read config from YAML/JSON file.
Sometime frontend developer don't want to write Go 🤯
They can write YAML/JSON instead 😬
For example
# config.yaml
routes:
home: /
about-us: /about-us
auth.sign-in: /auth/sign-in
auth.signout: /auth/signout
admin.dashboard: /admin/dashboard
admin.users: /admin/users
globals:
base_url: http://localhost:8080
app_name: Hime Example
templates:
- dir: template/web
root: root
minify: true
preload:
- layout.tmpl
- components/footer.tmpl
list:
web.home:
- home.tmpl
web.auth/sign-in:
- auth/sign-in.tmpl
- auth/layout.tmpl
- dir: template/admin
root: root
minify: true
preload:
- layout.tmpl
list:
admin.dashboard:
- dashboard.tmpl
admin.users:
- users.tmplapp.ParseConfigFile("config.yaml")When parsing config, hime won't remove old config, but will add or override if new config contain that field.
# landing.yaml
globals:
base_url: http://localhost:8080
routes:
home: /
about-us: /about-us# backoffice.yaml
routes:
auth.sign-in: /auth/sign-in
auth.signout: /auth/signout
admin.dashboard: /admin/dashboard
admin.users: /admin/usersapp.ParseConfigFile("landing.yaml")
app.ParseConfigFile("backoffice.yaml")# web.yaml
dir: template/web
root: root
minify: true
preload:
- layout.tmpl
- components/footer.tmpl
list:
web.home:
- home.tmpl
web.auth/sign-in:
- auth/sign-in.tmpl
- auth/layout.tmpl# admin.yaml
dir: template/admin
root: root
minify: true
preload:
- layout.tmpl
list:
admin.dashboard:
- dashboard.tmpl
admin.users:
- users.tmplapp.Template().ParseConfigFile("web.yaml")
app.Template().ParseConfigFile("admin.yaml")