Publish HTML quickly. https://html.house
Nie możesz wybrać więcej, niż 25 tematów Tematy muszą się zaczynać od litery lub cyfry, mogą zawierać myślniki ('-') i mogą mieć do 35 znaków.
 
 
 
 
Matt Baer 31a919f8b7 Remove chat badges, add CSShorse info in README 2 lat temu
cmd/htmlhouse Support configuring via .env file 2 lat temu
keys Add backend ability to save/get a house 8 lat temu
less Add WriteFreely blog customization / CSShorse 2 lat temu
static Add WriteFreely blog customization / CSShorse 2 lat temu
templates Add WriteFreely blog customization / CSShorse 2 lat temu
.gitignore Support configuring via .env file 2 lat temu
CONTRIBUTING.md Add contributing guidelines 6 lat temu
INSTALL Add install instructions 7 lat temu
LICENSE Add MIT license 5 lat temu
README.md Remove chat badges, add CSShorse info in README 2 lat temu
app.go Add WriteFreely blog customization / CSShorse 2 lat temu
build.sh Update binary build paths 2 lat temu
config.go Add WriteFreely blog customization / CSShorse 2 lat temu
construction.go Return 404 for stats on nonexistent houses 6 lat temu
database.go Add backend ability to save/get a house 8 lat temu
filter.go Automatically pass public filter when no blacklist configured 6 lat temu
go.mod Support configuring via .env file 2 lat temu
go.sum Support configuring via .env file 2 lat temu
horse.go Add WriteFreely blog customization / CSShorse 2 lat temu
house.go Add backend ability to save/get a house 8 lat temu
init.sql Support posting new public houses to Twitter 8 lat temu
keys.sh Prevent running keys.sh with no params 8 lat temu
makefile Move LESS files out of `css` to `less` directory 6 lat temu
models.go Make thumbnails host configurable 6 lat temu
session.go Parse JWT keys correctly 6 lat temu
templates.go Add WriteFreely blog customization / CSShorse 2 lat temu
twitter.go Skip tweeting pages with "HTMLhouse" title 8 lat temu

README.md

⌂ HTMLhouse / 🐴 CSShorse

⌂ Publish HTML quickly / 🐴 Develop a WriteFreely theme

HTMLhouse screenshot HTMLhouse screenshot

HTMLhouse uses ACE editor for modifying HTML and shows a live preview of what you’ve created in an iframe alongside the source code.

No user signup is required -- authorization to modify an individual published page is saved on the creator’s device in local storage as an ID and JWT generated by the server.

It is also available as an Android app.

Development

Requirements

  • Go
  • Node.js
  • MySQL

Setup

  1. Clone the repo
  2. Run go get -d to get necessary dependencies
  3. Run make install to install LESS compiler locally and generate the CSS files
  4. Run the queries in init.sql to set up the database
  5. Optional. Run ./keys.sh prod to create a new keypair

Running the server

  • Run go run cmd/htmlhouse/main.go in the top level directory, optionally by creating a simple run script
#!/bin/bash

DB_USER=dbuser DB_PASSWORD=pass DB_DB=htmlhouse PRIVATE_KEY=keys/dev PUBLIC_KEY=keys/dev.pub go run main/main.go

Environment Variables

Variable What it is Default value
DB_USER Database user None. Required
DB_PASSWORD Database password None. Required
DB_DB Database name None. Required
DB_HOST Database host localhost
PRIVATE_KEY Generated private key None. Required
PUBLIC_KEY Generated public key None. Required
PORT Port to run app on 8080
STATIC_DIR Relative dir where static files are stored static
ALLOW_PUBLISH Allow users to publish posts true
AUTO_APPROVE Automatically approves public posts false
PREVIEWS_HOST Fully-qualified URL (without trailing slash) of screenshot server None.
ADMIN_PASS Password to perform admin functions via API uhoh
BROWSE_ITEMS Number of items to show on Browse page 10
BLACKLIST_TERMS Comma-separated list of terms to prevent a post from being made public None.
TWITTER_KEY Twitter consumer key notreal
TWITTER_SECRET Twitter consumer secret notreal
TWITTER_TOKEN Twitter access token of the posting Twitter account notreal
TWITTER_TOKEN_SECRET Twitter access token secret of the posting Twitter account notreal
WF_MODE Run CSShorse, not HTMLhouse — for customizing WriteFreely blogs false

Notes

Changing CSS. Run make after all changes to update the stylesheets.

When you don’t need to reload the app. When you make changes to any files in static/ you can simply refresh the resource without restarting the app.

When to reload the app. If you change any of the templates in templates/ or any .go file, you’ll need to re-run the app.