hippie/README.md

108 lines
4.1 KiB
Markdown
Raw Normal View History

# HIPPIE
Hippie interweaves preeminent personal interface elements
> WORK IN PROGRESS (it is not ready to be used)
This is a [Node.js](https://nodejs.org/) based generator for static HTML documents.
It uses the [Eleventy](https://www.11ty.dev/) project to fiddle everything together.
2026-04-23 21:56:44 +02:00
Styling is powered by the CSS extension language [Sass](https://sass-lang.com/). The HTML pages are written with
templating engines or directly as HTML files. Mainly [Liquid](https://liquidjs.com/) is used,
but [Markdown](https://daringfireball.net/projects/markdown/) and [Nunjucks](https://mozilla.github.io/nunjucks/) are
also options.
## Installing
Clone the repository `https://quelltext.interaktionsweise.de/interaktionsweise/hippie.git` to a folder to create your
build environment.
Change to the newly created folder. By default, this would be *hippie*.
2021-03-09 15:54:23 +01:00
Run the command `git submodule update --init`.
This will load the submodules.
Run the command `npm install`.
This will install all dependencies into the folder *node_modules*.
## Usage
2020-12-22 20:10:58 +01:00
Different *scripts* are provided through `package.json`:
Run the command `npm run serve` for a live development environment.
This will create a folder `/build` with the resulting files.
Also, the source files will be watched for changes which are reflected live at [localhost:8080](http://localhost:8080)
and the `/build` directory.
`npm run build` will just create the resulting `/build` directory and `npm run deploy` will use a path prefix (*hippie*
by default) and create the results in `/deploy` ready for deployment.
HIPPIE is intended to be used as a basis when creating HTML sites. It can be used without changes. It can be modified to
have a different look and feel. It also can be used to build a new basis on top of it.
2020-12-22 20:10:58 +01:00
## Content
2020-12-22 20:10:58 +01:00
### Intro
There is an *intro* page which explains the main elements and their intended usage. It uses the default styling methods
and also shows variations. The page is written in german language. However, it has a semantic structure and the text
itself can also just be seen as example content.
2020-12-22 20:10:58 +01:00
### Sass (CSS)
2020-12-22 20:10:58 +01:00
Everything has its default style.
CSS classes follow a naming scheme of `<object>_<description>`.
- *Object* usually is the name of the HTML element. If it is not an element directly it is the thing which receives the
styling
- *Description* is a name of the style e.g. what it does, how it looks
### JavaScript (JS)
The codebase uses ECMAScript 2023 Language Specification (14th edition).
However, currently the JSHint configuration only allows 11 as highest version.
ID values are written in *camelCase*. The scheme further uses parts for specific contexts.
If the ID is for an interactive element the first part is an abbreviation of the action.
2026-02-14 18:54:14 +01:00
- `add` - Add
- `qry` - Query
2026-02-14 18:54:14 +01:00
- `rmv` - Remove
- `set` - Set
- `slt` - Select
- `tgl` - Toggle
## Versioning
This project uses [SemVer](http://semver.org/) for versioning. For the versions available, see
the [tags on this repository](https://quelltext.interaktionsweise.de/interaktionsweise/hippie/tags).
## Contribution
For contribution please use the [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/#summary)
specification.
The commit *type* can include the following:
- feat A new feature is introduced with the changes
- fix A bug fix has occurred
- chore Changes that do not relate to a fix or feature and don't modify src or test files (for example updating
dependencies)
- refactor Refactored code that neither fixes a bug nor adds a feature
- docs Updates to documentation such as the README or other Markdown files
- style Changes that do not affect the meaning of the code, likely related to code formatting such as white-space,
missing semicolons, and so on.
- test Including new or correcting previous tests
- perf Performance improvements
- ci Continuous integration related
- build Changes that affect the build system or external dependencies
- revert Reverts a previous commit
## Authors
**Stephan Hagedorn** - *Initial work* - [Interaktionsweise](https://interaktionsweise.de)
## License
This project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md) file for details.