ianc

ianc

Hey folks,

We built a community platform for Travel Massive with Phoenix LiveView. This is my first project with Phoenix LiveView, and the first time I’ve programmed in Elixir.

Here’s a few notable features:

Tech details

  • Currently running LiveView 0.17.11
  • We use a combination of LiveView Components and Surface UI with Tailwind CSS
  • Alpinejs 3 for a few user interactions (e.g. upvote), and Tippy for popups
  • We’re hosted on Gigalixir and Cloudinary (images)
  • esbuild only.. no npm required :tada:

Special thanks

A big thanks to @mplatts and @nhoban who developed our initial MVP and got us to launch last year, and @daamsie who helped with a lot of UX and other features. Also a thanks to elixirforum as I found a lot of helpful answers here while learning Elixir :smiley:

Migrating from Drupal to Phoenix LiveView

I originally created the Travel Massive community in 2014 and built it with Drupal 7 (and open-sourced the project). Migrating a live community of ~50,000 members from Drupal to Phoenix LiveView was a unique challenge. To solve this, we built built a private REST endpoint in Drupal to provide structured data to our Elixir importer. This method also gave us the benefit of developing the platform with real membership data.

What’s next?

We launched in September 2021 and I’ve spent the past year adding features, fixing bugs, and growing and building our community. The project has slowly matured, but I’m still thinking about new features to build:

  • Community points to reward participation
  • Travel map (people can share places they are visiting)
  • Automated newsletters (we currently curate a weekly newsletter)

Hopefully this post can help others who are thinking about building community platforms with Phoenix LiveView, and can help showcase what can be done! :slight_smile:

Showing Posts 1 to 10

mayel

mayel

Is the new platform open source as well?

mayel

mayel

BTW looks like I had signed up to Travel Massive in 2016 and was just able to sign in and find my old profile, well done on the migration!

Kurisu

Kurisu

Amazing work! :+1:

Just out of the curiosity, did you roll your own comments system on the website or just use a third party tool ?

LostKobrakai

LostKobrakai

There’s a phx-click on the upvote button. There’s at least some server side code for it.

mplatts

mplatts

Hey, I’m one of the contributors. Yep, the comment system is custom-built using live view.

ianc

ianc OP

No plans for now, unless someone in the Elixir community changes my mind :grinning_face:

derek-zhou

derek-zhou

Open source everything probably does not make a lot of senses. However, if you think there are some parts that can benefit the community as a whole you can break them out as libraries.

absowoot

absowoot

Looks like a fun project to work on! I have a similar background in that I’m coming from a PHP and I have a few questions:

  1. How was the learning curve going from PHP to Elixir?
  2. Did you see a significant reduction of code moving to Elixir?
  3. Were there any major issues during the development phase that you thought “this is way easier in PHP”
andreaseriksson

andreaseriksson

:slightly_smiling_face:

AstonJ

AstonJ

This is awesome - congrats :tada:

Is the new site offering more or less the same as the Drupal site? If so I’d be interested to know whether anything changed on your server/hosting requirements? Could you also share how many page views you are serving a month?

Have you also experimented using a spinner instead of a progress bar for page loads? Personally I am not that keep on progress bars if the header always stays the same. Since you’re a travel site you could use a rotating globe as your spinner :003: On one of my sites we use a running dog (it’s a dog related site):

loader

Where Next? Top

Trending in Discussions Top

AstonJ
As the title says, please share what you’ve been up to with Elixir. Whether that’s been learning it, looking into it, making stuff with i...
2977 94592 917
New
cblavier
Hey there, It’s been more than a year since we started using LiveView as our main UI library and building a whole library of UI componen...
New
mudasobwa
I am happy to introduce the very α version of the new programming language compiled to BEAM. Welcome Cure. It has literally three kille...
New
heathen
Quite interesting article Google brought me. Didn’t find any mentions about it here. What do you think in general? Would you use togethe...
New
mhanberg
Hi everyone! The first release candidate for the Expert language server project is now available! We’ve published a press release detai...
New
axelson
Hi there! :wave: @frigidcode and I (but mostly him) have been running an Elixir Book club, we’re almost done with Designing Elixir Syste...
New
budgie
A little off-topic, but I feel like people here have a good head on their shoulders. I used to be quite good at making software. Was luc...
New

Other Trending Topics Top

GenericJam
Edit: 2026 May 15 - This post is archived. Mob is alive!! Main docs: mob v0.7.11 — Documentation A bit of explanation for the slightly c...
New
JesseHerrick
Hey, I’m Jesse and I’m the main contributor behind Dexter, a full-featured, lightning-fast Elixir LSP optimized for large codebases. It s...
New
marciok
Hi there! We created Gust: A task orchestrator inspired by Airflow. For those who have never heard about Aiflow, it’s a Python-based wor...
New
jimsynz
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New
georgeguimaraes
Just published claude-code-elixir, a plugin marketplace for Claude Code with Elixir support. These are the plugins I’ve been using for my...
New
Dmk
Xamal is a deployment tool for Elixir apps that deploys native releases to bare metal servers over SSH. It’s a port of GitHub - basecamp/...
New

We're in Beta

About us Mission Statement

Options

Thread Display Mode




Thread Preview

Skip Thread Previews