Malaysia

Malaysia ETS Train Guide: 19 Things To Do Along The JB To KL Route, From Camping To Getting A Massage

Malaysia ETS train guide


With the ETS train from JB to KL making commuting all the more convenient, Singaporeans can now take their day trips further by exploring other stops along the service line.

If you’re looking for last-minute June holiday activities or just itching for a spontaneous getaway, we have narrowed down a list of the most exciting things to do near some stops along the JB to KL ETS route.


What is the JB to KL ETS?


The Electric Train Service (ETS) is operated by KTMB, and is Malaysia’s fastest metre-gauge intercity train. One of its most popular stretches connects JB to KL Sentral in under 5 hours, with 16 stops along the way – making it a convenient way to hop between cities, towns, and lesser-known gems in between.

Here’s a quick look at the JB to KL train timings:

Train Departure Arrival Duration
Gold-9442 7.35am 12.11pm 4 hours 36 minutes
Platinum-9542 8.40am 1pm 4 hours 20 minutes
Platinum-9528 12.45am 5.05pm 4 hours 20 minutes
Platinum-9532 4.20pm 8.40pm 4 hours 20 minutes
Platinum-9536 8.30pm 12.50pm 4 hours 20 minutes

Ticket prices start from RM63 (~S$20.02) for a 1-way ticket on Gold trains, and from RM82 (~S$26.06) on Platinum trains.


Kulai


North of Johor Bahru is the charming town of Kulai, which offers a perfect escape from the city with its hiking trails and gardens. You can look forward to photo spots at the Purple Bamboo Village or panoramic views when hiking the Gunung Pulai Recreational Forest.

Previously a 40-minute ride via the KTM Intercity from JB to Kulai, the town is now approximately a 16-minute train ride from JB via the ETS trains. We’ve also curated a 2D1N Kulai itinerary for your next weekend trip.


1. Cafe Jufei


Cosy cafe with hand-drip coffee


Begin your journey in Kulai with breakfast at Cafe Jufei. A 9-minute walk from Kulai Train Station, this cosy spot feels like stepping back into your grandparents’ home, complete with vintage furniture and Hong Kong film memorabilia.

Known for their coffee brewed with a rotation of specialty beans, caffeine lovers can look forward to hand-drip coffee with beans from Ethiopia, Honduras, and more. The cafe also sells a variety of small bites such as a 6” Pizza (RM15, ~S$4.81) and Cheesecake (RM12, ~S$3.85).

Cafe Jufei 聚啡馆
Address
3D, Jalan Ismail, Taman Kulai, 81000 Kulai, Johor Darul Ta'zim, Malaysia
Opening Hours:
Friday 10:00 AM - 06:00 PM Show More Timings
Contact Information
Google Reviews
4.6
(390)

2. Purple Bamboo Garden


Bamboo garden with photo spots


Now that your tummy has been filled, head down to Putuo Village for a nature escape. The journey is a 35-minute bus ride via P403 from Terminal Bas Kulai, or a 15-minute drive if you decide to book a Grab ride.


Image credit: Putuo Village

Begin with a walk through the Purple Bamboo Garden, with its picturesque environment and occasional photo props making it perfect for both a leisurely stroll and Instagrammable photos.

Do note that there is an entry fee to the bamboo village, with the funds being used for bamboo conservation. The fees are priced at RM10 (~S$3.21) per adult, and RM5 (~S$1.60) for kids and seniors.


Signature Bamboo Charcoal Chocolate Ice Cream.

There is even a hut in the village that sells snacks, like Earl Grey Milk Tea ice cream (RM10, ~S$3.21) to help you beat the heat. The flavours are constantly changing, with some hits including the Classic Japanese Matcha Ice Cream and the Signature Bamboo Charcoal Chocolate Ice Cream.


Image credit: Putuo Village 

There are savoury bites like the Charcoal-grilled Authentic Bamboo Tube Sticky Rice (RM10.90, ~S$3.50) too. Of course, these items are served in actual bamboo tubes, adding to the vibes.

紫竹谷 Purple Bamboo Garden
Address
Unnamed Road, 81000, 81000, Johor, Malaysia
Opening Hours:
Friday Closed Show More Timings
Contact Information
Google Reviews
4.6
(66)

3. Bodhi Sanctuary


Cultural escape from the city



Gate of Culture.
Image credit: Putuo Village 

The Bodhi Sanctuary, or Guanyin Prayer Hall, is home to Southeast Asia’s largest indoor statue of Cundi Bodhisattva. According to Buddhist legend, the bamboo forest was the home of Guanyin Bodhisattva, which makes the entire Putuo Village and the bamboo garden a preservation of Buddhist culture.

With its serene atmosphere and intricately designed architecture, the Bodhi Sanctuary is great for both worshippers and visitors looking for a tranquil escape from the city.

Entry to the sanctuary is free, but if you’re looking to offer a prayer, a pack of joss sticks will set you back RM10 (~S$3.21).

The sanctuary also houses a Wishing Tree that’s decked out in red ribbons. Originally, the wishes were written on burnt joss paper and tied to a mandarin orange before being tossed onto the tree’s branches. This has now evolved to just penning down your wish on a red ribbon before tossing or tying it up on the branches, with the legend being that your wish will come true if it lands on the tree.

Be it praying for the studies of your child or general fortune, you can make a small donation to receive some red ribbons and try your luck.

You’ll also find prayer wheels lining the walkway at the Prayer Wheel Corridor. Featuring a mantra written on the outside, the spinning of the wheels is meant to have the same effect as orally reciting the prayers. Tradition is to spin the wheel clockwise gently, as the direction in which the mantras are written follows the movement of the sun across the sky, while keeping in mind the values of compassion.


Great Compassion Water.
Image credit: Putuo Village

For those looking to immerse themselves further in tradition, look out for the Great Compassion Water structure, where you can find blessed mountain spring water by the Dharma Master who has chanted the Great Compassion Mantra 888 times.

Putuo Village
Address
1488, Jalan Kampung, Off, Jalan Kota Tinggi - Kluang, Felda Taib Andak, 81000 Kulai, Johor, Malaysia
Opening Hours:
Friday 09:00 AM - 06:00 PM Show More Timings
Contact Information
Google Reviews
4.4
(6,133)

4. Fat Bamboo Cafe


Garden view & menu with vegetarian options



Image credit: Putuo Village 

Nestled within the Bodhi Sanctuary is the Fat Bamboo Cafe, where you can grab a bite and relax while looking out at the lush greenery.

Snack on desserts like the Matcha Mousse Cake (RM13.90 ~S$4.46) or the Peach Danish (RM8.90, ~S$2.86). If you’re looking to quench your thirst after your walk, the cafe also offers drinks such as Sweet Orange Rose Bamboo Tea (RM9.90, ~S$3.18) and Longan Jujube Bamboo Tea (RM9.90, ~S$3.18).

And if you’re looking for a meat-free lunch option, you’ll be glad to know that the cafe serves a selection of vegetarian dishes.

Fat Bamboo Cafe
Address
1488 Jalan Kampung Felda Taib Andak Off, 94, 81000 Kulai, Johor, Malaysia
Opening Hours:
Friday 09:30 AM - 05:30 PM Show More Timings
Contact Information
Google Reviews
4.3
(256)

5. Gunung Pulai Recreational Forest


Waterfall hidden within the forest


Image credit: Kai Gan via Wikimedia Commons

While we already have the MacRitchie Treetop Walk and Bukit Timah Nature Reserve trails in Singapore, you may want to check out the Gunung Pulai Recreational Forest while you’re in Kulai. Getting to the trailhead requires a 25-minute drive from Kulai Train Station; you can hail a taxi or simply book a Grab ride.

At 654m above sea level, Gunung Pulai may be taller than the Bukit Timah Hill, but the hike up is still pretty beginner-friendly. That said, you might want to wear a pair of shoes with better grip during the monsoon season.

Expect to see lots of native fauna and flora – some hikers have even spotted pitcher plants from the Nepenthes Rafflesiana species as well as the rare Raffles Banded Langur.

Image credit: Dinesh Mathavan

You’ll also come across the Gunung Pulai Waterfall along your hike, where you can take a breather and enjoy the refreshing mist and cooler temperatures.

There are 2 hiking trails to choose from: the main road trail and the jungle trail. Do note that non-Malaysians will have to pay RM30 (~S$9.63) for a permit to hike the jungle trail while the main road trail is free.

Gunung Pulai Recreational Forest
Address
81000 Kulai, Johor, Malaysia
Opening Hours:
Friday 08:00 AM - 05:00 PM Show More Timings
Contact Information
Google Reviews
4.3
(3,409)

Kluang


If you enjoy the charms of a slow town, nature, and local eats, Kluang is the spot for you. Just under 1 hour via the ETS from JB, here’s what you can look forward to in Kluang, from farm stays to charcoal-roasted kopi.


6. Talula Hill Farm Resort


Take a break from the city


Image credit: @xxw.jpeg via Instagram

A 21-minute drive from Kluang Train Station brings you to the Talula Hill Farm Resort. Nestled in between rolling hills, the resort provides an escape into nature. Their loft cabins also overlook the garden terraces and animals, so you’ll get to wake up not just in nature, but to nature.

Rooms begin at RM384 (~S$123.23) for their Bunk Cabins and RM784 (~S$251.59) for their Loft Cabins.

Image credit: @xxw.jpeg via Instagram

Activities here include guided tours of the resort, where you’ll get to visit the vegetable garden and even taste some of the produce, as well as feed the farm animals. Fishing lovers can also fish at the resort’s ponds, but do note that they operate on a catch-and-release system.

The resort also has a pickleball court, which costs RM70 (~S$22.46) to rent by the hour. For those who are looking for a more relaxed day in, the resort’s reading room offers a variety of board games like Rummikub and Cluedo.

Image credit: Talula Hill Farm Resort

Complimentary on-the-go breakfast is provided daily and delivered to your room every morning. With their farm-to-table concept, expect dishes made with homegrown produce and local ingredients.

Pro tip: For a true slow living experience, bring your breakfast out for a picnic as you take in the fresh air.

Make a reservation for Talula Hill Farm Resort.

Talula Hill Farm Resort Kluang
Address
PTD 40612, Jln Padang Tembak, 86000 Kluang, Johor, Malaysia
Opening Hours:
Friday Open 24 Hours Show More Timings
Google Reviews
4
(195)

7. Gunung Lambak


Test your stamina in this vertical jungle



Image credit: AllTrails

Adventure seekers, the Gunung Lambak trail might be the one for you. The trailhead is 14 minutes by car or a 33-minute ride on board bus BmkKL002 from Terminal Kluang.


Image credit: Afiq Sazwan Ab Aziz via Wikiloc

Don’t let its mere height of 510m fool you; the trail has a steep vertical jungle section that puts your climbing abilities to the test. If you find it difficult to manoeuvre around the rocks and thick protruding roots, there are assist ropes at the side to haul yourself up. It takes about 1.5 to 2 hours to reach the summit, which has a simple rest shelter for you to catch a break before your descent.

Gunung Lambak
Address
Gunung Lambak, Gunung Lambak Recreational Forest, 86000 Kluang, Johor, Malaysia
Opening Hours:
Friday Closed Show More Timings
Contact Information
Google Reviews
4.5
(251)

8. Kluang Coffee Powder Factory


Charcoal-roasted kopi from 1938



Image adapted from: @jackson_yew & @nyera_ewears_veve via Instagram

Most might flock to the Original Kluang Rail Coffee, the “oldest railway kopitiam” in the Malaysia Book of Records, but the Kluang Coffee Powder Factory is equally worth a stop. It’s located just a 9-minute taxi ride from Kluang Train Station, and this old-school coffee shop has been serving cups of kopi since 1938. You’ll even get to see part of the process at the factory.

Besides being able to enjoy a free taste test of their 3-in-1 packet coffee, you’ll also find your usual coffeeshop drinks like Kopi (from RM2.90, ~S$0.93) alongside a wide selection of mains like Laksa Johor (RM7, ~S$2.24 ) and Nasi Lemak Bungkus (RM1.70, ~S$0.54).

There is also a giant coffee cup outside the factory, so you can snap a photo for memory. And if you’re looking to bring home a taste of the charcoal-roasted kopi, there is a selection of packet coffee available for purchase.

Kluang Coffee Powder Factory Sdn Bhd
Address
76, Jalan Besar, Kampung Yap Tau Sah, 86000 Kluang, Johor Darul Ta'zim, Malaysia
Opening Hours:
Friday 09:00 AM - 05:15 PM Show More Timings
Contact Information
Google Reviews
4.9
(5,881)

Labis


Labis is located 1.5 hours away from JB via the ETS, and it’s known for its laid-back atmosphere and stargazing spots. Nature lovers can look forward to hot springs and the nearby Endau Rompin forest areas, which are ideal for getaways amidst nature.


9. Sunrise Farm


Pitch your own tent & sleep under the stars



Image credit: Sunrise Farm

Another farm stay location to check out is the Sunrise Farm. Featuring orchards, vegetable gardens, and picturesque landscapes, the farm offers a true nature stay with its cosy rooms and campsite options, where you’ll get to pitch your own tent.

To get to the farm, your quickest option will be to hitch a taxi for a 7-minute drive from Labis Train Station. Alternatively, you can hop on bus YH27 at the RJ Cafe Labis bus stop for a 51-minute ride.


Image credit: Sunrise Farm

The farm also offers a 2-hour farm tour, where you’ll get to explore the variety of fruits grown at the orchard, such as durian, guava, jackfruit, and mangosteen, as well as have a taste of the fresh fruit. There’s even the chance to get up close to the farm animals and the farm’s beehives, where you’ll also get a taste of their wild honey.

Another highlight is getting to stargaze. For a true outdoor experience, bring your own tent or rent one from the farm and sleep under the stars.

Reserve a spot or inquire about pricing at Sunrise Farm.

Labis Sunrise Farm
Address
LOT 3091,, Jln Segamat, Labis, 85300 Segamat, Johor Darul Ta'zim, Malaysia
Opening Hours:
Friday 09:00 AM - 06:00 PM Show More Timings
Contact Information
Google Reviews
4.1
(313)

10. Taka Melor Eco Forest


Relax by the waterfall & enjoy a natural foot spa



Image credit: ecah aziz via Google Maps

Another spot for hiking lovers to check out is the Taka Melor Eco Forest. A short 21-minute taxi ride from Labis Train Station, the eco forest offers beautiful views and features a 4.5m waterfall.

If you’re game for a free foot spa, visitors have reported that you can head towards the left side of the waterfall, dip your feet and let the little fish nibble away your dead skin.

Entry to the forest costs RM15 (~S$4.81) per pax, with free entry for children under 12 years old.

Taka Melor Eco Forest
Address
85300 Labis, Johor, Malaysia
Opening Hours:
Friday Closed Show More Timings
Contact Information
Google Reviews
4.2
(142)

Segamat


Durian lovers can consider hopping off the ETS at  Segamat, a town 1.5 hours away from JB. Known as the Durian Capital of Johor, visitors flock to this town during durian peak season. But the king of fruits aside, the town is also home to a historical bridge that has been around for over 100 years.


11. Segamat Old Iron Railway Bridge


Historical bridge that went through WWII



Image adapted from: Kang Wei Lim via Google Maps

This 100+ year old iron truss bridge was built in 1909 during Malaysia’s colonial era railway period, and is located just 5 minutes away from Segamat Train Station on foot. The Segamat Old Iron Railway Bridge spans the Segamat River, offering scenic views of muddy monsoon swells and a step back in time, with the bridge retaining its original structure.

During WWII, the bridge was nicknamed Jambatan Putus (Broken Bridge) after Japanese forces had destroyed sections of it to delay the advances of the Allied troops. Today, only a short stretch of the railway has been retained for heritage purposes. Beyond its historical significance, it’s also become a popular photo spot, with plenty of visitors – locals included – stopping by to snap a few Instagram-worthy shots.

Segamat old iron railway bridge
Address
Jalan Ibrahim, Kampung Gubah, 85000 Segamat, Johor Darul Ta'zim, Malaysia
Opening Hours:
Friday Closed Show More Timings

12. Durian Factory


Pick your own durians & fresh fruits



Image credit: @thedurianfactory via Instagram

If you love the creamy fruit that has been described by some to have a pungent smell, make sure to add The Durian Factory to your itinerary.

Besides offering favourites like the Musang King and D101, the farm also hosts a durian tasting tour during the durian season from June to September. You’ll get to pick your own AA durians as well as other fresh fruits like mangosteen and lime during the experience.

Enquire about The Durian Factory farm tours.


13. Secourra Spa


Relax at this women-only spa



Image credit: Adilah Awalluddin via Google Maps

Treat yourself to a spa session at Secourra Spa, a women-only spa just 6 minutes away from Labis Train Station by taxi. Aside from personalised wellness and beauty treatments, the spa also offers massages, including the popular Foot Reflexology (RM55, ~S$17.65).

Each session concludes with a pot of the spa’s signature hot honey ginger tea. This warm beverage helps to flush out toxins and improve blood circulation while hydrating your body.

Secourra Spa
Address
No.2A, Jalan Utama 3/4, Bandar Utama, 85000 Segamat, Johor Darul Ta'zim, Malaysia
Opening Hours:
Friday 09:30 AM - 06:30 PM Show More Timings
Contact Information
Google Reviews
4.9
(345)

Tampin


You might have visited Malacca, but have you been to its equally charming neighbour, Tampin? Just 2.5 hours from JB via the ETS, and you’ll get to enjoy an animal safari, one of Malaysia’s biggest water parks, and a hike for panoramic views.


14. Gunung Datuk Recreational Forest


Challenge yourself with this uphill hike



Image credit: Elven Kim via Google Maps

If you’re up for a climb, check out the Gunung Datuk Recreational Forest, which is popular amongst hikers for the challenging climb and rewarding views. To get to the trailhead, simply hail a cab or book a Grab from Pulau Sebang/Tampin Railway Station for a quick 21-minute ride to the hiking spot.

From the trailhead, hikers can expect to take about 1 hour and 30 minutes to reach the peak of Gunung Datuk. From there, you can continue on to Gunung Gagak and Gunung Rembau. The hike up may be a little tough for beginners, but visitors have reported ascending with no issues with their kids.

Do note that the trail is very rocky, so make sure to wear proper hiking shoes.

Gunung Datuk Recreational Forest
Address
71350 Kota, Negeri Sembilan, Malaysia
Opening Hours:
Friday 09:00 AM - 05:00 PM Show More Timings
Contact Information
Google Reviews
4.5
(2,662)

15. A’Famosa Safari Wonderland


Interactive animal showcases



Image credit: Naz here via Google Maps

A highlight to check out in Tampin is the A’Famosa Safari Wonderland, where you’ll get to see a variety of animals like monkeys and flamingos up close. Hop on a cab from Tampin Train Station for a 14-minute drive to begin your adventure.

Here, you’ll get to feed the elephants by hand and watch them swim in water, making for a fun family trip that is sure to be a hit with your kids.

Crocodile Kingdom.
Image credit: A’Famosa Safari Wonderland

A highlight is the Crocodile Kingdom, where you’ll get face-to-face with the wetland predators and even walk under their tummies at the Crocodile Tunnel, a glass-enclosed habitat.

Look forward to a range of animal presentations featuring parrots and cockatoos, as well as a multi-animal show with a cast of sun bear, buffalo, pig-tailed macaque, otter, cats, and dogs.

Animal presentation Time
Elephant Akuatik 11.10am
In Nature Elephant 10.45am & 4.30pm
Animal Fantasy 11.45am & 3.00pm
Avian Stars 12.45pm & 3.45pm
Wild Wild West Show 2.20pm

As the park can get quite crowded, book your tickets online and scan for entry with your QR code to skip the long lines outside.

Book tickets for A’Famosa Safari Wonderland.

A’Famosa Safari Wonderland
Address
A'famosa Resort, Jalan Kemus / Sempang Ampat, 78000 Alor Gajah, Melaka, Malaysia
Opening Hours:
Friday 10:00 AM - 06:00 PM Show More Timings
Contact Information
Google Reviews
4
(3,251)

16. Tampin Water Park


Family-friendly waterpark for a fun day out


Image adapted from: Roselan Zaman via Google Maps

With tickets costing RM15 (~S$4.81) for adults and RM10 (~S$3.21) for children, Tampin Water Park is one of the cheapest water parks in Malaysia. Hop on bus N60A at the Bank Islam bus stop for a 44-minute ride or simply hail a taxi for a 10-minute drive down to the water park, where a splashing good time awaits.

There are 4 different pool areas catering to different age groups and designed with varying depths, so even toddlers can join in the fun at the kiddy zone with mini slides. For those looking to just relax, the park also has picnic areas with shade for you to take a break while keeping an eye on your children.

Tampin Water Park
Address
Tampin Water Park Hutan Lipur Gunung Tampin, 73000 Tampin, Negeri Sembilan, Malaysia
Opening Hours:
Friday 09:00 AM - 06:00 PM Show More Timings
Contact Information
Google Reviews
4.1
(452)

17. Gadek Hot Springs


Family-friendly hot spring


Image credit: Noriehan Samat via Google Maps

Recently renovated in 2025, the Gadek Hot Springs is great for soaking on a chilly night. To get to the hot springs, hop on bus M20 at Stesen Keretapi Pulau Sebang for a 29-minute ride or simply hail a taxi for a 12-minute drive from Tampin Train Station.

The facility features a series of pools with heated water, and there are even individual tubs for you to soak in. If your kids are tired of just relaxing in the heated pools, there is even a children’s pool with slides for them to play in.

When the sun sets is when the hot spring really gets moving – there is a rotation of food stalls for you to grab a bite at. Take note that food is not permitted in the pools themselves, but you can return after to relax under the stars.

KOMPLEKS AIR PANAS GADEK
Address
Ayer Panas Gadek, Kampung Ganun, 78000 Alor Gajah, Malacca, Malaysia
Opening Hours:
Friday 07:00 AM - 03:00 AM Show More Timings
Contact Information
Google Reviews
3.9
(498)

Kajang


If there is 1 thing Kajang does best, it’s satay. The ETS ride to Kajang from JB is about 3 hours and 40 minutes, but a worthy wait to taste one of Selangor’s heritage dishes, the Sate Kajang. The town also has a water theme park with over 10 different water rides, so your kids have something to look forward to if they aren’t full-fledged foodies yet.


18. Sate Kajang Hj Samuri


One of Malaysia’s best satays


Image adapted from: Zach sws via Google Maps

For a juicy satay with a good char, check out Sate Kajang Hj Samuri. Their chunky chicken, beef, and lamb satays are served with their signature rich and nutty peanut sauce that packs a subtle kick of sambal. It’s no wonder many consider it one of the best satay joints in Malaysia.

The satay is so good that it’s got satay connoisseurs driving down to Kajang just for a taste. Another favourite from the store is their spring rolls, which are fried popiah with satay paste.

Ordering may take a while, given the crowd, but if you endure the wait, you’ll be rewarded with good Kajang satay.

Getting to the satay joint is a quick 10-minute drive by cab, or you can board buses T451 and T464 from the Taman Hijau bus stop for a 14-minute bus ride.

Sate Kajang HJ Samuri
Address
105 & 107-G, Jalan Mahogani 5, Bandar Botanik, 41200 Klang, Selangor, Malaysia
Opening Hours:
Friday 11:30 AM - 01:00 PM Show More Timings
Contact Information
Google Reviews
4.1
(1,576)

19. Bangi Wonderland Water Theme Park


Malaysia’s only water cannon ride


Image credit: Bangi Wonderland Water Theme Park

The Bangi Wonderland Water Theme Park is another one to add to your list for adventures. Featuring 14 thrilling water rides alongside a good variety of water slides, wave pools, and kiddy pools, the water park has something for everyone.

The park is also home to Malaysia’s only water cannon ride. And yes, it’s exactly what it sounds like – sit in a cannon, push a button, and get fired out by a blast of water to go flying through the air and into a giant pool.

Do note that certain slides require a tube rental, which costs RM10 (~S$3.21).

Image credit: Annie Lum via Google Maps

When your tummy starts rumbling, head to the Snack Cabin for familiar favourites like Fishball sticks (RM4, ~S$1.28) and Samosas (RM5, ~S$1.60).

Getting to the waterpark is a little tricky – it’s a 12-minute train ride via the Seremban Line towards Pulau Sebang from Kajang Station and a 22-minute walk to the park. We recommend hailing a taxi for a 35-minute drive down from Kajang Station; it might take roughly the same time to get there, but at least you won’t have to walk.

Bangi Wonderland
Address
2, Persiaran Bangi Avenue, Bangi Avenue, 43000 Kajang, Selangor, Malaysia
Opening Hours:
Friday 10:00 AM - 06:00 PM Show More Timings
Contact Information
Google Reviews
4.1
(5,033)

Places to explore along the ETS journey from JB to KL

If you’re tired of the usual haunts in JB or KL, or simply looking to explore a new city, these cities along the ETS route are worth checking out.

For more things to do in Malaysia:


Cover image adapted from: The Smart Local, Sunrise Farm, AllTrails

Chandelle Cheong