Close Menu
    Facebook X (Twitter) Instagram
    • Home
    • Contact Us
    • About Us
    • Privacy Policy
    • Terms Of Service
    • Advertisement
    Monday, July 6
    Facebook X (Twitter) Instagram Pinterest Vimeo
    ABS Africa TV
    • Breaking News
    • Trending
    • Africa News
    • World News
    • Features
    • Technology
    • Sports
    • Politics
    • More
      • Culture
      • Lifestyle
      • Travel
      • Business
      • Environment
      • Legal
      • Health
      • Cameroon
      • Ambazonia
      • AfroSingles
      • Environ/Climate
      • Editorial
      • The Leak Magazine
    • Donate
    Subscription
    ABS Africa TV
    Home»Travel»Lamu County residents harness wildlife, beaches to boost tourism
    Travel

    Lamu County residents harness wildlife, beaches to boost tourism

    Martin AkumaBy Martin AkumaJuly 6, 2026No Comments11 Mins Read
    Facebook Twitter Pinterest LinkedIn Tumblr Email
    Share
    Facebook Twitter LinkedIn Pinterest Email
    Post Views: 15

    Lamu County residents harness wildlife, beaches to boost tourism

    Lamu County residents harness wildlife, beaches to boost tourism

    School children and locals partake in beach clean up in Lamu Old Town. (Photo: Farhiya Hussein)

    Read this story aloud

    Listen to the clean text version of this article

    Ready
    5 min listen
    Audio reading is not supported on this browser.

    With its pristine environment and deep Swahili heritage, Lamu has long been a favoured destination, but locals are now seeking new ways to promote eco-tourism and preserve their natural surroundings

    Residents of Lamu County are tapping into the region’s rich natural resources, from its wildlife-filled forests to turtle-nesting beaches, as they work to bolster tourism and secure sustainable economic growth.
    With its pristine environment and deep Swahili heritage, Lamu has long been a favoured destination, but locals are now seeking new ways to promote eco-tourism and preserve their natural surroundings.
    On Amu Island, donkeys vital to the community’s daily lives are given special care at a local sanctuary.

    More To Read

    • Lamu County urges US and Europe to review travel advisories, citing tourism and investment setbacks

    The sanctuary provides free medical services to ensure these animals remain healthy and continue supporting livelihoods.
    Dr Elvande Sande from the Donkey Sanctuary in Lamu urged residents to be more mindful of the animals’ welfare. “We encourage the people of Lamu to take care of their donkeys, especially when they fall ill, so they can keep serving the community,” said Dr Sande advising residents to ensure their donkeys receive proper nutrition and water daily.
    Najma Swaleh, a resident of Amu Island, appraised the importance of donkeys to the local way of life. “These donkeys are like family to us. We have a responsibility as humans to ensure when they are sick, we take them to the sanctuary so they can recover and continue helping us,” she said.

    Latest Stories

    • Ruto vows no room for ethnic politics as he fronts development milestones in fresh re-election strategy
    • Nigeria condemns killing of citizens in South Africa amid rising xenophobic violence
    • Kenya’s civic space downgraded to ‘repressed’ amid surge in rights violations – report
    • Controller of Budget calls for stricter controls on emergency spending after Sh144 billion used for debt repayment


    School children and locals partake in beach clean up in Lamu Old Town. (Photo: Farhiya Hussein)
    Lamu’s forests, home to giraffes, zebras, and elephants, along with its beaches, which serve as nesting grounds for endangered sea turtles, are seen as vital assets for eco-tourism. Residents are being encouraged to explore economic opportunities through wildlife conservation and tourism.
    Ali Shebwana, a Kenya Wildlife Service (KWS) warden, highlighted the untapped potential of wildlife tourism in Lamu. “I urge the people of Lamu to recognise the significance of the wildlife in their forests and beaches. These animals can be an important economic asset if we manage them well,” said Shebwana.
    Tourism stakeholders, including hoteliers across the Lamu archipelago, are also being urged to improve their facilities and practices to attract more visitors.
    Speaking during a recent peace caravan and beach cleanup exercise in Lamu Old Town and Wiyoni, County Tourism Executive Aisha Miraj emphasized the importance of cleanliness and hospitality in drawing tourists.
    “We are leading efforts to keep Lamu clean, especially our beaches, which are key tourist attractions. I encourage hoteliers to maintain cleanliness and use better public relations skills to attract international visitors,” said Miraj.

    Lamu Tourism Executive Aisha Miraj. She is urging residents to maintain cleanliness of beaches and other areas to attract tourists. (Photo: Farhiya Hussein)
    Professionalism
    She further advised hoteliers to treat their guests with warmth and professionalism, which would boost bookings during the peak tourist season.
    The county has also partnered with the Tourism Fund to train over 100 local tourism workers in hospitality. “We have provided training to hotel staff, managers, and other tourism players to help them offer the best service, but maintaining cleanliness is still key to improving the sector,” added Miraj.
    Lamu Old Town, a UNESCO World Heritage site, remains a major draw for tourists due to its unique Swahili culture and architecture.
    The town, one of the oldest surviving Swahili settlements on the East African coast, attracts hundreds of visitors each year, eager to experience its historical charm.
    Fridah Njeri, Chair of the Lamu County Tourism Association, praised local efforts to clean up the beaches but stressed the ongoing challenges with waste disposal, especially plastics. “We still have a long way to go in addressing waste disposal on our beaches and in the ocean. But we are making progress, and it’s encouraging to see the community come together to keep Lamu clean,” said Njeri.

    Lamu Tourism Association (LTA) Chairperson Fridah Njeri. (Photo: Farhiya Hussein)
    With tourist numbers steadily increasing, especially during the high season, stakeholders in Lamu are optimistic that the county’s tourism sector could reach full capacity by the end of the year.
    Governor Issa Timamy also urged residents to prioritize wildlife conservation and maintain the natural beauty of the area. “Our wildlife and environment are vital economic assets, and it is up to us to protect them for the benefit of future generations,” said Governor Timamy.

    Other Topics To Read

    Top Stories Today

    • Ruto vows no room for ethnic politics as he fronts development milestones in fresh re-election strategy
    • Nigeria condemns killing of citizens in South Africa amid rising xenophobic violence
    • CoB calls for stricter controls on emergency spending after Sh144 billion used for debt repayment
    • Kenya’s civic space downgraded to ‘repressed’ amid surge in rights violations – report
    • Bellingham double fires 10-man England past Mexico into World Cup quarter-finals
    • KQ flight to New York forced to return to Nairobi after mid-air technical glitch

    `;
    }

    return “;
    }

    function commentActionsMarkup(comment, canComment) {
    const likeLabel = comment.liked_by_me ? ‘Liked’ : ‘Like’;
    const likeCount = Number(comment.like_count || 0) > 0
    ? “
    : ”;

    const likeButton = canComment && comment.status === ‘approved’
    ? “
    : “;

    const replyButton = canComment && comment.status === ‘approved’
    ? “
    : ”;

    return `

    `;
    }

    function commentMarkup(comment, canComment, isReply = false) {
    const pendingBadge = comment.status && comment.status !== ‘approved’
    ? “
    : ”;

    const edited = comment.is_edited
    ? “
    : ”;

    const repliesHtml = Array.isArray(comment.replies) && comment.replies.length
    ? `

    `
    : “;

    return `

    `;
    }

    function replyFormMarkup(commentId) {
    return `

    `;
    }

    function setNotice(widget, message, type = ‘info’) {
    const notice = widget.querySelector(‘[data-role=”notice”]’);
    if (!notice) return;

    if (!message) {
    notice.hidden = true;
    notice.textContent = ”;
    notice.classList.remove(‘is-error’);
    return;
    }

    notice.hidden = false;
    notice.textContent = message;
    notice.classList.toggle(‘is-error’, type === ‘error’);
    }

    function setCount(widget, total) {
    const count = widget.querySelector(‘[data-role=”count”]’);
    if (!count) return;

    const num = Number(total || 0);
    count.textContent = num === 1 ? ‘1 comment’ : `${num} comments`;
    }

    function openReplyBox(widget, commentId) {
    widget.querySelectorAll(‘[data-role=”reply-box”]’).forEach(box => {
    box.hidden = true;
    box.innerHTML = ”;
    });

    const targetItem = widget.querySelector(`.ev-comments__item[data-comment-id=”${commentId}”]`);
    if (!targetItem) return;

    const replyBox = targetItem.querySelector(‘[data-role=”reply-box”]’);
    if (!replyBox) return;

    replyBox.hidden = false;
    replyBox.innerHTML = replyFormMarkup(commentId);

    const textarea = replyBox.querySelector(‘textarea’);
    if (textarea) textarea.focus();
    }

    function closeReplyBox(container) {
    if (!container) return;
    container.hidden = true;
    container.innerHTML = ”;
    }

    async function initCommentsWidget(widget) {
    const state = {
    articleId: Number(widget.dataset.articleId),
    loadUrl: widget.dataset.loadUrl,
    storeUrl: widget.dataset.storeUrl,
    commentsBaseUrl: widget.dataset.commentsBaseUrl,
    canComment: widget.dataset.canComment === ‘1’,
    page: 1,
    perPage: 10,
    sort: ‘newest’,
    total: 0,
    hasMore: false,
    busy: false
    };

    const list = widget.querySelector(‘[data-role=”list”]’);
    const loading = widget.querySelector(‘[data-role=”loading”]’);
    const empty = widget.querySelector(‘[data-role=”empty”]’);
    const loadMoreBtn = widget.querySelector(‘[data-role=”load-more”]’);
    const sortSelect = widget.querySelector(‘[data-role=”sort”]’);
    const composerForm = widget.querySelector(‘[data-role=”composer-form”]’);

    async function loadComments(reset = true) {
    if (state.busy) return;

    state.busy = true;
    setNotice(widget, ”);
    loading.hidden = false;

    if (reset) {
    state.page = 1;
    list.innerHTML = ”;
    empty.hidden = true;
    }

    try {
    const url = new URL(state.loadUrl, window.location.origin);
    url.searchParams.set(‘page’, state.page);
    url.searchParams.set(‘per_page’, state.perPage);
    url.searchParams.set(‘sort’, state.sort);

    const response = await requestJson(url.toString(), {
    method: ‘GET’,
    headers: {
    ‘Accept’: ‘application/json’,
    ‘X-Requested-With’: ‘XMLHttpRequest’
    }
    });

    const items = Array.isArray(response.data) ? response.data : [];
    const meta = response.meta || {};

    state.total = Number(meta.total || 0);
    state.hasMore = !!meta.has_more;

    setCount(widget, state.total);

    if (reset) {
    list.innerHTML = ”;
    }

    if (!items.length && reset) {
    empty.hidden = false;
    } else {
    empty.hidden = true;
    list.insertAdjacentHTML(
    ‘beforeend’,
    items.map(item => commentMarkup(item, state.canComment, false)).join(”)
    );
    }

    loadMoreBtn.hidden = !state.hasMore;
    } catch (error) {
    if (!list.children.length) {
    empty.hidden = false;
    empty.textContent = ‘Unable to load comments right now.’;
    }
    setNotice(widget, error.message || ‘Unable to load comments.’, ‘error’);
    } finally {
    loading.hidden = true;
    state.busy = false;
    }
    }

    async function submitTopLevelComment(form) {
    const textarea = form.querySelector(‘textarea[name=”content”]’);
    const button = form.querySelector(‘[data-role=”submit-comment”]’);

    if (!textarea) return;

    const content = textarea.value.trim();
    if (!content) return;

    const originalText = button ? button.textContent : ”;

    try {
    if (button) {
    button.disabled = true;
    button.textContent = ‘Posting…’;
    }

    const response = await requestJson(state.storeUrl, {
    method: ‘POST’,
    headers: buildJsonHeaders(),
    body: JSON.stringify({
    article_id: state.articleId,
    content: content,
    source_url: window.location.href
    })
    });

    textarea.value = ”;

    if (response?.data) {
    list.insertAdjacentHTML(
    ‘afterbegin’,
    commentMarkup(response.data, state.canComment, false)
    );
    empty.hidden = true;

    if ((response.data.status || ”) === ‘approved’) {
    state.total += 1;
    setCount(widget, state.total);
    }
    }

    setNotice(widget, response.message || ‘Comment posted successfully.’);
    } catch (error) {
    setNotice(widget, error.message || ‘Unable to post comment.’, ‘error’);
    } finally {
    if (button) {
    button.disabled = false;
    button.textContent = originalText || ‘Post comment’;
    }
    }
    }

    async function submitReply(form) {
    const commentId = Number(form.dataset.commentId || 0);
    const textarea = form.querySelector(‘textarea[name=”content”]’);
    const button = form.querySelector(‘.ev-comments__reply-submit’);

    if (!commentId || !textarea) return;

    const content = textarea.value.trim();
    if (!content) return;

    const originalText = button ? button.textContent : ”;

    try {
    if (button) {
    button.disabled = true;
    button.textContent = ‘Posting…’;
    }

    const response = await requestJson(`${state.commentsBaseUrl}/${commentId}/reply`, {
    method: ‘POST’,
    headers: buildJsonHeaders(),
    body: JSON.stringify({
    article_id: state.articleId,
    content: content,
    source_url: window.location.href
    })
    });

    if (response?.data) {
    const parentItem = widget.querySelector(`.ev-comments__item[data-comment-id=”${commentId}”]`);
    if (parentItem) {
    const repliesWrap = parentItem.querySelector(‘.ev-comments__replies’);
    if (repliesWrap) {
    repliesWrap.insertAdjacentHTML(
    ‘beforeend’,
    commentMarkup(response.data, state.canComment, true)
    );
    }
    }
    }

    closeReplyBox(form.closest(‘[data-role=”reply-box”]’));
    setNotice(widget, response.message || ‘Reply posted successfully.’);
    } catch (error) {
    setNotice(widget, error.message || ‘Unable to post reply.’, ‘error’);
    } finally {
    if (button) {
    button.disabled = false;
    button.textContent = originalText || ‘Post reply’;
    }
    }
    }

    async function toggleLike(button) {
    const commentId = Number(button.dataset.commentId || 0);
    if (!commentId) return;

    const originalHtml = button.innerHTML;

    try {
    button.disabled = true;
    button.innerHTML = ‘Working…’;

    const response = await requestJson(`${state.commentsBaseUrl}/${commentId}/like`, {
    method: ‘POST’,
    headers: buildJsonHeaders(),
    body: JSON.stringify({})
    });

    const liked = !!response?.data?.liked;
    const likeCount = Number(response?.data?.like_count || 0);

    button.classList.toggle(‘is-liked’, liked);
    button.innerHTML = `${liked ? ‘Liked’ : ‘Like’} ${likeCount > 0 ? “ : ”}`;
    } catch (error) {
    button.innerHTML = originalHtml;
    setNotice(widget, error.message || ‘Unable to update like.’, ‘error’);
    } finally {
    button.disabled = false;
    }
    }

    if (composerForm) {
    composerForm.addEventListener(‘submit’, function (e) {
    e.preventDefault();
    submitTopLevelComment(composerForm);
    });
    }

    if (sortSelect) {
    sortSelect.addEventListener(‘change’, function () {
    state.sort = this.value || ‘newest’;
    loadComments(true);
    });
    }

    if (loadMoreBtn) {
    loadMoreBtn.addEventListener(‘click’, function () {
    if (state.busy || !state.hasMore) return;
    state.page += 1;
    loadComments(false);
    });
    }

    widget.addEventListener(‘click’, function (e) {
    const likeBtn = e.target.closest(‘[data-action=”toggle-like”]’);
    if (likeBtn) {
    e.preventDefault();
    toggleLike(likeBtn);
    return;
    }

    const replyBtn = e.target.closest(‘[data-action=”toggle-reply”]’);
    if (replyBtn) {
    e.preventDefault();
    openReplyBox(widget, Number(replyBtn.dataset.commentId || 0));
    return;
    }

    const cancelReplyBtn = e.target.closest(‘[data-action=”cancel-reply”]’);
    if (cancelReplyBtn) {
    e.preventDefault();
    closeReplyBox(cancelReplyBtn.closest(‘[data-role=”reply-box”]’));
    }
    });

    widget.addEventListener(‘submit’, function (e) {
    const replyForm = e.target.closest(‘.ev-comments__reply-form’);
    if (replyForm) {
    e.preventDefault();
    submitReply(replyForm);
    }
    });

    loadComments(true);
    }

    document.addEventListener(‘DOMContentLoaded’, function () {
    document.querySelectorAll(‘.ev-comments’).forEach(initCommentsWidget);
    });
    })();

    Trending

    Ruto vows no room for ethnic politics as he fronts development milestones in fresh re-election strategy
    Ruto vows no room for ethnic politics as he fronts development milestones in fresh re-election strategyPolitics
    |Barack Oduor
    |18 minutes ago
    Nigeria condemns killing of citizens in South Africa amid rising xenophobic violence
    Nigeria condemns killing of citizens in South Africa amid rising xenophobic violenceAfrica
    |Mwangi Maina
    |31 minutes ago
    Controller of Budget calls for stricter controls on emergency spending after Sh144 billion used for debt repayment
    Controller of Budget calls for stricter controls on emergency spending after Sh144 billion used for debt repaymentNews
    |Lucy Mumbi
    |1 hour ago
    Machakos Mitumba Market traders suffer heavy losses after midnight fire
    Machakos Mitumba Market traders suffer heavy losses after midnight fireNews
    |Lucy Mumbi
    |23 hours ago
    Haaland's heroics send Norway into historic first World Cup quarter-final as Brazil crash out
    Haaland’s heroics send Norway into historic first World Cup quarter-final as Brazil crash outSports
    |Erick Kariuki
    |3 hours ago
    Stephen Yiembe makes history as first Kenyan referee appointed for UEFA Super Cup
    Stephen Yiembe makes history as first Kenyan referee appointed for UEFA Super CupFootball
    |Erick Kariuki
    |12 hours ago
    Kenyans urged to join Saba Saba march to honour victims of alleged abductions, killings
    Kenyans urged to join Saba Saba march to honour victims of alleged abductions, killingsNews
    |Lucy Mumbi
    |1 day ago
    Saba Saba organisers notify police of planned peaceful demonstration to ParliamentNews
    |Rachael Mutabasi
    |13 hours ago
    Taita Taveta County unveils cooperative fund to boost rural access to credit
    Taita Taveta County unveils cooperative fund to boost rural access to creditCoast
    |Farhiya Hussein
    |14 hours ago
    DP Kindiki hails cooperatives as key to Kenya's economic transformation
    DP Kindiki hails cooperatives as key to Kenya’s economic transformationNews
    |Rachael Mutabasi
    |1 day ago

    County harness Lamu residents wildlife
    Share. Facebook Twitter Pinterest LinkedIn Tumblr Email
    Martin Akuma
    • Website

    Related Posts

    Sachania, Chana ready for Rwanda rally statement this weekend

    July 6, 2026

    Tourism: Italian visitors on the rise (+1.5 per cent) and more arrivals from Europe

    July 6, 2026

    One Destination, Endless Possibilities: Wego and Tourism Malaysia Partner to Inspire MENA Discovery Ahead of Visit Malaysia 2026

    July 6, 2026
    Leave A Reply Cancel Reply

    Search
    Latest Post

    Mastercard unlocks a new way to experience the continent

    July 6, 2026

    Ruto vows no room for ethnic politics as he fronts development milestones in fresh re-election strategy

    July 6, 2026

    Racial Stereotypes in Football: A Shadow on the Global Game | Sports

    July 6, 2026

    AI Inference Chip Market Soars: Predicted Growth to $36.97 Billion by 2030

    July 6, 2026

    Trump to visit Turkey, meet Zelenskyy and al

    July 6, 2026

    Subscribe to Updates

    Get the latest creative news from FooBar about art, design and business.

    • Facebook
    • Twitter
    • Pinterest
    • Instagram
    • YouTube
    • TikTok
    ABS TV and ABS Network News is a leading Pan-African 24/7 broadcasting network delivering nonstop news, talk shows, lifestyle programs, and digital media content worldwide through Satellite, Streaming Platforms, and Roku TV.
     
    Based in the United States, we connect Africa to the world while empowering creators, journalists, and brands through innovative media and broadcasting services.
    Facebook X (Twitter) Pinterest WhatsApp Instagram

    Our Picks

    Mastercard unlocks a new way to experience the continent

    Ruto vows no room for ethnic politics as he fronts development milestones in fresh re-election strategy

    Racial Stereotypes in Football: A Shadow on the Global Game | Sports

    Most Popular

    AI Inference Chip Market Soars: Predicted Growth to $36.97 Billion by 2030

    Trump to visit Turkey, meet Zelenskyy and al

    How is the Digital Markets Act supporting AI innovation in Europe?

    © 2026 Copyright. All Rights Reserved by ABSAFRICATV
    • Privacy Policy
    • Terms of Services

    Type above and press Enter to search. Press Esc to cancel.

    We use cookies to ensure that we give you the best experience on our website. If you continue to use this site we will assume that you are happy with it.