2019-11-16 13:26:19 +01:00
|
|
|
|
# HIPPIE
|
|
|
|
|
|
|
2023-10-25 17:31:34 +02:00
|
|
|
|
Hippie interweaves preeminent personal interface elements
|
|
|
|
|
|
|
2019-11-16 13:26:19 +01:00
|
|
|
|
> WORK IN PROGRESS (it is not ready to be used)
|
|
|
|
|
|
|
2026-03-15 09:27:33 +01:00
|
|
|
|
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.
|
2019-11-16 13:26:19 +01:00
|
|
|
|
|
2026-03-15 09:27:33 +01: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.
|
2019-11-16 13:26:19 +01:00
|
|
|
|
|
2023-10-18 18:18:11 +02:00
|
|
|
|
## Installing
|
2019-11-16 13:26:19 +01:00
|
|
|
|
|
2026-03-15 09:27:33 +01:00
|
|
|
|
Clone the repository `https://quelltext.interaktionsweise.de/interaktionsweise/hippie.git` to a folder to create your
|
|
|
|
|
|
build environment.
|
2019-11-16 13:26:19 +01:00
|
|
|
|
|
2026-03-15 09:27:33 +01:00
|
|
|
|
Change to the newly created folder. By default, this would be *hippie*.
|
2019-11-16 13:26:19 +01:00
|
|
|
|
|
2021-03-09 15:54:23 +01:00
|
|
|
|
Run the command `git submodule update --init`.
|
|
|
|
|
|
This will load the submodules.
|
|
|
|
|
|
|
2019-11-16 13:26:19 +01:00
|
|
|
|
Run the command `npm install`.
|
2023-10-18 18:18:11 +02:00
|
|
|
|
This will install all dependencies into the folder *node_modules*.
|
2019-11-16 13:26:19 +01:00
|
|
|
|
|
2023-10-18 18:18:11 +02:00
|
|
|
|
## Usage
|
2020-12-22 20:10:58 +01:00
|
|
|
|
|
2026-03-15 09:27:33 +01:00
|
|
|
|
Different *scripts* are provided through `package.json`:
|
2019-11-16 13:26:19 +01:00
|
|
|
|
|
2026-03-15 09:27:33 +01:00
|
|
|
|
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.
|
2019-11-16 13:26:19 +01:00
|
|
|
|
|
2026-03-15 09:27:33 +01:00
|
|
|
|
`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.
|
2019-11-16 13:26:19 +01:00
|
|
|
|
|
2026-03-15 09:27:33 +01:00
|
|
|
|
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
|
|
|
|
|
2023-10-18 18:18:11 +02:00
|
|
|
|
## Content
|
2019-11-16 13:26:19 +01:00
|
|
|
|
|
2020-12-22 20:10:58 +01:00
|
|
|
|
### Intro
|
|
|
|
|
|
|
2026-03-15 09:27:33 +01:00
|
|
|
|
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
|
|
|
|
|
2023-10-18 18:18:11 +02:00
|
|
|
|
### Sass (CSS)
|
2020-12-22 20:10:58 +01:00
|
|
|
|
|
|
|
|
|
|
Everything has its default style.
|
2023-10-18 18:18:11 +02:00
|
|
|
|
|
|
|
|
|
|
CSS classes follow a naming scheme of `<object>_<description>`.
|
|
|
|
|
|
|
2026-03-15 09:27:33 +01:00
|
|
|
|
- *Object* usually is the name of the HTML element. If it is not an element directly it is the thing which receives the
|
|
|
|
|
|
styling
|
2024-03-30 20:52:37 +01:00
|
|
|
|
- *Description* is a name of the style e.g. what it does, how it looks
|
2023-10-18 18:18:11 +02:00
|
|
|
|
|
2026-02-14 12:16:55 +01:00
|
|
|
|
### JavaScript (JS)
|
|
|
|
|
|
|
|
|
|
|
|
The codebase uses ECMAScript 2023 Language Specification (14th edition).
|
2026-03-15 09:27:33 +01:00
|
|
|
|
However, currently the JSHint configuration only allows 11 as highest version.
|
2026-02-14 12:16:55 +01:00
|
|
|
|
|
2026-03-15 09:27:33 +01:00
|
|
|
|
ID values are written in *camelCase*. The scheme further uses parts for specific contexts.
|
2026-02-14 12:16:55 +01:00
|
|
|
|
|
|
|
|
|
|
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
|
2026-02-14 12:16:55 +01:00
|
|
|
|
- `qry` - Query
|
2026-02-14 18:54:14 +01:00
|
|
|
|
- `rmv` - Remove
|
2026-02-14 12:16:55 +01:00
|
|
|
|
- `set` - Set
|
|
|
|
|
|
- `slt` - Select
|
|
|
|
|
|
- `tgl` - Toggle
|
|
|
|
|
|
|
2023-10-18 18:18:11 +02:00
|
|
|
|
## Versioning
|
|
|
|
|
|
|
2026-03-15 09:27:33 +01:00
|
|
|
|
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).
|
2023-10-18 18:18:11 +02:00
|
|
|
|
|
2024-03-30 20:52:37 +01:00
|
|
|
|
## Contribution
|
|
|
|
|
|
|
2026-03-15 09:27:33 +01:00
|
|
|
|
For contribution please use the [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/#summary)
|
|
|
|
|
|
specification.
|
2024-03-30 20:52:37 +01:00
|
|
|
|
The commit *type* can include the following:
|
|
|
|
|
|
|
|
|
|
|
|
- feat – A new feature is introduced with the changes
|
|
|
|
|
|
- fix – A bug fix has occurred
|
2026-03-15 09:27:33 +01:00
|
|
|
|
- chore – Changes that do not relate to a fix or feature and don't modify src or test files (for example updating
|
|
|
|
|
|
dependencies)
|
2024-03-30 20:52:37 +01:00
|
|
|
|
- refactor – Refactored code that neither fixes a bug nor adds a feature
|
2026-03-15 09:27:33 +01:00
|
|
|
|
- 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.
|
2024-03-30 20:52:37 +01:00
|
|
|
|
- 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
|
|
|
|
|
|
|
2023-10-18 18:18:11 +02:00
|
|
|
|
## 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.
|