bookstore.dorrancepublishing.com Open in urlscan Pro
23.227.38.74  Public Scan

Submitted URL: http://bookstore.dorrancepublishing.com/
Effective URL: https://bookstore.dorrancepublishing.com/
Submission: On May 29 via api from US — Scanned from CA

Form analysis 4 forms found in the DOM

GET /search

<form class="mt-8" action="/search" method="get" role="search">
  <div class="relative text-scheme-meta">
    <label for="sidebar-search" class="visually-hidden">Search</label>
    <input class="w-full flex-auto text-scheme-text bg-transparent placeholder-scheme-meta pr-2 py-2 pl-8" id="sidebar-search" type="text" name="q" placeholder="Search">
    <button class="absolute top-1/2 h-5 transform -translate-y-1/2 left-0 px-1" type="submit">
      <span class="inline-block w-5 h-5"><svg aria-hidden="true" focusable="false" role="presentation" class="icon fill-current icon-search" viewBox="0 0 24 24">
          <path fill-rule="evenodd"
            d="M10.548 17.187a6.647 6.647 0 01-6.64-6.64 6.647 6.647 0 016.64-6.639 6.647 6.647 0 016.64 6.64 6.647 6.647 0 01-6.64 6.64zm6.629-1.253a8.507 8.507 0 001.918-5.386C19.095 5.834 15.26 2 10.548 2 5.835 2 2 5.834 2 10.548c0 4.712 3.835 8.547 8.548 8.547a8.503 8.503 0 005.265-1.828L20.546 22l1.35-1.349-4.72-4.717z"
            clip-rule="evenodd"></path>
        </svg></span>
      <span class="visually-hidden">Search</span>
    </button>
  </div>
</form>

POST /cart

<form action="/cart" method="post" novalidate="">
  <div id="CartContainer" class="fixed top-0 right-0 bottom-0 w-11/12 max-w-md bg-scheme-background text-scheme-text transform transition-transform overflow-hidden flex flex-col px-5" x-show="$store.drawer.cartDrawerOpen"
    x-transition:enter="transition ease duration-300" x-transition:enter-start="opacity-0 translate-x-full" x-transition:enter-end="opacity-100" x-transition:leave="transition ease duration-300" x-transition:leave-end="opacity-100 translate-x-full"
    @click.away.prevent="$store.drawer.cartDrawerOpen = false" role="dialog" aria-modal="true" data-cart-drawer="" aria-labelledby="CartTitle" style="display: none;">
    <div class="relative flex items-center justify-between py-4 border-b-theme-width border-scheme-border">
      <h1 class="font-heading text-base" id="CartTitle" tabindex="-1"> Your cart - <span x-text="$store.cartCount.countWithText()">0 items</span>
      </h1>
      <button @click.prevent="$store.drawer.cartDrawerOpen = false" class="block top-0">
        <span class="visually-hidden">Close (esc)</span>
        <span class="inline-block w-7 h-7"><svg aria-hidden="true" focusable="false" role="presentation" class="icon fill-current icon-close" viewBox="0 0 24 24">
            <path fill-rule="evenodd" d="M18.364 4.222l1.414 1.414L13.414 12l6.364 6.364-1.414 1.414L12 13.414l-6.364 6.364-1.414-1.414L10.586 12 4.222 5.636l1.414-1.414L12 10.586l6.364-6.364z" clip-rule="evenodd"></path>
          </svg></span>
      </button>
    </div>
    <template x-if="state &amp;&amp; !state.item_count">
      <div class="py-4">
        <p class="supports-cookies text-align--center" x-text="theme.strings.cartEmpty"></p>
        <p class="supports-no-cookies cookie-message" x-text="theme.strings.cartCookies"></p>
      </div>
    </template>
    <div class="py-4">
      <p class="supports-cookies text-align--center" x-text="theme.strings.cartEmpty">Your cart is currently empty.</p>
      <p class="supports-no-cookies cookie-message" x-text="theme.strings.cartCookies">Enable cookies to use the shopping cart</p>
    </div>
    <template x-if="state &amp;&amp; state.item_count">
      <div class="flex-auto flex flex-col overflow-hidden">
        <div class="py-4 flex-auto overflow-hidden overflow-y-auto px-5 -mx-5">
          <div class="grid grid-cols-1 gap-gutter">
            <template x-for="(item, index) in state.items" :key="item.key">
              <div class="flex py-4 transition bg-scheme-background" :class="{ 'opacity-50 cursor-wait': item.updating }" :data-cart-item-index="(index + 1)" :data-cart-item-key="item.key" data-cart-row="">
                <template x-if="!(item.featured_image.url === null)">
                  <div class="flex-shrink-0 w-20 md:w-28 mr-4">
                    <a :href="item.url" class="block" aria-hidden="true" tabindex="-1">
                        <img class="w-full text-transparent" :src="getSizedImageUrl(item.featured_image.url, '110x')" :srcset="getCartImgSrcset(item.featured_image.url)" :width="item.featured_image.width" :height="item.featured_image.height" :alt="item.product_title" sizes="(min-width: 48em) 5rem, 3.5rem">
                        <pre x-text="item.featured_image.src"></pre>
                      </a>
                  </div>
                </template>
                <div class="flex-auto pr-4">
                  <a class="f--heading font-size--m md--up--font-size--l color--active-text" :href="item.url" x-text="item.product_title"></a>
                  <template x-if="item.variant_title">
                    <p class="text-sm" x-text="item.variant_title"></p>
                  </template>
                  <p class="text-sm mt-1 text-scheme-meta" x-text="item.vendor"></p>
                  <template x-if="item.selling_plan_allocation">
                    <p class="text-sm mt-1 text-scheme-meta" x-text="item.selling_plan_allocation.selling_plan.name"></p>
                  </template>
                  <div x-show="flatProperties(item.properties).length" class="text-sm text-scheme-meta mt-2">
                    <template x-for="property in flatProperties(item.properties)" :key="property.name">
                      <p>
                        <span x-text="property.name"></span>: <span x-text="property.value"></span>
                      </p>
                    </template>
                  </div>
                  <template x-if="item.line_level_discount_allocations.length">
                    <ul class="lg:hidden mt-1 text-sm text-scheme-accent" aria-label="Discount">
                      <template x-for="allocation in item.line_level_discount_allocations">
                        <li class="">
                          <span x-text="allocation.discount_application.title"></span>
                          <template x-if="allocation.amount > 0">
                            <span class="whitespace-nowrap">−<span x-html="formatMoney(allocation.amount)"></span></span>
                          </template>
                        </li>
                      </template>
                    </ul>
                  </template>
                  <p class="text-sm my-2" x-show="errorMessages.hasOwnProperty(item.key)" x-transition:enter="transition ease duration-300" x-transition:enter-start="opacity-0" x-transition:enter-end="opacity-100"
                    x-transition:leave="transition ease duration-300" x-transition:leave-start="opacity-100" x-transition:leave-end="opacity-0" style="display: none;">
                    <span class="cart-item-error-text text-scheme-accent" x-text="errorMessages[item.key]"></span>
                  </p>
                  <div class="flex mt-1 items-center -mx-4">
                    <button class="p-4 flex items-center justify-center" data-qty-adjust="minus" @click.prevent="qtyAdjust($event, item)" :aria-label="'Remove one ' + item.title">
                      <span class="inline-block w-3 h-3"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" class="icon" viewBox="0 0 20 20">
                          <path d="M17.543 11.029H2.1A1.032 1.032 0 0 1 1.071 10c0-.566.463-1.029 1.029-1.029h15.443c.566 0 1.029.463 1.029 1.029 0 .566-.463 1.029-1.029 1.029z"></path>
                        </svg>
                      </span>
                    </button>
                    <input type="text" name="updates[]" class="min-w-0 w-6 py-2 text-center text-base border-b-text border-current bg-transparent" min="1" aria-label="Quantity" data-qty-input="" pattern="[0-9]*" data-qty-adjust="set"
                      @keyup.debounce.1000ms="keyupOnInput($event)" @change="qtyAdjust($event, item)" x-model.number="item.quantity" autocomplete="off">
                    <button class="p-4 flex items-center justify-center" data-qty-adjust="plus" @click.prevent="qtyAdjust($event, item)" :aria-label="'Add one ' + item.title">
                      <span class="inline-block w-3 h-3"><svg aria-hidden="true" focusable="false" role="presentation" class="icon fill-current icon-plus" viewBox="0 0 20 20">
                          <path
                            d="M17.409 8.929h-6.695V2.258c0-.566-.506-1.029-1.071-1.029s-1.071.463-1.071 1.029v6.671H1.967C1.401 8.929.938 9.435.938 10s.463 1.071 1.029 1.071h6.605V17.7c0 .566.506 1.029 1.071 1.029s1.071-.463 1.071-1.029v-6.629h6.695c.566 0 1.029-.506 1.029-1.071s-.463-1.071-1.029-1.071z">
                          </path>
                        </svg></span>
                    </button>
                  </div>
                  <button class="none lg:inline-block mt-2 text-sm" data-qty-adjust="remove" @click.prevent="qtyAdjust($event, item)">
                    <small>Remove </small>
                    <span class="visually-hidden" x-text="item.title"></span>
                  </button>
                </div>
                <div class="ml-1 text-right">
                  <template x-if="item.line_level_discount_allocations.length">
                    <div>
                      <span class="visually-hidden">Regular price</span>
                      <del class="line-through" x-html="formatMoney(item.original_price)"></del>
                      <span class="visually-hidden">Sale price</span>
                      <span class="" x-html="formatMoney(item.final_line_price)"></span>
                    </div>
                  </template>
                  <template x-if="!item.line_level_discount_allocations.length">
                    <span class="" x-html="formatMoney(item.final_line_price)"></span>
                  </template>
                  <template x-if="item.unit_price_measurement">
                    <div class="text-sm">
                      <span x-html="formatMoney(item.unit_price)"></span> / <span x-text="item.unit_price_measurement.reference_value"></span>
                      <span x-text="item.unit_price_measurement.reference_unit"></span>
                    </div>
                  </template>
                  <template x-if="item.line_level_discount_allocations.length">
                    <ul class="hidden lg:block mt-1 text-sm text-scheme-accent" aria-label="Discount">
                      <template x-for="allocation in item.line_level_discount_allocations">
                        <li class="">
                          <span x-text="allocation.discount_application.title"></span>
                          <template x-if="allocation.amount > 0">
                            <span class="whitespace-nowrap">−<span x-html="formatMoney(allocation.amount)"></span></span>
                          </template>
                        </li>
                      </template>
                    </ul>
                  </template>
                </div>
              </div>
            </template>
          </div>
          <div class="py-4">
            <label for="CartSpecialInstructions" class="text-sm"> Add a note to your order </label>
            <textarea name="note" id="CartSpecialInstructions" class="block mt-1 p-2 w-full border-theme-width border-scheme-border text-sm bg-transparent" :class="{ 'opacity-50 cursor-wait' : noteUpdating }" x-text="state.note"
              @keyup.debounce.1000ms="keyupOnInput($event)" @change="updateNote($event)">              </textarea>
          </div>
        </div>
        <div class="pt-4 lg:pt-8 pb-safe-bottom border-scheme-border border-t-theme-width">
          <div :class="{ 'opacity-50  cursor-wait': updating }">
            <template x-if="state.cart_level_discount_applications.length" x-for="application in state.cart_level_discount_applications">
              <p class="flex justify-between text-scheme-accent pb-2">
                <span class="visually-hidden">Discount</span>
                <span x-text="application.title"></span>
                <span class="ml-2" x-html="formatMoney(application.total_allocated_amount)"></span>
              </p>
            </template>
            <p class="flex justify-between text-lg">
              <span>Subtotal</span>
              <span class="ml-2" x-html="formatMoney(state.total_price)"></span>
            </p>
            <p class="mt-4 text-sm accent-links-scheme text-right"> Taxes and <a href="/policies/shipping-policy">shipping</a> calculated at checkout </p>
            <div class="text-right mt-4">
              <div>
                <input type="submit" name="checkout" class="cursor-pointer py-2 px-4 w-full w-full btn btn-solid-primary-accent" :disabled="updating" value="Check Out">
              </div>
              <div class="w-full md:mt-2 additional-checkout-buttons Liquid error (snippets/cart-drawer line 257): Could not find asset snippets/button-style.liquid">
                <div class="dynamic-checkout__content" id="dynamic-checkout-cart" data-shopify="dynamic-checkout-cart"></div>
              </div>
            </div>
          </div>
        </div>
      </div>
    </template>
  </div>
</form>

GET /search

<form x-ref="searchForm" action="/search" method="get" role="search" @submit="onFormSubmit">
  <div class="relative">
    <input id="header-search" type="search" name="q" value="" class="header-search-input pl-9 py-2 placeholder-current font-secondary w-full" placeholder="Search" x-ref="input" aria-expanded="false" aria-owns="predictive-search-results-list"
      aria-controls="predictive-search-results-list" aria-autocomplete="list" autocorrect="off" autocomplete="off" autocapitalize="off" spellcheck="false" x-model="rawQuery" @input.debounce.300="onChange" @focus="onFocus">
    <label class="visually-hidden" for="header-search">Search</label>
    <input type="hidden" name="options[prefix]" value="last"><button class="absolute left-0 top-1/2 transform -translate-y-1/2 p-1" aria-label="Search">
      <span class="inline-block w-7 h-7"><svg aria-hidden="true" focusable="false" role="presentation" class="icon fill-current icon-search" viewBox="0 0 24 24">
          <path fill-rule="evenodd"
            d="M10.548 17.187a6.647 6.647 0 01-6.64-6.64 6.647 6.647 0 016.64-6.639 6.647 6.647 0 016.64 6.64 6.647 6.647 0 01-6.64 6.64zm6.629-1.253a8.507 8.507 0 001.918-5.386C19.095 5.834 15.26 2 10.548 2 5.835 2 2 5.834 2 10.548c0 4.712 3.835 8.547 8.548 8.547a8.503 8.503 0 005.265-1.828L20.546 22l1.35-1.349-4.72-4.717z"
            clip-rule="evenodd"></path>
        </svg></span>
    </button>
    <button @click="close(true,true)" class="block p-1 absolute right-0 top-1/2 transform -translate-y-1/2" type="button">
      <span class="visually-hidden">Close (esc)</span>
      <span class="inline-block w-7 h-7"><svg aria-hidden="true" focusable="false" role="presentation" class="icon fill-current icon-close" viewBox="0 0 24 24">
          <path fill-rule="evenodd" d="M18.364 4.222l1.414 1.414L13.414 12l6.364 6.364-1.414 1.414L12 13.414l-6.364 6.364-1.414-1.414L10.586 12 4.222 5.636l1.414-1.414L12 10.586l6.364-6.364z" clip-rule="evenodd"></path>
        </svg></span>
    </button>
  </div>
  <div id="predictiveSearchResults" :class="{'opacity-0': !isOpen }" tabindex="-1"
    class="bg-scheme-background pb-4 lg:pb-8 section-x-padding absolute bottom-border-width left-0 right-0 transform translate-y-search-results z-50 overflow-hidden overflow-y-auto max-h-screen-header opacity-0" data-color-scheme="primary">
    <template x-if="loading &amp;&amp; !results">
      <div class="w-7 h-7 mx-auto" data-predictive-loading="">
        <div class="loading"></div>
      </div>
    </template>
    <template x-if="isOpen">
      <div class="text-scheme-text" x-ref="results">
      </div>
    </template>
  </div>
  <span class="predictive-search-status visually-hidden" role="status" aria-hidden="true"></span>
</form>

POST /localization

<form method="post" action="/localization" id="localization_form" accept-charset="UTF-8" class="shopify-localization-form" enctype="multipart/form-data" data-disclosure-form=""><input type="hidden" name="form_type" value="localization"><input
    type="hidden" name="utf8" value="✓"><input type="hidden" name="_method" value="put"><input type="hidden" name="return_to" value="/">
  <div class="inline-block">
    <h2 class="visually-hidden" id="country-heading"> Country/region </h2>
    <div class="relative text-scheme-text" data-disclosure-country="">
      <button type="button" class="text-sm border-scheme-text border-scheme-meta p-2" aria-expanded="false" aria-controls="country-list" aria-describedby="country-heading" data-disclosure-toggle=""> Canada (CAD $) <span
          class="inline-block ml-1 w-3 fill-current">
          <svg aria-hidden="true" focusable="false" role="presentation" class="icon fill-current icon-chevron-down" viewBox="0 0 20 20">
            <path fill-rule="evenodd" d="M16.668 5L18 6.332l-7.993 7.993L10 14.32l-.007.006L2 6.332 3.332 5 10 11.668 16.668 5z"></path>
          </svg>
        </span>
      </button>
      <ul id="country-list" class="disclosure-list absolute bg-scheme-background opacity-0 top-0 left-0 lg:left-auto lg:right-0 transform transition-opacity border-scheme-text border-scheme-meta py-2" data-disclosure-list="" inert=""
        aria-hidden="true">
        <li class="text-sm w-40">
          <a class="block p-2" href="#" data-value="AU" data-disclosure-option="" tabindex="-1">
                            <span class="">Australia (AUD $)</span>
                          </a>
        </li>
        <li class="text-sm w-40">
          <a class="block p-2" href="#" data-value="AT" data-disclosure-option="" tabindex="-1">
                            <span class="">Austria (EUR €)</span>
                          </a>
        </li>
        <li class="text-sm w-40">
          <a class="block p-2" href="#" data-value="BE" data-disclosure-option="" tabindex="-1">
                            <span class="">Belgium (EUR €)</span>
                          </a>
        </li>
        <li class="text-sm w-40">
          <a class="block p-2" href="#" aria-current="true" data-value="CA" data-disclosure-option="" tabindex="-1">
                            <span class="text-scheme-accent font-bold">Canada (CAD $)</span>
                          </a>
        </li>
        <li class="text-sm w-40">
          <a class="block p-2" href="#" data-value="CZ" data-disclosure-option="" tabindex="-1">
                            <span class="">Czechia (CZK Kč)</span>
                          </a>
        </li>
        <li class="text-sm w-40">
          <a class="block p-2" href="#" data-value="DK" data-disclosure-option="" tabindex="-1">
                            <span class="">Denmark (DKK kr.)</span>
                          </a>
        </li>
        <li class="text-sm w-40">
          <a class="block p-2" href="#" data-value="FI" data-disclosure-option="" tabindex="-1">
                            <span class="">Finland (EUR €)</span>
                          </a>
        </li>
        <li class="text-sm w-40">
          <a class="block p-2" href="#" data-value="FR" data-disclosure-option="" tabindex="-1">
                            <span class="">France (EUR €)</span>
                          </a>
        </li>
        <li class="text-sm w-40">
          <a class="block p-2" href="#" data-value="DE" data-disclosure-option="" tabindex="-1">
                            <span class="">Germany (EUR €)</span>
                          </a>
        </li>
        <li class="text-sm w-40">
          <a class="block p-2" href="#" data-value="HK" data-disclosure-option="" tabindex="-1">
                            <span class="">Hong Kong SAR (HKD $)</span>
                          </a>
        </li>
        <li class="text-sm w-40">
          <a class="block p-2" href="#" data-value="IE" data-disclosure-option="" tabindex="-1">
                            <span class="">Ireland (EUR €)</span>
                          </a>
        </li>
        <li class="text-sm w-40">
          <a class="block p-2" href="#" data-value="IL" data-disclosure-option="" tabindex="-1">
                            <span class="">Israel (ILS ₪)</span>
                          </a>
        </li>
        <li class="text-sm w-40">
          <a class="block p-2" href="#" data-value="IT" data-disclosure-option="" tabindex="-1">
                            <span class="">Italy (EUR €)</span>
                          </a>
        </li>
        <li class="text-sm w-40">
          <a class="block p-2" href="#" data-value="JP" data-disclosure-option="" tabindex="-1">
                            <span class="">Japan (JPY ¥)</span>
                          </a>
        </li>
        <li class="text-sm w-40">
          <a class="block p-2" href="#" data-value="MY" data-disclosure-option="" tabindex="-1">
                            <span class="">Malaysia (MYR RM)</span>
                          </a>
        </li>
        <li class="text-sm w-40">
          <a class="block p-2" href="#" data-value="NL" data-disclosure-option="" tabindex="-1">
                            <span class="">Netherlands (EUR €)</span>
                          </a>
        </li>
        <li class="text-sm w-40">
          <a class="block p-2" href="#" data-value="NZ" data-disclosure-option="" tabindex="-1">
                            <span class="">New Zealand (NZD $)</span>
                          </a>
        </li>
        <li class="text-sm w-40">
          <a class="block p-2" href="#" data-value="NO" data-disclosure-option="" tabindex="-1">
                            <span class="">Norway (USD $)</span>
                          </a>
        </li>
        <li class="text-sm w-40">
          <a class="block p-2" href="#" data-value="PL" data-disclosure-option="" tabindex="-1">
                            <span class="">Poland (PLN zł)</span>
                          </a>
        </li>
        <li class="text-sm w-40">
          <a class="block p-2" href="#" data-value="PT" data-disclosure-option="" tabindex="-1">
                            <span class="">Portugal (EUR €)</span>
                          </a>
        </li>
        <li class="text-sm w-40">
          <a class="block p-2" href="#" data-value="SG" data-disclosure-option="" tabindex="-1">
                            <span class="">Singapore (SGD $)</span>
                          </a>
        </li>
        <li class="text-sm w-40">
          <a class="block p-2" href="#" data-value="KR" data-disclosure-option="" tabindex="-1">
                            <span class="">South Korea (KRW ₩)</span>
                          </a>
        </li>
        <li class="text-sm w-40">
          <a class="block p-2" href="#" data-value="ES" data-disclosure-option="" tabindex="-1">
                            <span class="">Spain (EUR €)</span>
                          </a>
        </li>
        <li class="text-sm w-40">
          <a class="block p-2" href="#" data-value="SE" data-disclosure-option="" tabindex="-1">
                            <span class="">Sweden (SEK kr)</span>
                          </a>
        </li>
        <li class="text-sm w-40">
          <a class="block p-2" href="#" data-value="CH" data-disclosure-option="" tabindex="-1">
                            <span class="">Switzerland (CHF CHF)</span>
                          </a>
        </li>
        <li class="text-sm w-40">
          <a class="block p-2" href="#" data-value="AE" data-disclosure-option="" tabindex="-1">
                            <span class="">United Arab Emirates (AED د.إ)</span>
                          </a>
        </li>
        <li class="text-sm w-40">
          <a class="block p-2" href="#" data-value="GB" data-disclosure-option="" tabindex="-1">
                            <span class="">United Kingdom (GBP £)</span>
                          </a>
        </li>
        <li class="text-sm w-40">
          <a class="block p-2" href="#" data-value="US" data-disclosure-option="" tabindex="-1">
                            <span class="">United States (USD $)</span>
                          </a>
        </li>
      </ul>
      <input type="hidden" name="country_code" id="CountrySelector" value="CA" data-disclosure-input="">
    </div>
  </div>
</form>

Text Content

x








--------------------------------------------------------------------------------


by Timesact



Skip to content


Close (esc)
Menu
Close menu
Dorrance Bookstore
 * Shop
   * All Books
   * Audiobooks
   * Children's
     * Bilingual/Additional Languages
     * Fiction
     * Nature
     * Non-Fiction
     * Poetry
     * Religious
   * Fiction
     * Action/Adventure
     * Erotica
     * General Fiction
     * Historical
     * Humor
     * Inspirational
     * Medical
     * Religious
     * Mystery, Suspense & Horror
     * Political
     * Romance
     * Sci-Fi & Fantasy
     * Short Stories
     * Western
   * Non-Fiction
     * Addiction & Recovery
     * Autobiography, Biography & Memoir
     * Body, Mind & Spirit
     * Business & Economics
     * Cars & Transportation
     * Cooking, Food & Drinks
     * Cultural
     * Current Events & Politics
     * Diet, Health & Medicine
     * Education
     * Essays
     * Family & Relationships
     * Finance
     * History & Military History
     * Humor
     * Law
     * Mathematics
     * Medical
     * Motivational & Inspirational
     * Music, Movies & Art
     * Nature
     * New Age
     * Pets
     * Philosophy
     * Photography
     * Psychology
     * Puzzles, Games & Trivia
     * Relationships
     * Religion & Inspiration
     * Science & Technology
     * Self-Help & How-To
     * Social Sciences
     * Spirituality
     * Sports
     * Travel
     * True Crime
   * Poetry
     * General Poetry
     * Humor
     * Nostalgia
     * Religious & Inspirational
     * Romantic
   * Young Adult
     * YA Fiction
     * YA Non-Fiction
 * Bestsellers
 * Trending
   * Veterans' Stories
   * African American Authors
 * Industry Influencers
 * Author Events
 * Become a Published Author

 * Log in
 * Create account

Search Search
 * Facebook
 * Instagram
 * TikTok
 * Twitter
 * Pinterest
 * Youtube


YOUR CART - 0 ITEMS

Close (esc)



Your cart is currently empty.

Enable cookies to use the shopping cart

:

−




Remove
Regular price Sale price
/
−

Add a note to your order

Discount

Subtotal

Taxes and shipping calculated at checkout


Dorrance Publishing Bookstore features Print-on-Demand titles. See Shipping &
Printing Times.

 * Shop
    * All Books
    * Audiobooks
   
   
    * CHILDREN'S
      
      * Bilingual/Additional Languages
      * Fiction
      * Nature
      * Non-Fiction
      * Poetry
      * Religious
   
   
    * FICTION
      
      * Action/Adventure
      * Erotica
      * General Fiction
      * Historical
      * Humor
      * Inspirational
      * Medical
      * Religious
      * Mystery, Suspense & Horror
      * Political
      * Romance
      * Sci-Fi & Fantasy
      * Short Stories
      * Western
   
   
    * NON-FICTION
      
      * Addiction & Recovery
      * Autobiography, Biography & Memoir
      * Body, Mind & Spirit
      * Business & Economics
      * Cars & Transportation
      * Cooking, Food & Drinks
      * Cultural
      * Current Events & Politics
      * Diet, Health & Medicine
      * Education
      * Essays
      * Family & Relationships
      * Finance
      * History & Military History
      * Humor
      * Law
      * Mathematics
      * Medical
      * Motivational & Inspirational
      * Music, Movies & Art
      * Nature
      * New Age
      * Pets
      * Philosophy
      * Photography
      * Psychology
      * Puzzles, Games & Trivia
      * Relationships
      * Religion & Inspiration
      * Science & Technology
      * Self-Help & How-To
      * Social Sciences
      * Spirituality
      * Sports
      * Travel
      * True Crime
   
   
    * POETRY
      
      * General Poetry
      * Humor
      * Nostalgia
      * Religious & Inspirational
      * Romantic
   
   
    * YOUNG ADULT
      
      * YA Fiction
      * YA Non-Fiction

 * Bestsellers
 * Trending
    * Veterans' Stories
    * African American Authors

 * Industry Influencers
 * Author Events
 * Become a Published Author


Menu
Log in
Search our site
Search Close (esc)

0 0 items


TRENDING AT DORRANCE

Step into a world of relaxation and inspiration with our reading trends.

Shop Now

BEST SELLERS

 * Mystery In The Hill
   
   Mystery In The Hill
   
   From $13.00

 * Little Miss Grumpy Pants
   
   Little Miss Grumpy Pants
   
   From $27.00

 * 5.0 / 5.0
   
   (1) 1 total reviews
   
   Angels In Afghanistan
   
   Angels In Afghanistan
   
   From $9.00

 * 5.0 / 5.0
   
   (1) 1 total reviews
   
   The Doctor's In: Treating America's Greatest Cyber Security Threat
   
   The Doctor's In: Treating America's Greatest Cyber Security Threat
   
   From $7.00

View All


EXPLORE


CHILDREN'S BOOK WEEK

Enrich Your Child's Imagination with Our Selection of Books for Children's Book
Week.

View


FEATURED REVIEWS

“

> The sensational memoir Up by the Bootstraps draws on intelligence community
> exploits as a blueprint for a life spent serving others.
> 
> - Up by the Bootstraps, Foreword Reviews

“

> A fact-heavy but consistently compelling look at a day of real-life naval
> heroism.
> 
> - A Grand Pause, Kirkus Reviews

“

> Unique, seminal, impressively informative, well written, and thoroughly
> 'reader friendly'
> 
> - The United States Army Ground Forces During the Interwar Years 1919-1941,
> Midwest Book Review



MAY STAFF PICKS

 * 5.0 / 5.0
   
   (1) 1 total reviews
   
   Surviving Is Such A Joy: A Memoir
   
   Surviving Is Such A Joy: A Memoir
   
   From $24.00

 * 5.0 / 5.0
   
   (1) 1 total reviews
   
   The Navajo Code Talkers: 50Th Anniversary Edition
   
   The Navajo Code Talkers: 50Th Anniversary Edition
   
   $24.00

 * Daydream Doodles!: A Coloring Book For Adults
   
   Daydream Doodles!: A Coloring Book For Adults
   
   From $17.00

 * 5.0 / 5.0
   
   (1) 1 total reviews
   
   Angels In Afghanistan
   
   Angels In Afghanistan
   
   From $9.00

 * 5.0 / 5.0
   
   (4) 4 total reviews
   
   In Thy Mother's Honor
   
   In Thy Mother's Honor
   
   From $30.00

 * George And Russ: Soldiers, Husbands, Fathers, And Friends: A Gripping Story
   Based On Real Events During Wwii
   
   George And Russ: Soldiers, Husbands, Fathers, And Friends: A Gripping Story
   Based On Real Events During Wwii
   
   From $28.00

 * 5.0 / 5.0
   
   (1) 1 total reviews
   
   Miracles, Masterpieces, And The Madonna: A Mother's Journey Of Faith And
   Revelation
   
   Miracles, Masterpieces, And The Madonna: A Mother's Journey Of Faith And
   Revelation
   
   From $188.00

 * My Mother Told Me Stories
   
   My Mother Told Me Stories
   
   From $21.00


FAN FAVORITE GENRES

 * Poetry
 * Fiction
 * Autobiography, Biography & memoir
 * Children's

AWARD WINNERS

 * 4.99 / 5.0
   
   (88) 88 total reviews
   
   A Secret Lies In New Orleans
   
   A Secret Lies In New Orleans
   
   From $24.00

 * Dark Obsessions
   
   Dark Obsessions
   
   From $17.00

 * 5.0 / 5.0
   
   (1) 1 total reviews
   
   One Mad Apple
   
   One Mad Apple
   
   From $10.00

 * 5.0 / 5.0
   
   (2) 2 total reviews
   
   Charlie The Champion
   
   Charlie The Champion
   
   From $20.00

 * Who Wants To Be Friends With A Dragon?
   
   Who Wants To Be Friends With A Dragon?
   
   From $23.00

 * 5.0 / 5.0
   
   (1) 1 total reviews
   
   Stiff Hearts
   
   Stiff Hearts
   
   From $20.00

 * The Silver-Horned Girl
   
   Horned Girl
   
   The Silver
   
   From $27.00

 * The Growing-Tree
   
   Tree
   
   The Growing
   
   From $20.00

View All


AUTHOR COLLECTIONS

 * Paul W. Tastad
 * Carly Robbins
 * Annie Streit
 * Jo Ann Atcheson Gray




AUTHOR EVENTS




BECOME A PUBLISHED AUTHOR

Get Started

Dorrance Bookstore


NAVIGATION

 * Become a Published Author
 * Return Policy
 * Privacy Policy
 * Shipping and Delivery Timelines
 * Media Requests
 * Author Events
 * Contact Us


GET CONNECTED

 * Facebook
 * Instagram
 * TikTok
 * Twitter
 * Pinterest
 * Youtube

© 2024, Dorrance Bookstore.


ACCEPTED PAYMENTS

 * Amazon
 * American Express
 * Diners Club
 * Discover
 * Mastercard
 * PayPal
 * Venmo
 * Visa


COUNTRY/REGION

Canada (CAD $)
 * Australia (AUD $)
 * Austria (EUR €)
 * Belgium (EUR €)
 * Canada (CAD $)
 * Czechia (CZK Kč)
 * Denmark (DKK kr.)
 * Finland (EUR €)
 * France (EUR €)
 * Germany (EUR €)
 * Hong Kong SAR (HKD $)
 * Ireland (EUR €)
 * Israel (ILS ₪)
 * Italy (EUR €)
 * Japan (JPY ¥)
 * Malaysia (MYR RM)
 * Netherlands (EUR €)
 * New Zealand (NZD $)
 * Norway (USD $)
 * Poland (PLN zł)
 * Portugal (EUR €)
 * Singapore (SGD $)
 * South Korea (KRW ₩)
 * Spain (EUR €)
 * Sweden (SEK kr)
 * Switzerland (CHF CHF)
 * United Arab Emirates (AED د.إ)
 * United Kingdom (GBP £)
 * United States (USD $)

Close (esc)




 * Choosing a selection results in a full page refresh.
 * Press the space key then arrow keys to make a selection.