• Stars
    star
    172
  • Rank 221,201 (Top 5 %)
  • Language
    CSS
  • License
    Apache License 2.0
  • Created almost 9 years ago
  • Updated about 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Template project for creating an InfoQ Mini-Book with Asciidoctor

An InfoQ Mini-Book

Actions Status

This is an awesome book. It’s written in AsciiDoc and compiles to HTML, PDF, and EPUB using the Asciidoctor Gradle plugin.

Installing

npm run setup

Building

To convert this book to HTML and EPUB, run the following command:

npm run build
  • Open build/asciidoc/html5/index.html in your browser to see the generated HTML file.

  • Open build/asciidoc/pdf-prepress/index.pdf to see the 6x9" printable PDF file.

  • Open build/asciidoc/pdf-screen/index.pdf to see the downloadable 8.5x11" PDF file.

  • Open build/asciidoc/epub3/index.epub in iBooks to see the generated EPUB file.

To generate a static site using Antora, run the following command:

npm run build:site

Sweet Authoring Experience

If you’d like a very pleasant authoring experience, the project provides build files that make it possible. First of all, you’ll need to run gradlew once. After running it once, you can run ./gradlew watch to watch for any changes and recompile files as you save them.

To have a similar awesome experience (watch and auto-reload) in your browser, install Node.js on your machine.

After installing Node, you can run the following command to install development tools (like Browsersync).

npm install
Tip
You will only need to run this command when dependencies change in package.json.

Now you can run the following command:

npm run watch

This will start two daemons:

  1. Gradle, which will watch the file system and rebuild the HTML version continuously using Asciidoctor

  2. BrowserSync, which will serve the updated HTML version all of the time and make it available over HTTP

Thanks to this, you’ll have a constantly up to date HTML version available in your browser while editing.

Similarly, you can run the following command to continuously watch the file system and rebuild the static site:

npm run watch:site

Update Dependencies

To update the dependencies in build.gradle, run:

./gradlew useLatestVersions

To update the dependencies in package.json, install npm-check-updates and run it:

npm i -g npm-check-updates
ncu

Releasing/Publishing

This project includes GitHub action workflows to build and publish the book (PDF, EPUB, HTML). To trigger this, you have two options:

  • Run the following script: npm run release

  • Use GitHub’s UI to create the release from your book repository

Once completed, the publish workflow will attach the generated files to the release page.

The benefit of the release npm script is that the version will be updated automatically in the package.json and version.txt files. The version will be reflected in the generated files because the version in version.txt is used as the Gradle project version when building the book.

Note that in order for the release npm script to work, you’ll need to make sure that a GITHUB_TOKEN environment variable is available, as explained in release-it’s documentation.

Deploy to Netlify

To deploy this repository to Netlify, create an account and log in.

  1. Select New site from Git

  2. Select your Git provider

  3. Select your repository

  4. Select the branch to deploy

  5. Build command: npm run build:site

  6. Publish directory: public/

  7. Click Deploy site

Your site should take less than a minute to deploy, depending on the size of your book.

Netlify Preview

This repository is using a netlify.toml configuration file to build and publish the static site to Netlify. You can see the result at: https://infoq-mini-book.netlify.app/.

More Repositories

1

history-of-web-frameworks-timeline

The history of web frameworks as described by a timeline of releases.
369
star
2

21-points

❤️ 21-Points Health is an app you can use to monitor your health.
TypeScript
282
star
3

idea-live-templates

My IntelliJ Live Templates
277
star
4

jhipster4-demo

Blog demo app with JHipster 4
Java
179
star
5

ng-demo

🦴 Bare Bones Angular and Angular CLI Tutorial
TypeScript
177
star
6

jhipster6-demo

JHipster 6 Demo! 🎉
Java
153
star
7

jhipster7-demo

JHipster 7 Demo! 🔥
TypeScript
81
star
8

jhipster5-demo

Get Started with JHipster 5 Tutorial and Example
Java
80
star
9

ajax-login

Ajax Login
JavaScript
46
star
10

angular2-tutorial

Getting Started with Angular 2
TypeScript
46
star
11

boot-ionic

An example mobile app written with Ionic Framework
JavaScript
36
star
12

microservices-for-the-masses

Microservices for the Masses with Spring Boot, JHipster, and JWT
CSS
36
star
13

java-webapp-security-examples

Example projects showing how to configure security with Java EE, Spring Security and Apache Shiro.
Java
36
star
14

jhipster8-demo

JHipster 8 Demo! 🌟
TypeScript
34
star
15

cloud-native-pwas

Cloud Native Progressive Web Apps with Spring Boot and Angular
Shell
31
star
16

spring-native-examples

JHipster Works with Spring Native!
Java
24
star
17

boot-makeover

A Webapp Makeover with Spring 4 and Spring Boot
Java
23
star
18

jhipster-book

The JHipster Mini-Book
CSS
21
star
19

camel-rest-swagger

Camel with Spring JavaConfig and Camel's REST + Swagger support with no web.xml
JavaScript
20
star
20

play-more

HTML5 Fitness Tracking with Play!
JavaScript
17
star
21

mobile-jhipster

Mobile Development with Ionic, React Native, and JHipster
TypeScript
17
star
22

jhipster-demo

JHipster 2 Demo
Java
16
star
23

java-rest-api-examples

Java REST API Examples
HTML
15
star
24

ionic-jhipster-example

Example of integrating Ionic with JHipster
Java
13
star
25

webflux-oauth2

Spring Webflux with OAuth
Java
11
star
26

devoxxus-jhipster-microservices-demo

JHipster Microservices Demo Code from Devoxx US 2017
Java
10
star
27

angular-tutorial

Getting Started with AngularJS
JavaScript
10
star
28

nuxt-spring-boot

Vue
7
star
29

angular-book

The Angular Mini-Book
TypeScript
7
star
30

spring-kickstart

JavaScript
7
star
31

jhipster-reactive-microservices-oauth2

Java
6
star
32

appfuse-noxml

A work-in-progress version of AppFuse with no XML
Java
6
star
33

okta-spring-boot-angular-example

TypeScript
6
star
34

jhipster-oidc-example

Example of doing OIDC Login with Keycloak and Okta
Java
5
star
35

okta-scim-spring-boot-example

A SCIM Example with Apache SCIMple and Spring Boot
Java
5
star
36

ionic-4-oidc-demo

Angular/Cordova demo of Ionic App Auth
TypeScript
4
star
37

spring-boot-oauth

Java
4
star
38

auth0-react-example

JavaScript
4
star
39

jhipster-stormpath-example

Example app showing how to integrate Stormpath into JHipster 3.x
Java
4
star
40

javaone2017-jhipster-demo

Blog application created during my JHipster talk at JavaOne 2017
Java
3
star
41

spring-boot-postgresql

Java
3
star
42

webflux-mongodb

Java
3
star
43

okta-native-hints

Java
3
star
44

jhipster-reactive-monolith-oauth2

Java
3
star
45

infoq-mini-book-presentation

Writing an InfoQ Mini-Book with Asciidoctor
JavaScript
3
star
46

play-scalate

Play Plugin for Scalate
Scala
3
star
47

okta-react-quickstart

JavaScript
3
star
48

okta-spring-boot-saml-example

Java
3
star
49

jhipster-micro-frontends

JHipster Microservices Architecture with Micro Frontends
Java
3
star
50

appauth-react-electron

JavaScript
2
star
51

react-native-logout-issue

JavaScript
2
star
52

angular-app

HTML
2
star
53

jx-demo

Java
2
star
54

jhipster-microfrontends-react

Java
2
star
55

speaking-tour

How to plan a speaking tour
2
star
56

vue-gateway

Java
2
star
57

bjug-microservices

Microservices with JHipster example from Boulder JUG - February 2020
Java
2
star
58

jhipster-sb3-csrf

Java
1
star
59

21-points-v7

TypeScript
1
star
60

environment-marespring-production

Makefile
1
star
61

mraible

1
star
62

blog-oauth2-native

TypeScript
1
star
63

blazor-test

C#
1
star
64

okta-react-auth-js

JavaScript
1
star
65

jwt-client

TypeScript
1
star
66

history-of-online-video-timeline

1
star
67

webflux-couchbase

Java
1
star
68

auth0-expenses-api

JavaScript
1
star
69

ionic-jhipster

TypeScript
1
star
70

ionic-4-oauth2

TypeScript
1
star
71

jhipster-ionic-images

Example repo with image upload/view/delete working
TypeScript
1
star
72

jhipster-blog-oauth2

Java
1
star
73

jhipster-flickr2

GitHub Actions for GraalVM images example
Java
1
star
74

spinnaker-store

Java
1
star
75

my-cool-app

JavaScript
1
star
76

jhipster4-stormpath-example

JHipster 4 + Stormpath + JWT Example
TypeScript
1
star
77

grails-oauth-example

Grails application demonstrating OAuth with LinkedIn's API
1
star
78

jhipster-oauth-example

This repo is temporary. It will be deleted soon. I'm creating it for community code review.
Java
1
star
79

okta-react-signin-widget

JavaScript
1
star
80

jhipster-microfrontends-angular

Java
1
star
81

html5-denver

TypeScript
1
star